カテゴリー別アーカイブ: cubson

cubsonを使って3時間で作るXOOPS評価モジュール[5]

XOOPS用モジュールの開発支援ツールであるcubsonを使って、レストラン評価モジュールを作ってみましょう。 今回はその5回目。 前回の記事はこちらcubsonを使って3時間で作るXOOPS評価モジュール[4] 分かりづらい点や間違い点、質問などありましたら、お気軽にコメントしてください^^ (10)評価対象のレストランを一覧から選択できるようにする レストランに対する評価(rating)をするときには、レストランをプルダウンで選べると便利です。 この画像のように、登録されているレストランを選べるようにしましょう。 {module_dir}/actions/RatingEditAction.class.phpに以下を追加 ○追加箇所 var $mRestArr = null; function prepare() { parent::prepare(); $catHandler =& $this->mAsset->load(‘handler’, “restaurant”); $this->mRestArr =& $catHandler->getObjects(); ・・・ } function executeViewInput(&$render) { $render->setAttribute(‘restArr’, $this->mRestArr); ・・・ } {module_dir}/templates/resrate_rating_edit.html を一部変更 restaurant_id入力の部分を次のように変更します。 △変更前 <{xoops_input type=text name=restaurant_id value=$actionForm->get(‘restaurant_id’)}> … 続きを読む

カテゴリー: cubson | コメントをどうぞ

cubsonを使って3時間で作るXOOPS評価モジュール[4]

XOOPS用モジュールの開発支援ツールであるcubsonを使って、レストラン評価モジュールを作ってみましょう。 今回はその4回目。 前回の記事はこちらcubsonを使って3時間で作るXOOPS評価モジュール[3] 分かりづらい点や間違い点、質問などありましたら、お気軽にコメントしてください^^ (7)ユーザーIDを自動入力する 前回まででは、レストランの評価(rating)を入力しようとすると、ユーザーID(uid)を手動で入力する必要がありました。 しかしXOOPSにログインしているユーザーに、ユーザーIDを手動で入力してもらうのは不便ですし、なりすましの危険もあります。 そこでユーザーIDを自動で入力するように変更しましょう。 {module_dir}/actions/RatingEditForm.class.php に以下を追加します。 これは$this->mObject->isNew()をチェックして、評価(rating)が新規投稿のときには、uid に XOOPSの登録ユーザーIDを代入する関数です。 ○追加箇所 function prepare() { parent::prepare(); if ($this->mObject->isNew()) { $this->mObject->set(‘uid’, $this->mRoot->mContext->mXoopsUser->get(‘uid’)); } } さらに {module_dir}/templates/resrate_rating_edit.html の一部を削除・追加。 input 部分を削除して、hiddenにしています。 △削除箇所 <p> <tr><br /> <td class=”head”><{$smarty.const._MD_RESRATE_LANG_UID}></td><br /> <td class=”<{cycle values=”odd,even”}>”><br /> … 続きを読む

カテゴリー: cubson | コメントをどうぞ

cubsonを使って3時間で作るXOOPS評価モジュール[3]

XOOPS用モジュールの開発支援ツールであるcubsonを使って、レストラン評価モジュールを作ってみましょう。 今回はその3回目。 前回の記事はこちらcubsonを使って3時間で作るXOOPS評価モジュール[2] 分かりづらい点や間違い点、質問などありましたら、お気軽にコメントしてください^^ (4) デフォルト・アクションの修正 前回までで、cubsonのインストール、プロジェクトの作成、テーブルの作成まで終わって、とりあえずモジュールの原型ができました。 しかし、今のままだとモジュールにアクセスしたときに何も表示してくれません。 そこで、デフォルトではレストランの一覧を表示するように設定します。 {module_dir}/class/Module.class.php ※{module_dir}は、モジュールが保存されているディレクトリ(C:\xampp\htdocs\html\modules\resrateなど) を開いて、 function execute(&$controller)内の $this->mActionName = “Default”; の “Default”を{テーブル名}+{アクション}に変更します。 今回はレストランの一覧を表示したいので、”RestaurantList”に変更しました。 変更後: $this->mActionName = “RestaurantList”; ○アクション一覧 編集: “Edit” 一覧表示: “List” 詳細表示: “View” 削除: “Delete” (5) テンプレートの修正 cubson が生成する一覧表示用のコードには余計な文字がまざっていて、うまく表示してくれません。そこで {module_dir}/templates/{modulename}_{tablename}_list.html の中の “|theme}> … 続きを読む

カテゴリー: cubson | 3件のコメント

cubsonを使って3時間で作るXOOPS評価モジュール[2]

XOOPS用モジュールの開発補助をしてくれるcubsonというツールを使って、 レストラン評価モジュールを作っています。 前回の記事はこちら muzin » cubsonを使って3時間で作るXOOPS評価モジュール[1] 今回は cubsonのインストール プロジェクトの作成 テーブルの作成 を行います。 分かりづらいところとか、間違いとかがありましたら、修正していきたいと思いますので お気軽にツッコミを入れてってくださいm(_ _)m 【これまでで0分】 (1) cubsonのインストール まずcubson/インストール – PukiWiki Plus!を参考に、cubsonをインストールしてください。 ある意味、これが一番大変かもしれません。 【ここまでで30分】 (2) プロジェクトの作成 まず cubson を起動して、プロジェクトを作成します。 1プロジェクト=1モジュールと思っていただければ良いかと。 プロジェクトを作成するには、cubson を起動して makeproject resrate と入力してください。文字がズラーッと表示されるはずです。 XOOPSをインストールしたフォルダの下の modules フォルダの中に resrate というフォルダが作成されていれば成功です。 ※プロジェクトの作成 … 続きを読む

カテゴリー: cubson | コメントをどうぞ

cubsonを使って3時間で作るXOOPS評価モジュール[1]

XOOPS用モジュールの開発補助をしてくれるcubsonというツールを使って、 レストラン評価モジュールを作ってみましょう。 制限時間は3時間。 既に自宅のパソコン上にサーバを立ち上げており、XOOPSもインストール済み という前提で話を進めていきますのでご了承ください。 (希望があれば、XOOPSのインストールから説明します) PHPが分からなくてもコピペで何とかなるように話していくつもりですが、 氷川 XOOPS 研究室 – Menu/Cubson [Cubson] – wikiを読んでいると、もっとよく分かると思います。 分かりづらいところとか、間違いとかがありましたら、修正していきたいと思いますので お気軽にツッコミを入れてってくださいm(_ _)m (0) 案件を決める まず最初に、どんなモジュールを作るかを明確にしましょう。 今回は「レストランの評価」をするモジュールを作りたいと思います。 欲しい機能としては レストラン情報を投稿できる そのときレストランのカテゴリを、和食・洋食・中華etcから選択できる レストラン情報に対して評価を投稿できる とりあえずこれだけあれば、評価モジュールとしては最低限の機能をそろえているでしょう。 cubson ではデータベースを使いますので、 欲しい機能を元にどんなデータベースを作るかを決めます。 今回は次のようなデータベースを作りたいと思います。 ※データベースを使ったことのない人は意味が分からないかも知れませんが、 使っているうちに分かってくるので、今の時点では分からなくても問題ありません。 モジュール名は、restaurant(レストラン)のrating(評価)ということで「resrate」とします。 {prefix}は、XOOPSインストール時に設定したデータベース用の接頭辞(prefix)です。 あとでデータベースを作成するときに、phpMyAdminでテーブル一覧を表示すれば、テーブル名の頭に同じ文字が並んでいるので分かるはず。  XOOPS Cube Legacy をデフォルトでインストールしたときにはランダムな英数字6文字になっています。XOOPS2.0.Xから移行した場合は … 続きを読む

カテゴリー: cubson | コメントをどうぞ