From de2467996a2765dd85df8a105df4a72af2c71dde Mon Sep 17 00:00:00 2001 From: "Sakamoto, Kazunori" Date: Fri, 28 Feb 2020 11:31:28 +0900 Subject: [PATCH 1/6] feat: read download count via ajax --- .../MultidatabaseContentsController.php | 28 +++++++++++++++++-- .../metadatas/edit_metadata.ctp | 2 +- .../view/view_content_group_c1.ctp | 3 ++ .../view/view_content_group_c2.ctp | 3 ++ .../MultidatabaseContentViewElementHelper.php | 12 ++++++-- View/MultidatabaseContents/form.ctp | 4 +-- webroot/css/empty | 0 ...ents.js => edit_multidatabase_contents.js} | 3 +- ...multidatabase_contents_without_wysiwyg.js} | 3 +- ...tas.js => edit_multidatabase_metadatas.js} | 3 +- webroot/js/empty | 0 webroot/js/multidatabase_files.js | 28 +++++++++++++++++++ 12 files changed, 78 insertions(+), 11 deletions(-) delete mode 100644 webroot/css/empty rename webroot/js/{edit_multi_database_contents.js => edit_multidatabase_contents.js} (90%) rename webroot/js/{edit_multi_database_contents_without_wysiwyg.js => edit_multidatabase_contents_without_wysiwyg.js} (89%) rename webroot/js/{edit_multi_database_metadatas.js => edit_multidatabase_metadatas.js} (98%) delete mode 100644 webroot/js/empty create mode 100644 webroot/js/multidatabase_files.js diff --git a/Controller/MultidatabaseContentsController.php b/Controller/MultidatabaseContentsController.php index 79cba3a..cf3e00b 100644 --- a/Controller/MultidatabaseContentsController.php +++ b/Controller/MultidatabaseContentsController.php @@ -5,6 +5,7 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) + * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project @@ -18,6 +19,7 @@ * MultidatabaseContentsController Controller * * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) + * @author Kazunori Sakamoto * @package NetCommons\Multidatabases\Controller */ class MultidatabaseContentsController extends MultidatabasesAppController { @@ -134,7 +136,7 @@ public function beforeFilter() { $this->set('multidatabaseFrameSetting', $frameSetting['MultidatabaseFrameSetting']); // ゲストアクセスOKのアクションを設定 - $this->Auth->allow('index', 'detail', 'search'); + $this->Auth->allow('index', 'detail', 'search', 'get_download_count'); $this->_prepare(); } @@ -404,6 +406,28 @@ public function download() { return $this->Download->doDownload($contentId, $options); } +/** + * File Download Count + * ファイルダウンロード数 + * + * @return void + */ +public function get_download_count() { + $options = [ + 'fields' => [ + 'UploadFile.download_count', + ], + 'conditions' => [ + 'UploadFile.id' => 10, + ] + ]; + $UploadFile = ClassRegistry::init('Files.UploadFile'); + $file = $UploadFile->find('first', $options); + + $this->set('_serialize', ['count']); + $this->set('count', $file); +} + /** * Search * 検索 @@ -564,5 +588,3 @@ private function __list($extraConditions = []) { $this->set('viewMode', 'list'); } } - - diff --git a/View/Elements/MultidatabaseBlocks/metadatas/edit_metadata.ctp b/View/Elements/MultidatabaseBlocks/metadatas/edit_metadata.ctp index 42fb8ab..a4d166f 100644 --- a/View/Elements/MultidatabaseBlocks/metadatas/edit_metadata.ctp +++ b/View/Elements/MultidatabaseBlocks/metadatas/edit_metadata.ctp @@ -12,7 +12,7 @@ NetCommonsHtml->script([ - '/multidatabases/js/edit_multi_database_metadatas.js', + '/multidatabases/js/edit_multidatabase_metadatas.js', ]); ?> diff --git a/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp b/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp index 302fc49..340e8e0 100644 --- a/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp +++ b/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp @@ -5,10 +5,13 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) + * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project */ + +echo $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); ?>
diff --git a/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp b/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp index 9b0a482..f833dc9 100644 --- a/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp +++ b/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp @@ -5,10 +5,13 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) + * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project */ + +echo $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); ?>
diff --git a/View/Helper/MultidatabaseContentViewElementHelper.php b/View/Helper/MultidatabaseContentViewElementHelper.php index 2ca6abb..7cd6ee5 100644 --- a/View/Helper/MultidatabaseContentViewElementHelper.php +++ b/View/Helper/MultidatabaseContentViewElementHelper.php @@ -5,6 +5,7 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) + * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project @@ -17,6 +18,7 @@ * MultidatabaseContentViewElementHelper Helper * * @author Tomoyuki OHNO (Ricksoft, Co., LTD.) + * @author Kazunori Sakamoto * @package NetCommons\Multidatabase\View\Helper * */ @@ -29,6 +31,7 @@ class MultidatabaseContentViewElementHelper extends AppHelper { */ public $helpers = [ 'NetCommons.Button', + 'NetCommons.CDNCache', 'NetCommons.NetCommonsHtml', 'NetCommons.NetCommonsForm', 'Form', @@ -167,8 +170,13 @@ private function __renderViewElementFile($content, $colNo, $showCounter = 0) { $result = $this->__renderViewElementFileReqAuth($content, $colNo, $fileInfo); } if ((int)$showCounter === 1) { - $result .= ' '; - $result .= $fileInfo['UploadFile']['download_count']; + $initialValue = $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['download_count']; + $result .= ' MultidatabaseContentEdit->chkHaveWysiwygItems($multidatabaseMetadata)) { echo $this->NetCommonsHtml->script([ - '/multidatabases/js/edit_multi_database_contents.js', + '/multidatabases/js/edit_multidatabase_contents.js', ]); } else { echo $this->NetCommonsHtml->script([ - '/multidatabases/js/edit_multi_database_contents_without_wysiwyg.js', + '/multidatabases/js/edit_multidatabase_contents_without_wysiwyg.js', ]); } diff --git a/webroot/css/empty b/webroot/css/empty deleted file mode 100644 index e69de29..0000000 diff --git a/webroot/js/edit_multi_database_contents.js b/webroot/js/edit_multidatabase_contents.js similarity index 90% rename from webroot/js/edit_multi_database_contents.js rename to webroot/js/edit_multidatabase_contents.js index 78285ef..62838b6 100644 --- a/webroot/js/edit_multi_database_contents.js +++ b/webroot/js/edit_multidatabase_contents.js @@ -1,9 +1,10 @@ /** * Multidatabases DatabaseContents JS * コンテンツ編集関連フロントエンド処理 - * webroot/js/edit_multi_database_contents.js + * webroot/js/edit_multidatabase_contents.js * * @author ohno.tomoyuki@ricksoft.jp (Tomoyuki OHNO/Ricksoft, Co., Ltd.) + * @author exkazuu@willbooster.com (Kazunori Sakamoto) * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License */ diff --git a/webroot/js/edit_multi_database_contents_without_wysiwyg.js b/webroot/js/edit_multidatabase_contents_without_wysiwyg.js similarity index 89% rename from webroot/js/edit_multi_database_contents_without_wysiwyg.js rename to webroot/js/edit_multidatabase_contents_without_wysiwyg.js index 5b2a27b..fe9b17e 100644 --- a/webroot/js/edit_multi_database_contents_without_wysiwyg.js +++ b/webroot/js/edit_multidatabase_contents_without_wysiwyg.js @@ -1,9 +1,10 @@ /** * Multidatabases DatabaseContentsWithoutWysiwyg JS * コンテンツ編集関連フロントエンド処理(Wysiwygなしの場合) - * webroot/js/edit_multi_database_contents.js + * webroot/js/edit_multidatabase_contents.js * * @author ohno.tomoyuki@ricksoft.jp (Tomoyuki OHNO/Ricksoft, Co., Ltd.) + * @author exkazuu@willbooster.com (Kazunori Sakamoto) * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License */ diff --git a/webroot/js/edit_multi_database_metadatas.js b/webroot/js/edit_multidatabase_metadatas.js similarity index 98% rename from webroot/js/edit_multi_database_metadatas.js rename to webroot/js/edit_multidatabase_metadatas.js index d5ad66a..8a767b2 100644 --- a/webroot/js/edit_multi_database_metadatas.js +++ b/webroot/js/edit_multidatabase_metadatas.js @@ -1,9 +1,10 @@ /** * Multidatabases DatabaseMetadatas JS * メタデータ編集関連フロントエンド処理 - * webroot/js/edit_multi_database_metadatas.js + * webroot/js/edit_multidatabase_metadatas.js * * @author ohno.tomoyuki@ricksoft.jp (Tomoyuki OHNO/Ricksoft, Co., Ltd.) + * @author exkazuu@willbooster.com (Kazunori Sakamoto) * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License */ diff --git a/webroot/js/empty b/webroot/js/empty deleted file mode 100644 index e69de29..0000000 diff --git a/webroot/js/multidatabase_files.js b/webroot/js/multidatabase_files.js new file mode 100644 index 0000000..93b8e56 --- /dev/null +++ b/webroot/js/multidatabase_files.js @@ -0,0 +1,28 @@ +/** + * Multidatabases Files JS + * + * @author exkazuu@willbooster.com (Kazunori Sakamoto) + * @link http://www.netcommons.org NetCommons Project + * @license http://www.netcommons.org/license.txt NetCommons License + */ + +NetCommonsApp.controller('MultidatabaseFile.view', + ['$scope', '$http', 'NC3_URL', function($scope, $http, NC3_URL) { + + $scope.downloadCount = '-'; + + $scope.init = function(frameId, uploadFileId, initialValue) { + if (initialValue !== null) { + $scope.downloadCount = initialValue; + return; + } + var params = '?frame_id=' + frameId + '&upload_file_id=' + uploadFileId; + $http.get(NC3_URL + '/multidatabases/multidatabase_contents/get_download_count.json' + params) + .then( + function(response) { + $scope.downloadCount = response.data.count.UploadFile.download_count; + }, + function() { + }); + }; +}]); From 5e2c39d8e5399961dc34e4d86c707414a9d62b1f Mon Sep 17 00:00:00 2001 From: "Sakamoto, Kazunori" Date: Sat, 29 Feb 2020 03:08:11 +0900 Subject: [PATCH 2/6] fix: refer to total_download_count instead of download_count --- Controller/MultidatabaseContentsController.php | 4 ++-- View/Helper/MultidatabaseContentViewElementHelper.php | 2 +- webroot/js/multidatabase_files.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Controller/MultidatabaseContentsController.php b/Controller/MultidatabaseContentsController.php index cf3e00b..ff1cec9 100644 --- a/Controller/MultidatabaseContentsController.php +++ b/Controller/MultidatabaseContentsController.php @@ -415,10 +415,10 @@ public function download() { public function get_download_count() { $options = [ 'fields' => [ - 'UploadFile.download_count', + 'UploadFile.total_download_count', ], 'conditions' => [ - 'UploadFile.id' => 10, + 'UploadFile.id' => $this->request->query('upload_file_id'), ] ]; $UploadFile = ClassRegistry::init('Files.UploadFile'); diff --git a/View/Helper/MultidatabaseContentViewElementHelper.php b/View/Helper/MultidatabaseContentViewElementHelper.php index 7cd6ee5..96f934a 100644 --- a/View/Helper/MultidatabaseContentViewElementHelper.php +++ b/View/Helper/MultidatabaseContentViewElementHelper.php @@ -170,7 +170,7 @@ private function __renderViewElementFile($content, $colNo, $showCounter = 0) { $result = $this->__renderViewElementFileReqAuth($content, $colNo, $fileInfo); } if ((int)$showCounter === 1) { - $initialValue = $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['download_count']; + $initialValue = $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['total_download_count']; $result .= '  Date: Sat, 29 Feb 2020 18:43:52 +0900 Subject: [PATCH 3/6] fix: insert script tag certainly --- .../MultidatabaseContents/view/view_content_group_c1.ctp | 3 --- .../MultidatabaseContents/view/view_content_group_c2.ctp | 3 --- View/Helper/MultidatabaseContentViewElementHelper.php | 1 + 3 files changed, 1 insertion(+), 6 deletions(-) diff --git a/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp b/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp index 340e8e0..302fc49 100644 --- a/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp +++ b/View/Elements/MultidatabaseContents/view/view_content_group_c1.ctp @@ -5,13 +5,10 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) - * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project */ - -echo $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); ?>
diff --git a/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp b/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp index f833dc9..9b0a482 100644 --- a/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp +++ b/View/Elements/MultidatabaseContents/view/view_content_group_c2.ctp @@ -5,13 +5,10 @@ * * @author Noriko Arai * @author Tomoyuki OHNO (Ricksoft Co., Ltd.) - * @author Kazunori Sakamoto * @link http://www.netcommons.org NetCommons Project * @license http://www.netcommons.org/license.txt NetCommons License * @copyright Copyright 2014, NetCommons Project */ - -echo $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); ?>
diff --git a/View/Helper/MultidatabaseContentViewElementHelper.php b/View/Helper/MultidatabaseContentViewElementHelper.php index 96f934a..7277ae4 100644 --- a/View/Helper/MultidatabaseContentViewElementHelper.php +++ b/View/Helper/MultidatabaseContentViewElementHelper.php @@ -171,6 +171,7 @@ private function __renderViewElementFile($content, $colNo, $showCounter = 0) { } if ((int)$showCounter === 1) { $initialValue = $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['total_download_count']; + $result .= $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); $result .= '  Date: Mon, 2 Mar 2020 09:14:45 +0900 Subject: [PATCH 4/6] fix: optimize get_download_counts --- Controller/MultidatabaseContentsController.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Controller/MultidatabaseContentsController.php b/Controller/MultidatabaseContentsController.php index ff1cec9..ffc3d5f 100644 --- a/Controller/MultidatabaseContentsController.php +++ b/Controller/MultidatabaseContentsController.php @@ -413,16 +413,17 @@ public function download() { * @return void */ public function get_download_count() { - $options = [ + $query = [ 'fields' => [ 'UploadFile.total_download_count', ], 'conditions' => [ 'UploadFile.id' => $this->request->query('upload_file_id'), - ] + ], + 'recursive' => -1 ]; $UploadFile = ClassRegistry::init('Files.UploadFile'); - $file = $UploadFile->find('first', $options); + $file = $UploadFile->find('first', $query); $this->set('_serialize', ['count']); $this->set('count', $file); From dbcd9ab1a6b00b04d636d62f26267bd7cc6403ea Mon Sep 17 00:00:00 2001 From: s-nakajima Date: Fri, 7 Aug 2020 22:53:02 +0900 Subject: [PATCH 5/6] =?UTF-8?q?change:=20test:=20Travis=E3=81=8B=E3=82=89P?= =?UTF-8?q?HP5.6=E3=82=92=E5=89=8A=E9=99=A4,php72=E4=BB=A5=E9=99=8D?= =?UTF-8?q?=E3=81=A7UnitTest=E3=81=A7Warning=E3=81=8C=E5=87=BA=E3=82=8B?= =?UTF-8?q?=E3=81=9F=E3=82=81=E4=BF=AE=E6=AD=A3=20https://github.com/NetCo?= =?UTF-8?q?mmons3/NetCommons3/issues/1588?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 808742b..225007b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,7 @@ dist: trusty env: matrix: - - NETCOMMONS_VERSION=master DB=mysql + - NETCOMMONS_VERSION=availability DB=mysql global: - secure: "B/XMBpbAJDvTiATtLnD4xN1OJ/7sV4eB4kTxSjXsRx4kkRRwGXP+E0j+lze59Bt+Tc7NWyWCr00OxEXdPuWa7cAGnw1p/h1M/ORhQfB0eiSFNObGLUiaAWs8yCWXz+tzdUrE18S87NjtBInP8rpLC4d5fpfO5RF9/tC5TSAWJfWbGduVTNdt6eXjiTAagOzzt3F67xqTO6FG8DbLEEhY91CMzfKDPFXLMUXPKKDJ1xIKgiY5z5SOdIvJZBAqxS0r4SEGi+r3jZmFlmT3MsVjTcm88F27y995whGSLnZXPmQB5jRV9wwMiPzgoV48rcgcBwwvt+3NIQXJuo+5QN8TsTnjHksDrjzGNwRKvZQDm5+olHZyOg8wR53jtVqIgwpmb11YCT9zYXLANZ5iWnL77hxA75ElAKS9MSHPVEE5FlunKfGyFpSmmK5QDUjRrLpcbwHQOF+ASzW0f+rmbieaqZwOi4/pOSsRHmiTxpzCowWJxeLtbZlInnINPQb9xDXpaJXOefnGz0d3hxte29xOFpFzlB/e9WPsD/VaF3+tgNKKWZnWkCVTg6nB7UrluQKCv1n66TZhQHKt5jBYgxHOvwOuCfa87Ec7RNjaZshkvEfe2qNBX1dvvcAjL4cR0QTjpPjWZhYle776KhZTZh80a9iSgeAbzmD4r6qIEx9o5o4=" - GIT_COMMITTER_NAME=s-nakajima From 2d89f1826e015090e841d3169845c57d42f5b0f9 Mon Sep 17 00:00:00 2001 From: s-nakajima Date: Sat, 8 Aug 2020 21:40:09 +0900 Subject: [PATCH 6/6] =?UTF-8?q?change:=20test:=20phpcs,=20gjslint=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=20https://github.com/NetCommons3/NetCommons3/issues/1?= =?UTF-8?q?588?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MultidatabaseContentsController.php | 30 +++++++++---------- .../MultidatabaseContentViewElementHelper.php | 3 +- webroot/js/multidatabase_files.js | 17 ++++++----- 3 files changed, 26 insertions(+), 24 deletions(-) diff --git a/Controller/MultidatabaseContentsController.php b/Controller/MultidatabaseContentsController.php index ffc3d5f..d464473 100644 --- a/Controller/MultidatabaseContentsController.php +++ b/Controller/MultidatabaseContentsController.php @@ -412,22 +412,22 @@ public function download() { * * @return void */ -public function get_download_count() { - $query = [ - 'fields' => [ - 'UploadFile.total_download_count', - ], - 'conditions' => [ - 'UploadFile.id' => $this->request->query('upload_file_id'), - ], - 'recursive' => -1 - ]; - $UploadFile = ClassRegistry::init('Files.UploadFile'); - $file = $UploadFile->find('first', $query); + public function get_download_count() { + $query = [ + 'fields' => [ + 'UploadFile.total_download_count', + ], + 'conditions' => [ + 'UploadFile.id' => $this->request->query('upload_file_id'), + ], + 'recursive' => -1 + ]; + $UploadFile = ClassRegistry::init('Files.UploadFile'); + $file = $UploadFile->find('first', $query); - $this->set('_serialize', ['count']); - $this->set('count', $file); -} + $this->set('_serialize', ['count']); + $this->set('count', $file); + } /** * Search diff --git a/View/Helper/MultidatabaseContentViewElementHelper.php b/View/Helper/MultidatabaseContentViewElementHelper.php index 7277ae4..921ca09 100644 --- a/View/Helper/MultidatabaseContentViewElementHelper.php +++ b/View/Helper/MultidatabaseContentViewElementHelper.php @@ -170,7 +170,8 @@ private function __renderViewElementFile($content, $colNo, $showCounter = 0) { $result = $this->__renderViewElementFileReqAuth($content, $colNo, $fileInfo); } if ((int)$showCounter === 1) { - $initialValue = $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['total_download_count']; + $initialValue = + $this->CDNCache->isCacheable() ? null : $fileInfo['UploadFile']['total_download_count']; $result .= $this->NetCommonsHtml->script('/multidatabases/js/multidatabase_files.js'); $result .= '