예제 #1
0
 /**
  * Reset access action.
  *
  * @param Request $request Current router request.
  *
  * @return void
  */
 public function renew(Request $request)
 {
     $user = Models\CMSUser::find()->where('DATE_ADD(updated_on, INTERVAL 60 MINUTE) > UTC_TIMESTAMP() AND SHA1(CONCAT(password, ?, email)) = ?', array(Core\Config()->USER_AUTH['cookie_salt'], $request->get('id')))->first();
     if ($user) {
         $new_password = Core\Utils::generatePassword(10);
         if ($user->save(array('password' => $new_password), true)) {
             $this->new_password = $new_password;
         }
     } else {
         $request->redirectTo(array('controller' => 'authentication'));
     }
 }
예제 #2
0
 /**
  * Loads Resource object.
  *
  * @param Request $request Current router request.
  *
  * @return void
  */
 protected function loadResource(Request $request)
 {
     if (!$this->resource->exists()) {
         if (!$request->get('id')) {
             $request->redirectTo('index');
         }
         $resourceModel = $this->resource;
         $this->resource = $resourceModel::find()->where($resourceModel::primaryKeyField() . ' = ?', array($request->get('id')))->first();
         if (!$this->resource) {
             Helpers\FlashMessage::set($this->labels['errors']['not_exists'], 'danger');
             $request->redirectTo('index');
         }
     }
 }
예제 #3
0
 /**
  * Generate cache identifier value.
  *
  * @param Modules\Router\Request $request Request object.
  *
  * @see    md5(), implode()
  * @return string
  */
 protected static function generateOutputCacheId(Modules\Router\Request $request)
 {
     return md5('_silla_' . implode('', $request->get()));
 }