public function login() { if (isset($_POST['username'])) { $where = array(); $where[] = array('AND', 'content', '=', $_POST['username']); $where[] = array('AND', 'action', '=', 'login_failure'); $where[] = array('AND', 'create_date', '>=', time() - 60 * 60); $order = array(); $order[] = array('create_date', 'desc'); $log = new Libraries_Db_Mysql_Model('sys_log'); $access_failures = $log->search($where, $order); if (count($access_failures) >= 3) { header('location: ' . SITE_ROOT_URI . '/admin/error/'); exit; } Admin_Libraries_Log::getInstance()->logAction('login_attempt', $_POST['username']); $username = $_POST['username']; $password = $_POST['password']; $is_login_success = Admin_Libraries_Admin::login($username, $password); $is_loged = Admin_Libraries_Admin::isLoged(); if ($is_login_success && $is_loged) { Admin_Libraries_Log::getInstance()->logAction('login_success', $_POST['username']); header('location:' . SITE_ROOT_URI . '/admin/'); exit; } Admin_Libraries_Log::getInstance()->logAction('login_failure', $_POST['username']); } Libraries_Layout::getInstance()->setTheme('admin'); Libraries_Layout::getInstance()->setLayout('login'); Libraries_Layout::getInstance()->render(); }
public static function render($widget_area) { $view = Libraries_View::getInstance(); $page = $view->getSharedData('_SYSTEM_PAGE'); $page_template = $view->getSharedData('_SYSTEM_PAGE_TEMPLATE'); $where = array(); $where[] = array('AND', 'id_page', '=', $page->id); $where[] = array('AND', 'area_name', '=', $widget_area); $order = array(); $order[] = array('order_index', 'ASC'); $widget_instance = new Page_Models_Page_Widget_Instance(); $widget_instances = $widget_instance->search($where, $order); foreach ($widget_instances as $widget_instance) { $widget = new Page_Models_Page_Widget(); $widget->load($widget_instance->id_page_widget); $sys_object = new Crud_Models_Object(); $sys_object->load($widget->id_sys_object); $row = new Libraries_Db_Mysql_Model($sys_object->table_name); $row->load($widget_instance->id_row); $widget_class_name = $widget->class_name; /* echo '<pre>'; print_r($widget); echo '</pre>'; echo '<pre>'; print_r($widget_instance); echo '</pre>'; exit; */ echo '<div class="widget" data-widget-id="' . $widget->id . '" data-widget-instance-id="' . $widget_instance->id . '" data-widget-object-id="' . $widget->id_sys_object . '" data-widget-row-id="' . $widget_instance->id_row . '">'; call_user_func_array(array(new $widget_class_name(), 'render'), array($widget, $widget_instance, $row)); echo '</div>'; } }
/** * * @param string $action * @param string $content * @return Libraries_Db_Mysql_Model */ public function logAction($action, $content) { $this->fifo(); $log = new Libraries_Db_Mysql_Model('sys_log'); $log->id_adm_user = Admin_Libraries_Admin::getLogedUser()->id; $log->action = $action; $log->content = $content; $log->create_date = time(); $log->save(); return $log; }
public function content($sys_object_id) { $sys_object = new Crud_Models_Object(); $sys_object->load(intval($sys_object_id)); $sys_object->loadFieldsForObject(); if ($sys_object->is_system == 1 && $this->user->role->safe_title != 'administrator') { echo '<script>window.location="' . SITE_ROOT_URI . '/admin/error/' . '"</script>'; exit; } if (!$this->user->role->canExecuteAction('can_view_' . $sys_object->table_name)) { echo '<script>window.location="' . SITE_ROOT_URI . '/admin/error/' . '"</script>'; exit; } $order = array(); $order[] = array('title', 'ASC'); $role = new Libraries_Db_Mysql_Model('adm_user_role'); $roles = $role->search(array(), $order); if (isset($_POST) && !empty($_POST)) { foreach ($roles as $role) { $sql = "DELETE \r\n\t\t\t\t\t\tFROM adm_user_role_permission\r\n\t\t\t\t\t\tWHERE id_adm_user_role = ?"; $data = array($role->id); Libraries_Db_Factory::getDb()->execute($sql, $data); foreach ($_POST as $action => $data) { $permission = new Libraries_Db_Mysql_Model('adm_user_role_permission'); $permission->id_adm_user_role = $role->id; $permission->action = $action; $permission->is_active = array_key_exists($role->id, $data) && $data[$role->id] == 1 ? 1 : 0; $permission->save(); } } Libraries_Flashdata::set('saved', __('Permissions is saved')); } $order = array(); $order[] = array('table_name', 'ASC'); $where = array(); $where[] = array('AND', 'is_system', '!=', 1); $objects = $sys_object->search($where, $order); Libraries_View::getInstance()->roles = $roles; Libraries_View::getInstance()->objects = $objects; Libraries_View::getInstance()->saved_status = Libraries_Flashdata::get('saved'); $content = Libraries_View::getInstance()->setModule('admin')->load('permissions'); Libraries_Layout::getInstance()->setTheme('admin'); Libraries_Layout::getInstance()->setLayout('admin'); Libraries_Layout::getInstance()->setRegionContent('content', $content); Libraries_Layout::getInstance()->render(); }
public function reordermanual() { $object = new Crud_Models_Object(); $object->load($_POST['object_id']); $field = new Crud_Models_Field(); $field->load($_POST['field_id']); $row = new Libraries_Db_Mysql_Model($object->table_name); $row->load($_POST['row_id']); $where = array(); $order = array(); $replacement_row = new Libraries_Db_Mysql_Model($object->table_name); $replacement_row->load(intval($_POST['value']), $field->field_name); if ($replacement_row->isEmpty()) { $sql = "SELECT MIN({$field->field_name}) as min, MAX({$field->field_name}) as max\r\n\t\t\t\t\tFROM {$object->table_name}\r\n\t\t\t\t\tWHERE is_deleted = 0"; $min_max = Libraries_Db_Factory::getDb()->fetchRow($sql, array(), Libraries_Db_Adapter::FETCH_TYPE_CLASS); if ($_POST['value'] < $min_max->min) { $replacement_row = $replacement_row->load($min_max->min, $field->field_name); $_POST['value'] = $min_max->min; } if ($_POST['value'] > $min_max->max) { $replacement_row = $replacement_row->load($min_max->max, $field->field_name); $_POST['value'] = $min_max->max; } /* $response = array(); $response['error'] = 'Can\'t find this object'; echo json_encode($response); return; */ } $replacement_row->{$field->field_name} = $row->{$field->field_name}; $replacement_row->save(); $row->{$field->field_name} = $_POST['value']; $row->save(); $response = array(); $response['success'] = 1; echo json_encode($response); return; }
<?php $table_name = $control_properties->table_name; $conditional_field_id = $control_properties->conditional_field_id; if (!empty($table_name)) { $sys_object = new Crud_Models_Object(); $sys_object->load($table_name, 'table_name'); $sys_object->loadFieldsForObject(); } else { $sys_field = new Crud_Models_Field(); $sys_field->load($conditional_field_id); $sys_field->loadControl(); $sys_object = new Crud_Models_Object(); $sys_object->load($row->{$sys_field->field_name}); $sys_object->loadFieldsForObject(); } $text_value = ''; if ($value) { $row = new Libraries_Db_Mysql_Model($sys_object->table_name); $row->load($value); if (!$row->isEmpty()) { foreach ($sys_object->sys_field_list as $sys_field) { if ($sys_field->is_identification == 1 && array_key_exists($sys_field->field_name, $row->data)) { $text_value .= $row->{$sys_field->field_name} . ', '; } } } } echo trim($text_value, ', ');
public function __construct(array $data = array()) { parent::__construct("sectors", $data); }
?> </div> </div> <?php } ?> <form action="" method="post" class="frm-save"> <div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true"> <?php foreach ($roles as $role) { ?> <?php $where = array(); $where[] = array('AND', 'id_adm_user_role', '=', $role->id); $permission = new Libraries_Db_Mysql_Model('adm_user_role_permission'); $permissions = $permission->search($where); ?> <div class="panel panel-default" data-field-id="<?php echo $role->id; ?> "> <div class="panel-heading" role="tab" id="heading<?php echo $role->title; ?> "> <h4 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse<?php echo $role->title; ?>
public function __construct(array $data = array()) { parent::__construct('page_template', $data); }
public function __construct(array $data = array()) { parent::__construct('page_widget_instance', $data); }
public function save($sys_object_id, $row_id = '') { $sys_object = new Crud_Models_Object(); $sys_object->load(intval($sys_object_id)); $sys_object->loadFieldsForObject(); if ($sys_object->is_system == 1 && $this->user->role->safe_title != 'administrator') { $response = array(); $response['errors'] = array('Can\'t edit this object'); echo json_encode($response); return; } if (!$this->user->role->canExecuteAction('can_edit_' . $sys_object->table_name)) { $response = array(); $response['errors'] = array('Can\'t edit this object'); echo json_encode($response); return; } if ($sys_object->custom_crud_class != '' && new $sys_object->custom_crud_class() instanceof Crud_Interfaces_Crud) { echo call_user_func(array(new $sys_object->custom_crud_class(), 'save'), $sys_object_id, $row_id); } else { $object = new Libraries_Db_Mysql_Model($sys_object->table_name); if (!empty($row_id)) { $object->load(intval($row_id)); if (isset($_POST['last_modify']) && $_POST['last_modify'] != $object->last_modify) { $response = array(); $response['errors']['general'] = array('Object is already saved by another user!'); echo json_encode($response); return; } } $response = array(); $response['errors'] = array(); $response['message'] = ''; foreach ($sys_object->sys_field_list as $field) { if ($field->is_hidden == 1) { continue; } $field->loadValidators(); $field_value = isset($_POST[$field->field_name]) ? $_POST[$field->field_name] : null; if (!empty($field->validators)) { foreach ($field->validators as $validator) { $validator_response = call_user_func(array($validator->class, 'validate'), $field_value); if (!$validator_response) { $response['errors'][] = array('field' => $field->field_name, 'message' => call_user_func(array($validator->class, 'getFalseMessage'))); continue 2; // goto next field } } } $object->{$field->field_name} = $field_value; } unset($object->data['last_modify']); /* echo '<pre>'; print_r($_POST); echo '</pre>'; echo '<pre>'; print_r($object); echo '</pre>'; exit; */ if (empty($response['errors'])) { $response['message'] = 'Object is saved'; Libraries_Event::trigger('beforeCrudSave', $sys_object, $object); $object->save(); $response['id'] = $object->id; Libraries_Event::trigger('afterCrudSave', $sys_object, $object); } echo json_encode($response); } }
public function __construct(array $data = array()) { parent::__construct("projects", $data); }
public function __construct(array $data = array()) { parent::__construct("cities", $data); }
public function __construct(array $data = array()) { parent::__construct('sys_subform', $data); }
public function __construct(array $data = array()) { parent::__construct('sys_object', $data); }
<?php $table_name = $control_properties->table_name; $sys_object = new Crud_Models_Object(); $sys_object->load($table_name, 'table_name'); $sys_object->loadFieldsForObject(); $text_value = ''; if ($value) { $row = new Libraries_Db_Mysql_Model($sys_object->table_name); $row->load($value); foreach ($sys_object->sys_field_list as $sys_field) { if ($sys_field->is_identification == 1 && array_key_exists($sys_field->field_name, $row->data)) { $text_value .= $row->{$sys_field->field_name} . ', '; } } } ?> <div class="ui-widget"> <input type="hidden" id="<?php echo $field->field_name; ?> " name="<?php echo $field->field_name; ?> " value="<?php echo $value; ?> " class="form-control" tabindex="<?php echo $index; ?>
public function __construct(array $data = array()) { parent::__construct('adm_user', $data); }
public function __construct(array $data = array()) { parent::__construct('sys_validator', $data); }