array('index', 'about', 'debugerror', 'error', 'login', 'logout', 'search'), 'users'=>array('*'), ), array('allow', 'actions'=>array('admin', 'adminEGH'), 'users'=>array('admin'), ), array('deny', 'users'=>array('*'), ), ); } public function actionIndex() { $criteria = new CDbCriteria; $criteria->order = "date DESC"; $all_log = Log::model()->findAll($criteria); /* @var $all_log Log[] */ $data = array(); $data['program'] = ProgramHelper::GetDailyProg(); //TODO-MS Show last BlogEntry $data['logs'] = $all_log; $this->render('index', $data); } public function actionError() { if($error=Yii::app()->errorHandler->error) { if(Yii::app()->request->isAjaxRequest) echo $error['message']; else $this->render('error', $error); } } public function actionDebugError() { if($error=Yii::app()->errorHandler->error) { if(Yii::app()->request->isAjaxRequest) echo $error['message']; else $this->render('debugerror', $error); } } public function actionAbout() { $data = array(); $this->js_scripts[] = file_get_contents('protected/components/extendedgitgraph/script.js'); if(isset($_POST['SendMailForm'])) { $model = new SendMailForm(); $model->attributes=$_POST['SendMailForm']; if($model->validate()) { if ($model->send()) { $data['alerts_success'][] = "Successfully send mail from " . $model->name; $data['model'] = new SendMailForm(); } else { $data['alerts_error'][] = "Internal error while sending mail"; $data['model'] = $model; } } else { $data['model'] = $model; } } else { $data['model'] = new SendMailForm(); } $this->render('about', $data); } public function actionLogin() { $model = new LoginForm(); // if it is ajax validation request if(isset($_POST['ajax']) && $_POST['ajax']==='login-form') { echo TbActiveForm::validate($model); Yii::app()->end(); } // collect user input data if(isset($_POST['LoginForm'])) { $model->attributes=$_POST['LoginForm']; // validate user input and redirect to the previous page if valid if($model->validate() && $model->login()) $this->redirect(Yii::app()->user->returnUrl); } // display the login form $this->render('login', array('model'=>$model)); } public function actionAdmin() { $this->render('admin', array()); } public function actionAdminEGH($commandcode) { if (strtolower($commandcode) == 'ajaxstatus') { $this->layout = null; if (session_status() !== PHP_SESSION_ACTIVE) session_start(); echo $_SESSION['ajax_progress_egh_refresh']; } elseif (strtolower($commandcode) == 'ajaxreload') { $v = new ExtendedGitGraph('Mikescher'); $v->addSecondaryUsername("Sam-Development"); $v->addSecondaryRepository("Anastron/ColorRunner"); $v->setToken(MsHelper::getStringDBVar('egg_auth-token')); $v->collect(); $v->generateAndSave(); } else { throw new CHttpException(400,'Invalid request. Please do not repeat this request again.'); } } public function actionLogout() { Yii::app()->user->logout(); $this->redirect(Yii::app()->homeUrl); } public function actionSearch($search) { $searchsplit = preg_split('[\+| ]', $search, 8, PREG_SPLIT_NO_EMPTY); $results = array_merge( Program::getSearchResults($searchsplit), BlogPost::getSearchResults($searchsplit), Log::getSearchResults($searchsplit), HighscoreGames::getSearchResults($searchsplit)); $this->render('searchresults', [ 'searchstring' => $search, 'result' => $results, ]); } }