/** * Display a listing of the resource. * * @return Response */ public function index() { if (Auth::user()->is_admin) { $grupos = Group::select('id', 'code', 'name', 'delimitaciones')->get(); return View::make('grupos.index', array('grupos' => $grupos)); } return View::make('cuentas.dashboard'); }
public function get_groups_from_course($course_id, $selected_id = NULL) { $groups = new Group(); $groups->select('id, name'); $groups->where_related_course('id', $course_id); $groups->order_by_with_constant('name', 'asc'); $groups->get_iterated(); $options = array('' => ''); foreach ($groups as $group) { $options[$group->id] = $group->name; } $this->parser->parse('backend/participants/groups_from_course.tpl', array('groups' => $options, 'selected' => $selected_id)); }
function handler_news($page) { if (Env::has('send')) { try { $required_fields = array('origin_news_proposal', 'target_group_news', 'title', 'news_content', 'begin', 'end'); foreach ($required_fields as $field) { if (Env::v($field, '') == '') { throw new Exception("Missing field ({$field})"); } } // Origin & Target if (Env::t('origin_news_proposal') == 'false') { $origin = false; } else { $origin = new Group(Env::i('origin_news_proposal')); $origin->select(GroupSelect::base()); } list($target, $target_group) = self::target_picker_to_caste_group('news'); // Content $title = Env::t('title'); $image = Env::has('image') ? new FrankizImage(Env::i('image')) : false; $content = Env::t('news_content'); // Dates $begin = new FrankizDateTime(Env::t('begin')); $end = new FrankizDateTime(Env::t('end')); // Meta data $comment = Env::t('comment', ''); // Check credentials for origin if ($origin !== false && !S::user()->hasRights($origin, Rights::admin())) { if (S::user()->hasRights($origin, Rights::restricted())) { $valid_origin = true; } else { throw new Exception("Invalid credentials for origin Group"); } } else { $valid_origin = false; } $target->select(CasteSelect::validate()); $nv = new NewsValidate(array('writer' => S::user(), 'target' => $target, 'image' => $image, 'origin' => $origin, 'title' => $title, 'content' => $content, 'begin' => $begin, 'end' => $end, 'comment' => $comment, 'valid_origin' => $valid_origin)); $v = new Validate(array('writer' => S::user(), 'group' => $valid_origin ? $origin : $target_group, 'item' => $nv, 'type' => 'news')); $v->insert(); $page->assign('envoye', true); } catch (Exception $e) { throw $e; $page->assign('msg', "Il manque des informations pour créer l'annonce."); } } $page->assign('title', 'Proposer une annonce'); $page->addCssLink('validate.css'); $page->changeTpl('validate/prop.news.tpl'); }
/** * Create an image for a promotion, for a group, if needed */ function create_promo_image(Group $g, $promo) { $g->select(GroupSelect::base()); if ($g->image()) { return; } if ($promo % 2 == 0) { $upload = FrankizUpload::fromFile(dirname(__FILE__) . '/../images/rouje.png'); $label = 'Chic à la rouje'; } else { $upload = FrankizUpload::fromFile(dirname(__FILE__) . '/../images/jone.png'); $label = 'Chic à la jone'; } $i = new FrankizImage(); $i->insert(); $i->caste($g->caste(Rights::everybody())); $i->label($label); $i->image($upload, false); $g->image($i); }
public static function group_center_city() { $city = Group::select('city.city_name', 'city.id as city_id', 'groups.group_name', 'center.id as center_id', 'center.center_name', 'groups.id as group_id')->join('center', 'groups.center_id', '=', 'center.id')->join('city', 'center.city_id', '=', 'city.id')->orderBy('center_id', 'asc')->orderBy('city_id', 'asc')->get(); return $city; }
public function delete_group($group_id = NULL) { if (is_null($group_id)) { add_error_flash_message('Skupina sa nenašla.'); redirect(site_url('groups')); } $this->db->trans_begin(); $group = new Group(); $persons_count = $group->person; $persons_count->select_func('COUNT', array('@id'), 'persons_count'); $persons_count->where_related_group('id', '${parent}.id'); $group->select_subquery($persons_count, 'persons_count'); $group->select('*'); $group->get_by_id((int) $group_id); if (!$group->exists()) { $this->db->trans_rollback(); add_error_flash_message('Skupina sa nenašla.'); redirect(site_url('groups')); } if ((int) $group->persons_count > 0) { $this->db->trans_rollback(); add_error_flash_message('Nie je možné vymazať skupinu, ktorá má členov.'); redirect(site_url('groups')); } $success_message = 'Skupina <strong>' . $group->title . '</strong> s ID <strong>' . $group->id . '</strong> bola vymazaná úspešne.'; $error_message = 'Skupinu <strong>' . $group->title . '</strong> s ID <strong>' . $group->id . '</strong> sa nepodarilo vymazať.'; if ($group->delete() && $this->db->trans_status()) { $this->db->trans_commit(); add_success_flash_message($success_message); } else { $this->db->trans_rollback(); add_error_flash_message($error_message); } redirect(site_url('groups')); }
public function insertGroup() { $cre = ["group" => Input::get('group')]; $rules = ["group" => 'required']; $validator = Validator::make($cre, $rules); if ($validator->passes()) { $group = new Group(); $group->group_name = Input::get('group'); $group->center_id = Input::get('center_id'); $group->save(); $group_info = Group::select('center.center_name', 'groups.group_name', 'city.city_name', 'groups.id')->join('center', 'groups.center_id', '=', 'center.id')->join('city', 'center.city_id', '=', 'city.id')->where('groups.id', '=', $group->id)->first(); $count = Group::count(); $data['success'] = 'true'; $data['message'] = html_entity_decode(View::make('admin.manage.groups.view', ["data" => $group_info, "count" => $count])); } else { $data["success"] = false; $data["message"] = "All fields are not filled"; } return json_encode($data); }
/** * Pobranie danych roli do wyświetlenia * * @param integer $id id roli * @return Row_Rola wiersz z danymi */ public function showRole($id) { $modelGroup = new Group(); $select = $modelGroup->select()->from(array('g' => 'group'), array())->joinLeft(array('rg' => 'role_group'), 'rg.id_group = g.id', array())->where('g.ghost = \'f\'')->where('rg.id_role = ?', $id)->columns(array('groups' => new Zend_Db_Expr('array_to_string(array_agg(description),\'<br />\')')))->setIntegrityCheck(false); $model = new Role(); $cols = array('role_name', 'description', 'groups' => new Zend_Db_Expr('(' . $select . ')'), 'ghost' => new Zend_Db_Expr('CASE WHEN ghost=true THEN \'tak\' ELSE \'nie\' END')); $select = $model->select()->from(array('r' => 'role'))->columns($cols)->where('r.id = ?', $id); $data = $model->fetchRow($select); return $data; }
function handler_new_regular($page) { $title = Env::t('title', ''); $description = Env::t('activity_description', ''); $default_begin = Env::t('begin', '00:00'); $default_end = Env::t('end', '00:00'); $days = Env::v('days'); $target = Env::i('target_group_activity', ''); $caste = Env::has('target_everybody_activity') ? 'everybody' : 'restricted'; if (Env::has('send')) { S::assert_xsrf_token(); if ($title == '' || is_null($days) || $default_begin == '00:00' || $default_end == '00:00' || $target == '' || !(preg_match('`^\\d{2}:\\d{2}$`', $default_begin) && strtotime($default_begin) !== false && preg_match('`^\\d{2}:\\d{2}$`', $default_end) && strtotime($default_end) !== false)) { $page->assign('msg', 'Il manque des informations pour créer l\'activité. Attention les heures ne peuvent pas rester de la forme 00:00.'); } else { $days = implode(',', $days); $target = new Group($target); $target->select(GroupSelect::validate()); if (!S::user()->hasRights($target, Rights::admin())) { throw new Exception("Invalid credentials"); } if ($target->ns() == Group::NS_USER) { $caste = 'restricted'; } $a = new Activity(array('target' => $target->caste(new Rights($caste)), 'origin' => $target, 'title' => $title, 'description' => $description, 'days' => $days, 'default_begin' => $default_begin, 'default_end' => $default_end)); $a->insert(); $page->assign('envoye', true); } } $page->assign('title_activity', $title); $page->assign('description', $description); $page->assign('begin', $default_begin); $page->assign('end', $default_end); $page->assign('title', 'Créer une activité régulière'); $page->changeTpl('activity/create_regular_activity.tpl'); }
public function getDataToUserReport() { $profileModel = new Profile(); $select = $profileModel->select()->order('id_user'); $profileDataArray = $profileModel->fetchAll($select)->toArray(); $groupModel = new Group(); $select = $groupModel->select(); $groupDataArray = $groupModel->fetchAll($select)->toArray(); foreach ($groupDataArray as $key => $value) { $tmp[$value['id']] = $value; } $groupDataArray = $tmp; unset($tmp); $branchModel = new Branch(); $select = $branchModel->select(); $branchDataArray = $branchModel->fetchAll($select)->toArray(); foreach ($branchDataArray as $key => $value) { $tmp[$value['id']] = $value; } $branchDataArray = $tmp; unset($tmp); $userModel = new User(); $select = $userModel->select(); $userDataArray = $userModel->fetchAll($select)->toArray(); foreach ($userDataArray as $key => $value) { $tmp[$value['id']] = $value; } $userDataArray = $tmp; unset($tmp); $roleModel = new Role(); $select = $roleModel->select(); $roleDataArray = $roleModel->fetchAll($select)->toArray(); foreach ($roleDataArray as $key => $value) { $tmp[$value['id']] = $value; } $roleDataArray = $tmp; unset($tmp); $groupArray = array(); foreach ($profileDataArray as $key => $value) { $data = $this->getAuthorizationsForProfile($value['id']); foreach ($data as $key2 => $values) { foreach ($values as $key3 => $privs) { /* if ($privs['ghost'] === true) { unset($data[$key2][$key3]); continue; } */ $tmp = array('login' => '', 'surname' => '', 'first_name' => '', 'group' => '', 'role' => '', 'branch' => '', 'ghost' => ''); if ($key2 === 'group') { $tmp['group'] = $groupDataArray[$privs['id_group']]['group_name']; } if ($key2 === 'role') { $tmp['role'] = $roleDataArray[$privs['id_role']]['description']; } $tmp['login'] = $userDataArray[$value['id_user']]['login']; $tmp['surname'] = $userDataArray[$value['id_user']]['surname']; $tmp['first_name'] = $userDataArray[$value['id_user']]['first_name']; $tmp['branch'] = $branchDataArray[$value['id_branch']]['branch_name']; $tmp['ghost'] = $userDataArray['ghost'] ? 'NIEAKTYWNY' : 'AKTYWNY'; $groupArray[] = $tmp; } } } return $groupArray; }