Example #1
0
 /**
     User logs in
 */
 public static function login($l, $p)
 {
     $user = R::findOne("user", "(@email=:l) and pwhash=:p", array('l' => $l, 'p' => sha1($p)));
     if (!$user) {
         RedView::end('error', 'User name and password don\'t match.');
     }
     $_SESSION['user'] = $user->export();
     RedView::end('message', 'Logged in.');
 }
Example #2
0
 /**
     User removes himself from a mailing list
 */
 public static function unsubscribe()
 {
     $user = self::getUser();
     if (!$user) {
         return RedView::set('error', "You're not on any of our lists.");
     }
     if (!($list = self::getList())) {
         return RedView::set('error', "List doesn't exist.");
     }
     R::unassociate($list, $user);
 }
Example #3
0
 /**
     simple access control
 */
 protected static function access($roles)
 {
     $user = self::getUser() or RedView::end('error', 'Log in first.');
     $rs = explode(',', trim($roles, ','));
     $us = explode(',', trim($user->roles, ','));
     foreach ($rs as $r) {
         foreach ($us as $u) {
             if ($r == $u) {
                 return $user;
             }
         }
     }
     RedView::end('error', 'You don\'t have permission to do that.');
 }
Example #4
0
 /**
     Update a mailing list
 */
 public static function updateList()
 {
     self::access('admin');
     Model_List::updateBean($_REQUEST);
     RedView::end('message', 'List updated.');
 }
Example #5
0
 public function gridAction()
 {
     $data = json_decode($_REQUEST['_gt_json']);
     if ($data->action == 'load') {
         echo $this->toJson();
         exit(0);
     } elseif ($data->action == 'save') {
         // print_r($data); die;
         $this->beanType = RedView::args(1);
         $model = "Model_{$this->beanType}";
         foreach ($data->insertedRecords as $record) {
             $model::createBean($record);
         }
         foreach ($data->updatedRecords as $record) {
             $model::updateBean($record);
         }
         foreach ($data->deletedRecords as $record) {
             $model::deleteBean($record);
         }
         exit(0);
     }
 }
Example #6
0
<?php

set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . PATH_SEPARATOR . dirname(__FILE__) . '/..');
require_once '../lib/redbean/RedBean/redbean.inc.php';
require_once '../lib/redmodel/redmodel.php';
require_once '../lib/redview/redview.php';
R::setup("mysql:host=localhost;dbname=redskeleton", "root", "root");
$optimizer = new RedBean_Plugin_Optimizer(R::$toolbox);
R::$redbean->addEventListener("update", $optimizer);
RedView::setup();
Example #7
0
 public function onConstraintFail($eventName, $sender, $message = null)
 {
     die($message);
     RedView::end('error', $message);
 }
Example #8
0
 /**
     User registers
 */
 public static function register()
 {
     $bean = Model_User::createBean($_REQUEST);
     $_SESSION['user'] = $bean->export();
     RedView::end('message', 'Your account has been created.');
 }