summaryrefslogtreecommitdiff
path: root/app/Module/TopPageViewsModule.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Module/TopPageViewsModule.php')
-rw-r--r--app/Module/TopPageViewsModule.php63
1 files changed, 48 insertions, 15 deletions
diff --git a/app/Module/TopPageViewsModule.php b/app/Module/TopPageViewsModule.php
index 641c41e142..a705099c7b 100644
--- a/app/Module/TopPageViewsModule.php
+++ b/app/Module/TopPageViewsModule.php
@@ -1,6 +1,4 @@
<?php
-namespace Fisharebest\Webtrees\Module;
-
/**
* webtrees: online genealogy
* Copyright (C) 2015 webtrees development team
@@ -15,6 +13,8 @@ namespace Fisharebest\Webtrees\Module;
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+namespace Fisharebest\Webtrees\Module;
+
use Fisharebest\Webtrees\Auth;
use Fisharebest\Webtrees\Database;
use Fisharebest\Webtrees\Filter;
@@ -27,29 +27,43 @@ use Fisharebest\Webtrees\Theme;
* Class TopPageViewsModule
*/
class TopPageViewsModule extends AbstractModule implements ModuleBlockInterface {
- /** {@inheritdoc} */
+ /**
+ * How should this module be labelled on tabs, menus, etc.?
+ *
+ * @return string
+ */
public function getTitle() {
return /* I18N: Name of a module */ I18N::translate('Most viewed pages');
}
- /** {@inheritdoc} */
+ /**
+ * A sentence describing what this module does.
+ *
+ * @return string
+ */
public function getDescription() {
return /* I18N: Description of the “Most visited pages” module */ I18N::translate('A list of the pages that have been viewed the most number of times.');
}
- /** {@inheritdoc} */
- public function getBlock($block_id, $template = true, $cfg = null) {
+ /**
+ * Generate the HTML content of this block.
+ *
+ * @param int $block_id
+ * @param bool $template
+ * @param array $cfg
+ *
+ * @return string
+ */
+ public function getBlock($block_id, $template = true, $cfg = array()) {
global $ctype, $WT_TREE;
$num = $this->getBlockSetting($block_id, 'num', '10');
$count_placement = $this->getBlockSetting($block_id, 'count_placement', 'before');
$block = $this->getBlockSetting($block_id, 'block', '0');
- if ($cfg) {
- foreach (array('count_placement', 'num', 'block') as $name) {
- if (array_key_exists($name, $cfg)) {
- $$name = $cfg[$name];
- }
+ foreach (array('count_placement', 'num', 'block') as $name) {
+ if (array_key_exists($name, $cfg)) {
+ $$name = $cfg[$name];
}
}
@@ -106,22 +120,41 @@ class TopPageViewsModule extends AbstractModule implements ModuleBlockInterface
}
}
- /** {@inheritdoc} */
+ /**
+ * Should this block load asynchronously using AJAX?
+ *
+ * Simple blocks are faster in-line, more comples ones
+ * can be loaded later.
+ *
+ * @return bool
+ */
public function loadAjax() {
return true;
}
- /** {@inheritdoc} */
+ /**
+ * Can this block be shown on the user’s home page?
+ *
+ * @return bool
+ */
public function isUserBlock() {
return false;
}
- /** {@inheritdoc} */
+ /**
+ * Can this block be shown on the tree’s home page?
+ *
+ * @return bool
+ */
public function isGedcomBlock() {
return true;
}
- /** {@inheritdoc} */
+ /**
+ * An HTML form to edit block settings
+ *
+ * @param int $block_id
+ */
public function configureBlock($block_id) {
if (Filter::postBool('save') && Filter::checkCsrf()) {
$this->setBlockSetting($block_id, 'num', Filter::postInteger('num', 1, 10000, 10));