Revize 2061
Přidáno uživatelem David Raška před asi 11 roky(ů)
freenetis/branches/1.1/application/controllers/monitoring.php | ||
---|---|---|
* @param type $priority
|
||
* @param string $group_by
|
||
*/
|
||
public function show_all($priority = 1, $group_by = 'all')
|
||
public function show_all($priority = 1, $group_by = '')
|
||
{
|
||
// access control
|
||
if (!Settings::get('monitoring_enabled') ||
|
||
... | ... | |
'address_point_id' => __('Address point')
|
||
);
|
||
|
||
$user_model = new User_Model($this->user_id);
|
||
$group_by_setting = $user_model->get_user_setting(User_Model::SETTINGS_MONITORING_ORDER_BY);
|
||
|
||
// empty value in users settings
|
||
if (!empty($group_by_setting))
|
||
{
|
||
// use database settings
|
||
if (empty($group_by))
|
||
{
|
||
$group_by = $group_by_setting;
|
||
}
|
||
// update database settings
|
||
else
|
||
{
|
||
$user_model->set_user_setting(User_Model::SETTINGS_MONITORING_ORDER_BY, $group_by);
|
||
}
|
||
}
|
||
// empty value in users settings
|
||
else
|
||
{
|
||
$group_by = 'all';
|
||
$user_model->set_user_setting(User_Model::SETTINGS_MONITORING_ORDER_BY, $group_by);
|
||
}
|
||
|
||
$form->dropdown('group_by')
|
||
->options($group_by_options_values)
|
||
->selected($group_by);
|
freenetis/branches/1.1/application/models/user.php | ||
---|---|---|
* @property integer $type
|
||
* @property string $comment
|
||
* @property string $application_password
|
||
* @property string $settings
|
||
* @property ORM_Iterator $jobs
|
||
* @property ORM_Iterator $devices
|
||
* @property ORM_Iterator $logs
|
||
... | ... | |
'member_name' => 'm.name',
|
||
'email' => 'c.value'
|
||
);
|
||
|
||
/** User settings constants */
|
||
const SETTINGS_MONITORING_ORDER_BY = 'monitoring_group_by';
|
||
|
||
/**
|
||
* Returns all users
|
||
... | ... | |
$this->get_full_name();
|
||
}
|
||
|
||
/**
|
||
* Get user settings
|
||
*
|
||
* @param string $key Key
|
||
* @return mixed Value
|
||
*/
|
||
public function get_user_setting($key)
|
||
{
|
||
$json_settings = $this->settings;
|
||
|
||
// return empty value on no settings
|
||
if (empty($json_settings))
|
||
{
|
||
return '';
|
||
}
|
||
|
||
// decode json
|
||
$settings = json_decode($json_settings, TRUE);
|
||
|
||
// return empty value on no settings
|
||
if (empty($settings))
|
||
{
|
||
return '';
|
||
}
|
||
// return value
|
||
else if (isset($settings[$key]))
|
||
{
|
||
return $settings[$key];
|
||
}
|
||
// no value found
|
||
else
|
||
{
|
||
return '';
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Sets user settings
|
||
*
|
||
* @param string $key Key
|
||
* @param mixed $value Value
|
||
*/
|
||
public function set_user_setting($key, $value)
|
||
{
|
||
try
|
||
{
|
||
$this->transaction_start();
|
||
|
||
$json_settings = $this->settings;
|
||
|
||
// decode json
|
||
$settings = json_decode($json_settings, TRUE);
|
||
|
||
// add new settings
|
||
$settings[$key] = $value;
|
||
|
||
// encode settings to json
|
||
$json_settings = json_encode($settings);
|
||
|
||
$this->settings = $json_settings;
|
||
|
||
// save
|
||
$this->save_throwable();
|
||
|
||
$this->transaction_commit();
|
||
}
|
||
catch (Exception $e)
|
||
{
|
||
$this->transaction_rollback();
|
||
}
|
||
|
||
}
|
||
}
|
Také k dispozici: Unified diff
Nove:
- Ukladani vybraneho seskupovani u monitoringu do uzivatelskych nastaveni