新米SE、マーケティングを学ぶの巻

Web系のプログラミングの記事や、マーケティングについて書いていきます。

サイト内お気に入り機能をCakePHPで作る。その1

まずは見た目の部分を作っていこうと思います。
以前、HTMLで行ったこちらをCakePHPで行います。
サイト内お気に入り登録機能を作る。その1 - 新米SE、マーケティングを学ぶの巻

ButtonsController

public function index(){
    //DB上のボタンを全件取得
	$data = $this->Button->find('all');
	$this->set(compact('data'));
}

index.ctp

<?php
//ボタンの一覧表示
for($i = 0; $i < count($data); $i++){
//data-numにボタンのIDを保存する
    echo "<p><button class='favoButton' data-num=".$data[$i]['Button']['id']." >☆</button></p>";
 }
?>


Javascriptの部分は前回と変わりありません。
Javascript

$(function(){

  $(".favoButton").click(function() {
    var button = this;
    //お気に入りボタンのdata-conditionで制御
    if($(this).data('condition') == false || $(this).data('condition') === undefined ){
      //お気に入りボタンの色を黄色に
      $(button).css('backgroundColor', '#FF0');
      //お気に入りボタン状態の更新
      $(button).data('condition',true);
    }

    else if($(this).data('condition') == true){
      //背景色を解除
      $(button).css('backgroundColor', '');
      //お気に入りボタン状態の更新
      $(button).data('condition',false);
    }
  });
});