OSDN Git Service

「バナー3」ウィジェットの管理画面にバナークリック数を表示。
authornaoki hirata <naoki@magic3.org>
Sat, 28 Dec 2013 13:45:28 +0000 (22:45 +0900)
committernaoki hirata <naoki@magic3.org>
Sat, 28 Dec 2013 13:45:28 +0000 (22:45 +0900)
include/sql/update_widgets.sql
widgets/banner3/include/container/admin_banner3BannerWidgetContainer.php
widgets/banner3/include/container/admin_banner3ImageWidgetContainer.php
widgets/banner3/include/db/banner3Db.php
widgets/banner3/include/template/admin_image_detail.tmpl.html

index 66f1ab8..ad2ef5f 100644 (file)
@@ -284,7 +284,7 @@ INSERT INTO _widgets
 DELETE FROM _widgets WHERE wd_id = 'banner3';\r
 INSERT INTO _widgets\r
 (wd_id,     wd_name,       wd_content_type, wd_edit_content, wd_version, wd_author,      wd_copyright, wd_license, wd_official_level, wd_description, wd_add_script_lib, wd_add_script_lib_a, wd_has_admin, wd_enable_operation, wd_use_instance_def, wd_initialized, wd_cache_type, wd_view_control_type, wd_release_dt, wd_install_dt, wd_create_dt) VALUES\r
-('banner3', 'バナー表示3', 'banner', true, '3.0.0',    'Naoki Hirata', 'Magic3.org', 'GPL',      10,                'バナー画像をグループ化して、グループごとに表示できるバナー管理ウィジェットです。', '',                'elfinder',                  true, true,         true,                true,  0,         1, '2013-12-08', now(),         now());\r
+('banner3', 'バナー表示3', 'banner', true, '3.0.1',    'Naoki Hirata', 'Magic3.org', 'GPL',      10,                'バナー画像をグループ化して、グループごとに表示できるバナー管理ウィジェットです。', '',                'elfinder',                  true, true,         true,                true,  0,         1, '2013-12-28', now(),         now());\r
 DELETE FROM _widgets WHERE wd_id = 'jquery_plugin';\r
 INSERT INTO _widgets\r
 (wd_id,        wd_name,                wd_version, wd_author,      wd_copyright, wd_license, wd_official_level, wd_description, wd_add_script_lib, wd_add_script_lib_a, wd_has_admin, wd_use_instance_def, wd_initialized, wd_launch_index, wd_cache_type,    wd_view_control_type, wd_release_dt, wd_install_dt, wd_create_dt) VALUES\r
index 99204eb..7ad22a1 100644 (file)
@@ -13,7 +13,6 @@
  * @version    SVN: $Id$
  * @link       http://www.magic3.org
  */
-//require_once($gEnvManager->getCurrentWidgetContainerPath() . '/admin_banner3BaseWidgetContainer.php');
 require_once($gEnvManager->getWidgetContainerPath('banner3') . '/admin_banner3BaseWidgetContainer.php');
 
 class admin_banner3BannerWidgetContainer extends admin_banner3BaseWidgetContainer
index a694e6b..6e16f3e 100644 (file)
@@ -403,6 +403,9 @@ class admin_banner3ImageWidgetContainer extends admin_banner3BaseWidgetContainer
                        $imageUrl = str_replace(M3_TAG_START . M3_TAG_MACRO_ROOT_URL . M3_TAG_END, $this->gEnv->getRootUrl(), $imageUrl);
                }
                
+               // クリック数取得
+               $clickCount = self::$_mainDb->getTotalClickCount($this->serialNo);
+               
                // #### 更新、新規登録部をを作成 ####
                $this->tmpl->addVar("_widget", "serial", $this->convertToDispString($this->serialNo));
                $this->tmpl->addVar("_widget", "name", $this->convertToDispString($name));              // 名前
@@ -434,11 +437,12 @@ class admin_banner3ImageWidgetContainer extends admin_banner3BaseWidgetContainer
                        }
                }
                $this->tmpl->addVar("_widget", "image", $destImg);
-               $this->tmpl->addVar("_widget", "width", $imageWidth);
-               $this->tmpl->addVar("_widget", "height", $imageHeight);
-               $this->tmpl->addVar("_widget", "alt", $imageAlt);
+               $this->tmpl->addVar("_widget", "width", $this->convertToDispString($imageWidth));
+               $this->tmpl->addVar("_widget", "height", $this->convertToDispString($imageHeight));
+               $this->tmpl->addVar("_widget", "alt", $this->convertToDispString($imageAlt));
                $this->tmpl->addVar("_widget", "html", $srcHtml);               // テンプレート
                $this->tmpl->addVar("_widget", "tag", M3_TAG_START . M3_TAG_MACRO_ITEM . M3_TAG_END);           // 埋め込みタグ
+               $this->tmpl->addVar("_widget", 'click_count', $this->convertToDispString($clickCount));                                                 // クリック数
                
                // ボタンの表示制御
                if (empty($this->serialNo)){            // 新規追加項目を選択しているとき
index 0a8965f..3d042c8 100644 (file)
@@ -228,13 +228,25 @@ class banner3Db extends BaseDb
         */
        function getTotalViewCount($serial)
        {
-               $count = 0;
                $params = array();
                $queryStr  = 'SELECT * FROM bn_item_view ';
                $queryStr .=   'WHERE bv_item_serial = ? ';     $params[] = $serial;
                return $this->selectRecordCount($queryStr, $params);
        }
        /**
+        * バナー項目のクリックカウント総数を取得
+        *
+        * @param  int $serial                          バナー項目シリアル番号
+        * @return int                                          総数
+        */
+       function getTotalClickCount($serial)
+       {
+               $params = array();
+               $queryStr  = 'SELECT distinct(ba_public_key) FROM bn_item_access LEFT JOIN bn_item_view ON ba_public_key = bv_public_key ';
+               $queryStr .=   'WHERE bv_item_serial = ? ';     $params[] = $serial;
+               return $this->selectRecordCount($queryStr, $params);
+       }
+       /**
         * バナー表示ログの記録
         *
         * @param int    $bannerItemSerial              バナー項目シリアル番号
index 03252b8..55b0266 100644 (file)
@@ -256,6 +256,10 @@ $(function(){
            <td class="table-headside"><span {_HELP_IMAGE_UPDATE_DT}>更新日時</span></td>\r
            <td>{UPDATE_DT}</td>\r
        </tr>\r
+    <tr>\r
+           <td class="table-headside"><span {_HELP_IMAGE_ACCESS}>アクセス状況</span></td>\r
+           <td colspan="3">クリック数:{CLICK_COUNT}</td>\r
+       </tr>\r
        <tr>\r
            <td colspan="4" align="right">\r
 <patTemplate:tmpl name="del_button" visibility="hidden">\r