Esempio n. 1
0
 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();
 }
Esempio n. 2
0
 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>';
     }
 }
Esempio n. 3
0
File: log.php Progetto: vukasins/ocp
 /**
  *
  * @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;
 }
Esempio n. 4
0
 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();
 }
Esempio n. 5
0
 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;
 }
Esempio n. 6
0
<?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, ', ');
Esempio n. 7
0
 public function __construct(array $data = array())
 {
     parent::__construct("sectors", $data);
 }
Esempio n. 8
0
    ?>
		</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;
    ?>
Esempio n. 9
0
 public function __construct(array $data = array())
 {
     parent::__construct('page_template', $data);
 }
Esempio n. 10
0
 public function __construct(array $data = array())
 {
     parent::__construct('page_widget_instance', $data);
 }
Esempio n. 11
0
 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);
     }
 }
Esempio n. 12
0
 public function __construct(array $data = array())
 {
     parent::__construct("projects", $data);
 }
Esempio n. 13
0
 public function __construct(array $data = array())
 {
     parent::__construct("cities", $data);
 }
Esempio n. 14
0
 public function __construct(array $data = array())
 {
     parent::__construct('sys_subform', $data);
 }
Esempio n. 15
0
 public function __construct(array $data = array())
 {
     parent::__construct('sys_object', $data);
 }
Esempio n. 16
0
<?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;
?>
Esempio n. 17
0
 public function __construct(array $data = array())
 {
     parent::__construct('adm_user', $data);
 }
Esempio n. 18
0
 public function __construct(array $data = array())
 {
     parent::__construct('sys_validator', $data);
 }