示例#1
0
 /**
  * Displays the admin page
  */
 public function actionIndex()
 {
     $this->layout = '//layouts/column1';
     $this->pageTitle = Yii::t('sourcebans', 'controllers.admin.index.title');
     $this->breadcrumbs = array(Yii::t('sourcebans', 'controllers.admin.index.title'));
     $this->menu = array(array('label' => Yii::t('sourcebans', 'controllers.admin.admins.title'), 'url' => array('admin/admins'), 'itemOptions' => array('class' => 'admins'), 'visible' => Yii::app()->user->data->hasPermission('ADD_ADMINS', 'DELETE_ADMINS', 'EDIT_ADMINS', 'LIST_ADMINS')), array('label' => Yii::t('sourcebans', 'controllers.admin.bans.title'), 'url' => array('admin/bans'), 'itemOptions' => array('class' => 'bans'), 'visible' => Yii::app()->user->data->hasPermission('ADD_BANS', 'IMPORT_BANS', 'BAN_APPEALS', 'BAN_REPORTS')), array('label' => Yii::t('sourcebans', 'controllers.admin.groups.title'), 'url' => array('admin/groups'), 'itemOptions' => array('class' => 'groups'), 'visible' => Yii::app()->user->data->hasPermission('ADD_GROUPS', 'DELETE_GROUPS', 'EDIT_GROUPS', 'LIST_GROUPS')), array('label' => Yii::t('sourcebans', 'controllers.admin.servers.title'), 'url' => array('admin/servers'), 'itemOptions' => array('class' => 'servers'), 'visible' => Yii::app()->user->data->hasPermission('ADD_SERVERS', 'DELETE_SERVERS', 'EDIT_SERVERS', 'LIST_SERVERS')), array('label' => Yii::t('sourcebans', 'controllers.admin.games.title'), 'url' => array('admin/games'), 'itemOptions' => array('class' => 'games'), 'visible' => Yii::app()->user->data->hasPermission('ADD_GAMES', 'DELETE_GAMES', 'EDIT_GAMES', 'LIST_GAMES')), array('label' => Yii::t('sourcebans', 'controllers.admin.settings.title'), 'url' => array('admin/settings'), 'itemOptions' => array('class' => 'settings'), 'visible' => Yii::app()->user->data->hasPermission('SETTINGS')));
     $demosize = Helpers::getDirectorySize(Yii::getPathOfAlias('webroot.demos'));
     $this->render('index', array('demosize' => Yii::app()->format->formatSize($demosize['size']), 'total_admins' => SBAdmin::model()->count(), 'total_archived_appeals' => SBAppeal::model()->countByAttributes(array('archived' => true)), 'total_archived_reports' => SBReport::model()->countByAttributes(array('archived' => true)), 'total_bans' => SBBan::model()->count(), 'total_blocks' => SBBlock::model()->count(), 'total_appeals' => SBAppeal::model()->countByAttributes(array('archived' => false)), 'total_servers' => SBServer::model()->count(), 'total_reports' => SBReport::model()->countByAttributes(array('archived' => false))));
 }
示例#2
0
 private function _rconServer($command, $id = null)
 {
     if (empty($id)) {
         $servers = SBServer::model()->findAll();
     } else {
         if (is_array($id)) {
             $servers = SBServer::model()->findAllByPk($id);
         } else {
             $servers = array(SBServer::model()->findByPk($id));
         }
     }
     $results = array();
     foreach ($servers as $server) {
         $rcon = new ServerRcon($server->host, $server->port, $server->rcon);
         $result = array('id' => $server->id, 'host' => $server->host, 'port' => $server->port);
         if (!$rcon->auth()) {
             $result['error'] = array('code' => 'ERR_INVALID_PASSWORD', 'message' => Yii::t('yii', '{attribute} is invalid.', array('{attribute}' => $server->getAttributeLabel('rcon'))));
         } else {
             $result['result'] = $rcon->execute($command);
         }
         $results[] = $result;
     }
     return empty($id) || is_array($id) ? $results : $results[0];
 }
示例#3
0
    <?php 
echo $form->label($model, 'admin_id', array('class' => 'control-label'));
?>
    <div class="controls">
      <?php 
echo $form->dropDownList($model, 'admin_id', CHtml::listData(SBAdmin::model()->findAll(array('order' => 'name')), 'id', 'name'), array('empty' => '- ' . Yii::t('sourcebans', 'None') . ' -'));
?>
    </div>
  </div>

  <div class="control-group">
    <?php 
echo $form->label($model, 'server_id', array('class' => 'control-label'));
?>
    <div class="controls">
      <?php 
echo $form->dropDownList($model, 'server_id', CHtml::listData(SBServer::model()->enabled()->with('game')->findAll(array('order' => 'game.name, t.host, t.port')), 'id', 'address', 'game.name'), array('empty' => '- ' . Yii::t('sourcebans', 'None') . ' -'));
?>
    </div>
  </div>

  <div class="control-group buttons">
    <div class="controls">
      <?php 
echo CHtml::submitButton(Yii::t('sourcebans', 'Search'), array('class' => 'btn'));
?>
    </div>
  </div>

<?php 
$this->endWidget();
示例#4
0
 /**
  * Displays the servers page
  */
 public function actionServers()
 {
     $this->pageTitle = Yii::t('sourcebans', 'controllers.default.servers.title');
     $this->breadcrumbs = array(Yii::t('sourcebans', 'controllers.default.servers.title'));
     $servers = SBServer::model()->search();
     $servers->criteria->scopes = 'enabled';
     $servers->pagination = false;
     $this->render('servers', array('servers' => $servers));
 }