Overview

Packages

  • None
  • Wicked

Classes

  • Text_Wiki_Parse_Heading2
  • Text_Wiki_Parse_Toc2
  • Text_Wiki_Render_Latex_Heading2
  • Text_Wiki_Render_Latex_Toc2
  • Text_Wiki_Render_Plain_Heading2
  • Text_Wiki_Render_Plain_Toc2
  • Text_Wiki_Render_Rst
  • Text_Wiki_Render_Rst_Blockquote
  • Text_Wiki_Render_Rst_Bold
  • Text_Wiki_Render_Rst_Code
  • Text_Wiki_Render_Rst_Deflist
  • Text_Wiki_Render_Rst_Emphasis
  • Text_Wiki_Render_Rst_Freelink
  • Text_Wiki_Render_Rst_Heading2
  • Text_Wiki_Render_Rst_Links
  • Text_Wiki_Render_Rst_List
  • Text_Wiki_Render_Rst_Newline
  • Text_Wiki_Render_Rst_Paragraph
  • Text_Wiki_Render_Rst_Raw
  • Text_Wiki_Render_Rst_Toc2
  • Text_Wiki_Render_Rst_Tt
  • Text_Wiki_Render_Rst_Url
  • Text_Wiki_Render_Xhtml_Attribute
  • Text_Wiki_Render_Xhtml_Code2
  • Text_Wiki_Render_Xhtml_Freelink2
  • Text_Wiki_Render_Xhtml_Heading2
  • Text_Wiki_Render_Xhtml_Image2
  • Text_Wiki_Render_Xhtml_Interwiki
  • Text_Wiki_Render_Xhtml_Registrylink
  • Text_Wiki_Render_Xhtml_Toc2
  • Text_Wiki_Render_Xhtml_Url
  • Text_Wiki_Render_Xhtml_Wickedblock
  • Text_Wiki_Render_Xhtml_Wikilink2
  • Wicked
  • Wicked_Api
  • Wicked_Driver
  • Wicked_Driver_Sql
  • Wicked_Exception
  • Wicked_Factory_Driver
  • Wicked_Page
  • Wicked_Page_AddPage
  • Wicked_Page_AllPages
  • Wicked_Page_AttachedFiles
  • Wicked_Page_BackLinks
  • Wicked_Page_DeletePage
  • Wicked_Page_EditPage
  • Wicked_Page_LeastPopular
  • Wicked_Page_LikePages
  • Wicked_Page_MergeOrRename
  • Wicked_Page_MostPopular
  • Wicked_Page_NewPage
  • Wicked_Page_RecentChanges
  • Wicked_Page_RevertPage
  • Wicked_Page_Search
  • Wicked_Page_StandardHistoryPage
  • Wicked_Page_StandardPage
  • Wicked_Page_SyncDiff
  • Wicked_Page_SyncPages
  • Wicked_Sync
  • Wicked_Sync_Wicked
  • Wicked_Test
  • Overview
  • Package
  • Class
  • Tree
 1: <?php
 2: /**
 3:  * Wicked MostPopular class.
 4:  *
 5:  * Copyright 2003-2012 Horde LLC (http://www.horde.org/)
 6:  *
 7:  * See the enclosed file COPYING for license information (GPL). If you
 8:  * did not receive this file, see http://www.horde.org/licenses/gpl.
 9:  *
10:  * @author  Tyler Colbert <tyler@colberts.us>
11:  * @package Wicked
12:  */
13: class Wicked_Page_MostPopular extends Wicked_Page {
14: 
15:     /**
16:      * Display modes supported by this page.
17:      *
18:      * @var array
19:      */
20:     public $supportedModes = array(
21:         Wicked::MODE_CONTENT => true,
22:         Wicked::MODE_DISPLAY => true);
23: 
24:     /**
25:      * Renders this page in content mode.
26:      *
27:      * @param integer $numPages  How many (at most) pages should we return?
28:      *
29:      * @return string  The page content.
30:      */
31:     public function content($numPages = 10)
32:     {
33:         return $GLOBALS['wicked']->mostPopular($numPages);
34:     }
35: 
36:     /**
37:      * Renders this page in display or block mode.
38:      *
39:      * @return string  The content.
40:      * @throws Wicked_Exception
41:      */
42:     public function displayContents($isBlock)
43:     {
44:         $template = $GLOBALS['injector']->createInstance('Horde_Template');
45:         $pages = array();
46:         foreach ($this->content(10) as $page) {
47:             $page = new Wicked_Page_StandardPage($page);
48:             $pages[] = array('author' => $page->author(),
49:                              'created' => $page->formatVersionCreated(),
50:                              'name' => $page->pageName(),
51:                              'context' => false,
52:                              'hits' => $page->hits(),
53:                              'url' => $page->pageUrl(),
54:                              'version' => $page->version());
55:         }
56:         $template->set('pages', $pages, true);
57:         $template->set('hits', true, true);
58:         $hits = true;
59: 
60:         Horde::addScriptFile('tables.js', 'horde', true);
61: 
62:         ob_start();
63:         require WICKED_TEMPLATES . '/pagelist/header.inc';
64:         echo $template->fetch(WICKED_TEMPLATES . '/pagelist/pagelist.html');
65:         require WICKED_TEMPLATES . '/pagelist/footer.inc';
66:         $contents = ob_get_contents();
67:         ob_end_clean();
68:         return $contents;
69:     }
70: 
71:     public function pageName()
72:     {
73:         return 'MostPopular';
74:     }
75: 
76:     public function pageTitle()
77:     {
78:         return _("Most Popular");
79:     }
80: 
81: }
82: 
API documentation generated by ApiGen