/** * Return the number of option in category that logged user can see * * @param boolean $include_system_options Include system options * @return integer */ function countContactOptions($include_system_options = false) { if (is_null($this->count_user_ws_config_options)) { $this->count_user_ws_config_options = ContactConfigOptions::countOptionsByCategory($this, $include_system_options); } // if return $this->count_user_ws_config_options; }
function getConfigHandler() { if (!$this->config_handler) { $optionId = $this->getOptionId() ; $config_option = ContactConfigOptions::instance()->findById($optionId); $this->config_handler = $config_option->getConfigHandler(); } return $this->config_handler ; }
function quick_config_filter_activity(){ $this->setLayout('empty'); $submited_values = array_var($_POST, 'filter'); $members = array_var($_GET, 'members'); tpl_assign('members', array_var($_GET, 'members')); $member_name = lang('view'); $obj_member = Members::findById($members); if($obj_member){ $type_obj = ObjectTypes::findById($obj_member->getObjectTypeId()); if($obj_member){ $member_name = lang($type_obj->getName()); } } tpl_assign('dim_name', $member_name); $filters_default = ContactConfigOptions::getFilterActivity(); $filters = ContactConfigOptionValues::getFilterActivityMember($filters_default->getId(),$members); if(!$filters){ $filters = ContactConfigOptions::getFilterActivity(); $filter_value = $filters->getDefaultValue(); tpl_assign('id', $filters->getId()); }else{ $filter_value = $filters->getValue(); tpl_assign('id', ''); } $filters_def = explode(",",$filter_value); // if($filters_def[0] == 1){ // tpl_assign('checked_dimension_yes', 'checked="checked"'); // }else{ // tpl_assign('checked_dimension_no', 'checked="checked"'); // } if($filters_def[1] == 1){ tpl_assign('timeslot', 'checked="checked"'); }else{ tpl_assign('timeslot', ''); } tpl_assign('show', $filters_def[2]); // if($filters_def[3] == 1){ // tpl_assign('checked_view_downloads_yes', 'checked="checked"'); // }else{ // tpl_assign('checked_view_downloads_no', 'checked="checked"'); // } if(is_array($submited_values)) { $members = array_var($submited_values,"members"); $new_value = array_var($submited_values,"dimension",0) . "," . array_var($submited_values,"timeslot",0) . "," . array_var($submited_values,"show",10). "," . array_var($submited_values,"view_downloads",0); $filters_default = ContactConfigOptions::getFilterActivity(); if(array_var($submited_values,"apply_everywhere") == 1){ $filters_default->setDefaultValue($new_value); $filters_default->save(); $filters = ContactConfigOptionValues::getFilterActivityDelete($filters_default->getId()); }else{ $filters = ContactConfigOptionValues::getFilterActivityMember($filters_default->getId(),$members); // update cache if available if (GlobalCache::isAvailable()) { GlobalCache::delete('user_config_option_'.logged_user()->getId().'_'.$filters_default->getName()."_".$members); } if(!$filters){ $filter_opt = new ContactConfigOptionValue(); $filter_opt->setOptionId($filters_default->getId()); $filter_opt->setContactId(logged_user()->getId()); $filter_opt->setValue($new_value); $filter_opt->setMemberId($members); $filter_opt->save(); }else{ $filters->setValue($new_value); $filters->save(); } evt_add("user preference changed", array('name' => $filters_default->getName()."_".$members, 'value' => $new_value)); } ajx_current("reload"); } }
function getFilterActivity() { return ContactConfigOptions::findOne(array('conditions' => array('`name` = "filters_dashboard"'))); }
/** * Remove Getting Started widget from dashboard * */ function remove_getting_started_widget() { try { DB::beginWork(); $option = ContactConfigOptions::getByName('show getting started widget'); $option->setUserValue(0, logged_user()->getId()); $option->save(); DB::commit(); ajx_current('reload'); } catch (Exception $ex) { DB::rollback(); } }
'time_format_use_24': <?php echo json_encode(user_config_option('time_format_use_24')) ?>, 'show_unread_on_title': <?php echo user_config_option('show_unread_on_title') ? '1' : '0' ?>, 'email_polling': <?php echo json_encode(user_config_option('email_polling')) ?> , 'email_check_acc_errors': <?php echo json_encode(user_config_option('mail_account_err_check_interval')) ?> , 'date_format': <?php echo json_encode(user_config_option('date_format')) ?>, 'date_format_tip': <?php echo json_encode(date_format_tip(user_config_option('date_format'))) ?>, 'start_monday': <?php echo user_config_option('start_monday') ? '1' : '0' ?>, 'draft_autosave_timeout': <?php echo json_encode(user_config_option('draft_autosave_timeout')) ?>, 'drag_drop_prompt': <?php echo json_encode(user_config_option('drag_drop_prompt')) ?>, 'mail_drag_drop_prompt': <?php echo json_encode(user_config_option('mail_drag_drop_prompt')) ?>, 'access_member_after_add': <?php echo user_config_option('access_member_after_add') ? '1' : '0' ?>, 'access_member_after_add_remember': <?php echo user_config_option('access_member_after_add_remember') ? '1' : '0' ?>, 'listing_preferences': [] }; <?php $listing_preferences = ContactConfigOptions::getOptionsByCategoryName('listing preferences'); foreach ($listing_preferences as $lp) { if (str_starts_with($lp->getName(), 'lp_dim_')) { $dcode = str_replace('lp_dim_', '', str_replace('_show_as_column', '', $lp->getName())); $dim = Dimensions::findByCode($dcode); ?>og.preferences['listing_preferences']['<?php echo 'lp_dim_'.$dim->getId().'_show_as_column' ?>'] = <?php echo user_config_option($lp->getName()) ? '1' : '0'?>;<?php } } ?> og.breadcrumbs_skipped_dimensions = []; Ext.Ajax.timeout = <?php echo get_max_execution_time()*1100 // give a 10% margin to PHP's timeout ?>; og.musicSound = new Sound(); og.systemSound = new Sound(); var quickAdd = new og.QuickAdd({renderTo:'quickAdd'});
/** * Set value of specific user configuration option * * @param string $option_name * @param mixed $value * @param int $user_id User Id, if null logged user is taken * @return boolean */ function set_user_config_option($option_name, $value, $user_id = null ) { $config_option = ContactConfigOptions::getByName($option_name); if(!($config_option instanceof ContactConfigOption)) { return false; } $config_option->setContactValue($value, $user_id); // update cache if available if (GlobalCache::isAvailable()) { GlobalCache::update('user_config_option_'.$user_id.'_'.$option_name, $value); } return $config_option->save(); } // set_config_option
/** * This function will return paginated result. Result is an array where first element is * array of returned object and second populated pagination object that can be used for * obtaining and rendering pagination data using various helpers. * * Items and pagination array vars are indexed with 0 for items and 1 for pagination * because you can't use associative indexing with list() construct * * @access public * @param array $arguments Query argumens (@see find()) Limit and offset are ignored! * @param integer $items_per_page Number of items per page * @param integer $current_page Current page number * @return array */ function paginate($arguments = null, $items_per_page = 10, $current_page = 1) { if(isset($this) && instance_of($this, 'ContactConfigOptions')) { return parent::paginate($arguments, $items_per_page, $current_page); } else { return ContactConfigOptions::instance()->paginate($arguments, $items_per_page, $current_page); } // if } // paginate
function save(){ parent::save(); ContactConfigOptions::instance()->updateConfigOptionCache($this); }
function quick_config_filter_activity() { $this->setLayout('empty'); $submited_values = array_var($_POST, 'filter'); $members = array_var($_GET, 'members'); tpl_assign('members', array_var($_GET, 'members')); $filters_default = ContactConfigOptions::getFilterActivity(); $filters = ContactConfigOptionValues::getFilterActivityMember($filters_default->getId(), $members); if (!$filters) { $filters = ContactConfigOptions::getFilterActivity(); $filter_value = $filters->getDefaultValue(); tpl_assign('id', $filters->getId()); } else { $filter_value = $filters->getValue(); } $filters_def = explode(",", $filter_value); if ($filters_def[0] == 1) { tpl_assign('checked_dimension_yes', 'checked="checked"'); } else { tpl_assign('checked_dimension_no', 'checked="checked"'); } if ($filters_def[1] == 1) { tpl_assign('checked_timeslot_yes', 'checked="checked"'); } else { tpl_assign('checked_timeslot_no', 'checked="checked"'); } tpl_assign('show', $filters_def[2]); if ($filters_def[3] == 1) { tpl_assign('checked_view_downloads_yes', 'checked="checked"'); } else { tpl_assign('checked_view_downloads_no', 'checked="checked"'); } if (is_array($submited_values)) { $members = array_var($submited_values, "members"); $filters_default = ContactConfigOptions::getFilterActivity(); $filters = ContactConfigOptionValues::getFilterActivityMember($filters_default->getId(), $members); // update cache if available if (GlobalCache::isAvailable()) { GlobalCache::delete('user_config_option_' . logged_user()->getId() . '_' . $filters_default->getName() . "_" . $members); } $new_value = array_var($submited_values, "dimension") . "," . array_var($submited_values, "timeslot") . "," . array_var($submited_values, "show") . "," . array_var($submited_values, "view_downloads"); if (!$filters) { $filter_opt = new ContactConfigOptionValue(); $filter_opt->setOptionId($filters_default->getId()); $filter_opt->setContactId(logged_user()->getId()); $filter_opt->setValue($new_value); $filter_opt->setMemberId($members); $filter_opt->save(); } else { $filters->setValue($new_value); $filters->save(); } evt_add("user preference changed", array('name' => $filters_default->getName() . "_" . $members, 'value' => $new_value)); redirect_to("index.php?c=dashboard&a=main_dashboard"); } }
echo $genid; ?> eventAttachNotification" style="margin: 3px; float: left;" <?php echo array_var($file_data, 'attach_to_notification', user_config_option('attach_to_notification')) ? 'checked="checked"' : ''; ?> /> <label for="<?php echo $genid; ?> eventAttachNotification" class="checkbox"><?php echo lang('attach to notification'); ?> </label> <?php if (ContactConfigOptions::getByName('notify_myself_too') instanceof ContactConfigOption) { ?> <input type="checkbox" name="file[notify_myself_too]" id="<?php echo $genid; ?> notifyMyselfToo" style="margin: 3px 3px 3px 15px; float: left;" <?php echo user_config_option('notify_myself_too') ? 'checked="checked"' : ''; ?> /> <label for="<?php echo $genid; ?> notifyMyselfToo" class="checkbox"><?php echo lang('notify myself too');
/** * Return manager instance * * @access protected * @param void * @return ConfigOptions */ function manager() { if(!($this->manager instanceof ContactConfigOptions)) $this->manager = ContactConfigOptions::instance(); return $this->manager; } // manager
/** * Return manager instance * * @access protected * @param void * @return ConfigOptions */ function manager() { if (!$this->manager instanceof ContactConfigOptions) { $this->manager = ContactConfigOptions::instance(); } return $this->manager; }