/**
    * Tag management (let admins rename tags, remove tags, etc).
    * TODO: manage the Plugins.Tagging.Required boolean setting that makes tagging required or not.
    * @param Gdn_Controller $Sender
    */
   public function SettingsController_Tagging_Create($Sender, $Args) {
      $Sender->Permission('Garden.Settings.Manage');
      $Sender->Title('Tagging');
      $Sender->AddSideMenu('settings/tagging');
      $Sender->AddCSSFile('plugins/Tagging/design/tagadmin.css');
      $Sender->AddJSFile('plugins/Tagging/admin.js');
      $SQL = Gdn::SQL();

      list($Offset, $Limit) = OffsetLimit($Sender->Request->Get('Page'), 100);
      $Sender->SetData('_Limit', $Limit);

      $Sender->SetData('Tags', $SQL
         ->Select('t.*')
         ->From('Tag t')
         ->OrderBy('t.Name', 'asc')
         ->OrderBy('t.CountDiscussions', 'desc')
         ->Limit($Limit, $Offset)
         ->Get()->ResultArray());

      $Sender->SetData('RecordCount', $SQL->GetCount('Tag'));
         
      $Sender->Render('Tagging', '', 'plugins/Tagging');
   }
Esempio n. 2
0
 /**
  * List all tags and allow searching
  * 
  * @param Gdn_Controller $Sender
  */
 public function Controller_Index($Sender)
 {
     $Sender->Title('Tagging');
     $Sender->AddSideMenu('settings/tagging');
     $Sender->AddCSSFile('plugins/Tagging/design/tagadmin.css');
     $Sender->AddJSFile('plugins/Tagging/js/admin.js');
     $SQL = Gdn::SQL();
     $Sender->Form->Method = 'get';
     $Sender->Form->InputPrefix = '';
     //$Sender->Form->Action = '/settings/tagging';
     list($Offset, $Limit) = OffsetLimit($Sender->Request->Get('Page'), 100);
     $Sender->SetData('_Limit', $Limit);
     if ($Search = $Sender->Request->Get('Search')) {
         $SQL->Like('Name', $Search, 'right');
     }
     $Data = $SQL->Select('t.*')->From('Tag t')->OrderBy('t.Name', 'asc')->OrderBy('t.CountDiscussions', 'desc')->Limit($Limit, $Offset)->Get()->ResultArray();
     $Sender->SetData('Tags', $Data);
     if ($Search = $Sender->Request->Get('Search')) {
         $SQL->Like('Name', $Search, 'right');
     }
     $Sender->SetData('RecordCount', $SQL->GetCount('Tag'));
     $Sender->Render('tagging', '', 'plugins/Tagging');
 }