function displayOptions() { $this->processDisplayOptions(); $seedRelease = new Release(); $this->currentSearchFields['fixed_in_release']['input'] = '<select multiple="true" size="3" name="fixed_in_release[]">' . get_select_options_with_id($seedRelease->get_releases(false, "Active"), empty($this->filters['fixed_in_release']) ? '' : $this->filters['fixed_in_release']) . '</select>'; $this->currentSearchFields['found_in_release']['input'] = '<select multiple="true" size="3" name="found_in_release[]">' . get_select_options_with_id($seedRelease->get_releases(false, "Active"), empty($this->filters['found_in_release']) ? '' : $this->filters['found_in_release']) . '</select>'; $this->configureSS->assign('searchFields', $this->currentSearchFields); return $this->configureSS->fetch($this->configureTpl); }
public function testget_releases() { $release = new Release(); //test with default params $result = $release->get_releases(); $this->assertTrue(is_array($result)); //test with custom params $result = $release->get_releases(true, 'Hidden', 'name is not null'); $this->assertTrue(is_array($result)); }
/** * Create HTML form to enter a new record with the minimum necessary fields. * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc. * All Rights Reserved. * Contributor(s): ______________________________________.. */ function get_new_record_form() { if (!ACLController::checkAccess('Bugs', 'edit', true)) { return ''; } global $mod_strings; global $app_strings; global $app_list_strings; global $mod_strings; global $theme; global $current_user; $seedRelease = new Release(); $lbl_required_symbol = $app_strings['LBL_REQUIRED_SYMBOL']; $lbl_default_status = $app_list_strings['bug_status_default_key']; $lbl_subject = $mod_strings['LBL_SUBJECT']; $lbl_save_button_title = $app_strings['LBL_SAVE_BUTTON_TITLE']; $lbl_save_button_key = $app_strings['LBL_SAVE_BUTTON_KEY']; $lbl_save_button_label = $app_strings['LBL_SAVE_BUTTON_LABEL']; $user_id = $current_user->id; $priority_options = get_select_options_with_id($app_list_strings['bug_priority_dom'], $app_list_strings['bug_priority_default_key']); $release_options = get_select_options_with_id($seedRelease->get_releases(TRUE, "Active"), ""); $type_options = get_select_options_with_id($app_list_strings['bug_type_dom'], $app_list_strings['bug_type_default_key']); $the_form = get_left_form_header($mod_strings['LBL_NEW_FORM_TITLE']); $the_form .= <<<EOQ \t\t<form name="BugSave" onSubmit="return check_form('BugSave')" method="POST" action="index.php"> \t\t\t<input type="hidden" name="module" value="Bugs"> \t\t\t<input type="hidden" name="record" value=""> \t\t\t<input type="hidden" name="status" value="{$lbl_default_status}"> \t\t\t<input type="hidden" name="assigned_user_id" value='{$user_id}'> \t\t\t<input type="hidden" name="action" value="Save"> \t\t{$lbl_subject} <span class="required">{$lbl_required_symbol}</span><br> \t\t<p><input name='name' type="text" size='20' maxlength="255"value=""><br> \t\t{$mod_strings['LBL_TYPE']} <br> \t\t<select name='type' >{$type_options}</select><br> \t\t{$mod_strings['LBL_RELEASE']} <br> \t\t<select name='found_in_release' >{$release_options}</select><br> \t\t{$mod_strings['LBL_PRIORITY']} <br> \t\t<select name='priority' >{$priority_options}</select> </p><p>\t\t<input title="{$lbl_save_button_title}" accessKey="{$lbl_save_button_key}" class="button" type="submit" name="button" value=" {$lbl_save_button_label} " ></p> \t\t</form> EOQ; require_once 'include/javascript/javascript.php'; require_once 'modules/Bugs/Bug.php'; $javascript = new javascript(); $javascript->setFormName('BugSave'); $javascript->setSugarBean(new Bug()); $javascript->addRequiredFields(''); $the_form .= $javascript->getScript(); $the_form .= get_left_form_footer(); return $the_form; }
function get_field_list($value, $fields, $translate = true) { Log::info('Begin: SoapHelperWebServices->get_field_list'); $module_fields = array(); $link_fields = array(); if (!empty($value->field_defs)) { foreach ($value->field_defs as $var) { if (!empty($fields) && !in_array($var['name'], $fields)) { continue; } if (isset($var['source']) && ($var['source'] != 'db' && $var['source'] != 'non-db' && $var['source'] != 'custom_fields') && $var['name'] != 'email1' && $var['name'] != 'email2' && (!isset($var['type']) || $var['type'] != 'relate')) { continue; } if (isset($var['source']) && $var['source'] == 'non_db' && (isset($var['type']) && $var['type'] != 'link')) { continue; } $required = 0; $options_dom = array(); $options_ret = array(); // Apparently the only purpose of this check is to make sure we only return fields // when we've read a record. Otherwise this function is identical to get_module_field_list if (isset($var['required']) && ($var['required'] || $var['required'] == 'true')) { $required = 1; } if ($var['type'] == 'bool') { $var['options'] = 'checkbox_dom'; } if (isset($var['options'])) { $options_dom = translate($var['options'], $value->module_dir); if (!is_array($options_dom)) { $options_dom = array(); } foreach ($options_dom as $key => $oneOption) { $options_ret[$key] = $this->get_name_value($key, $oneOption); } } if (!empty($var['dbType']) && $var['type'] == 'bool') { $options_ret['type'] = $this->get_name_value('type', $var['dbType']); } $entry = array(); $entry['name'] = $var['name']; $entry['type'] = $var['type']; $entry['group'] = isset($var['group']) ? $var['group'] : ''; $entry['id_name'] = isset($var['id_name']) ? $var['id_name'] : ''; if ($var['type'] == 'link') { $entry['relationship'] = isset($var['relationship']) ? $var['relationship'] : ''; $entry['module'] = isset($var['module']) ? $var['module'] : ''; $entry['bean_name'] = isset($var['bean_name']) ? $var['bean_name'] : ''; $link_fields[$var['name']] = $entry; } else { if ($translate) { $entry['label'] = isset($var['vname']) ? translate($var['vname'], $value->module_dir) : $var['name']; } else { $entry['label'] = isset($var['vname']) ? $var['vname'] : $var['name']; } $entry['required'] = $required; $entry['options'] = $options_ret; $entry['related_module'] = isset($var['id_name']) && isset($var['module']) ? $var['module'] : ''; $entry['calculated'] = isset($var['calculated']) && $var['calculated'] ? true : false; if (isset($var['default'])) { $entry['default_value'] = $var['default']; } if ($var['type'] == 'parent' && isset($var['type_name'])) { $entry['type_name'] = $var['type_name']; } $module_fields[$var['name']] = $entry; } // else } //foreach } //if if ($value->module_dir == 'Meetings' || $value->module_dir == 'Calls') { if (isset($module_fields['duration_minutes']) && isset($GLOBALS['app_list_strings']['duration_intervals'])) { $options_dom = $GLOBALS['app_list_strings']['duration_intervals']; $options_ret = array(); foreach ($options_dom as $key => $oneOption) { $options_ret[$key] = $this->get_name_value($key, $oneOption); } $module_fields['duration_minutes']['options'] = $options_ret; } } if ($value->module_dir == 'Bugs') { require_once 'modules/Releases/Release.php'; $seedRelease = new Release(); $options = $seedRelease->get_releases(TRUE, "Active"); $options_ret = array(); foreach ($options as $name => $value) { $options_ret[] = array('name' => $name, 'value' => $value); } if (isset($module_fields['fixed_in_release'])) { $module_fields['fixed_in_release']['type'] = 'enum'; $module_fields['fixed_in_release']['options'] = $options_ret; } if (isset($module_fields['found_in_release'])) { $module_fields['found_in_release']['type'] = 'enum'; $module_fields['found_in_release']['options'] = $options_ret; } if (isset($module_fields['release'])) { $module_fields['release']['type'] = 'enum'; $module_fields['release']['options'] = $options_ret; } if (isset($module_fields['release_name'])) { $module_fields['release_name']['type'] = 'enum'; $module_fields['release_name']['options'] = $options_ret; } } if (isset($value->assigned_user_name) && isset($module_fields['assigned_user_id'])) { $module_fields['assigned_user_name'] = $module_fields['assigned_user_id']; $module_fields['assigned_user_name']['name'] = 'assigned_user_name'; } if (isset($value->assigned_name) && isset($module_fields['team_id'])) { $module_fields['team_name'] = $module_fields['team_id']; $module_fields['team_name']['name'] = 'team_name'; } if (isset($module_fields['modified_user_id'])) { $module_fields['modified_by_name'] = $module_fields['modified_user_id']; $module_fields['modified_by_name']['name'] = 'modified_by_name'; } if (isset($module_fields['created_by'])) { $module_fields['created_by_name'] = $module_fields['created_by']; $module_fields['created_by_name']['name'] = 'created_by_name'; } Log::info('End: SoapHelperWebServices->get_field_list'); return array('module_fields' => $module_fields, 'link_fields' => $link_fields); }
function new_get_field_list($value, $translate = true) { $module_fields = array(); $link_fields = array(); if (!empty($value->field_defs)) { foreach ($value->field_defs as $var) { if (isset($var['source']) && ($var['source'] != 'db' && $var['source'] != 'non-db' && $var['source'] != 'custom_fields') && $var['name'] != 'email1' && $var['name'] != 'email2' && (!isset($var['type']) || $var['type'] != 'relate')) { continue; } if ($var['source'] == 'non_db' && (isset($var['type']) && $var['type'] != 'link')) { continue; } $required = 0; $options_dom = array(); $options_ret = array(); // Apparently the only purpose of this check is to make sure we only return fields // when we've read a record. Otherwise this function is identical to get_module_field_list if (!empty($var['required'])) { $required = 1; } if (isset($var['options'])) { $options_dom = translate($var['options'], $value->module_dir); if (!is_array($options_dom)) { $options_dom = array(); } foreach ($options_dom as $key => $oneOption) { $options_ret[] = get_name_value($key, $oneOption); } } if (!empty($var['dbType']) && $var['type'] == 'bool') { $options_ret[] = get_name_value('type', $var['dbType']); } $entry = array(); $entry['name'] = $var['name']; $entry['type'] = $var['type']; if ($var['type'] == 'link') { $entry['relationship'] = isset($var['relationship']) ? $var['relationship'] : ''; $entry['module'] = isset($var['module']) ? $var['module'] : ''; $entry['bean_name'] = isset($var['bean_name']) ? $var['bean_name'] : ''; $link_fields[$var['name']] = $entry; } else { if ($translate) { $entry['label'] = isset($var['vname']) ? translate($var['vname'], $value->module_dir) : $var['name']; } else { $entry['label'] = isset($var['vname']) ? $var['vname'] : $var['name']; } $entry['required'] = $required; $entry['options'] = $options_ret; if (isset($var['default'])) { $entry['default_value'] = $var['default']; } $module_fields[$var['name']] = $entry; } // else } //foreach } //if if ($value->module_dir == 'Bugs') { $seedRelease = new Release(); $options = $seedRelease->get_releases(TRUE, "Active"); $options_ret = array(); foreach ($options as $name => $value) { $options_ret[] = array('name' => $name, 'value' => $value); } if (isset($module_fields['fixed_in_release'])) { $module_fields['fixed_in_release']['type'] = 'enum'; $module_fields['fixed_in_release']['options'] = $options_ret; } if (isset($module_fields['release'])) { $module_fields['release']['type'] = 'enum'; $module_fields['release']['options'] = $options_ret; } if (isset($module_fields['release_name'])) { $module_fields['release_name']['type'] = 'enum'; $module_fields['release_name']['options'] = $options_ret; } } if (isset($value->assigned_user_name) && isset($module_fields['assigned_user_id'])) { $module_fields['assigned_user_name'] = $module_fields['assigned_user_id']; $module_fields['assigned_user_name']['name'] = 'assigned_user_name'; } if (isset($module_fields['modified_user_id'])) { $module_fields['modified_by_name'] = $module_fields['modified_user_id']; $module_fields['modified_by_name']['name'] = 'modified_by_name'; } if (isset($module_fields['created_by'])) { $module_fields['created_by_name'] = $module_fields['created_by']; $module_fields['created_by_name']['name'] = 'created_by_name'; } return array('module_fields' => $module_fields, 'link_fields' => $link_fields); }
} $xtpl->assign("ASSIGNED_USER_OPTIONS", get_select_options_with_id(get_user_array(TRUE, "Active", $focus->assigned_user_id), $focus->assigned_user_id)); $xtpl->assign("ASSIGNED_USER_NAME", $focus->assigned_user_name); $xtpl->assign("ASSIGNED_USER_ID", $focus->assigned_user_id); $xtpl->assign("STATUS_OPTIONS", get_select_options_with_id($app_list_strings['bug_status_dom'], $focus->status)); if (!empty($focus->resolution)) { $xtpl->assign("RESOLUTION_OPTIONS", get_select_options_with_id($app_list_strings['bug_resolution_dom'], $focus->resolution)); } else { $xtpl->assign("RESOLUTION_OPTIONS", get_select_options_with_id($app_list_strings['bug_resolution_dom'], $app_list_strings['bug_resolution_default_key'])); } if (!empty($focus->type)) { $xtpl->assign("TYPE_OPTIONS", get_select_options_with_id($app_list_strings['bug_type_dom'], $focus->type)); } else { $xtpl->assign("TYPE_OPTIONS", get_select_options_with_id($app_list_strings['bug_type_dom'], $app_list_strings['bug_type_default_key'])); } $xtpl->assign("RELEASE_OPTIONS", get_select_options_with_id($seedRelease->get_releases(TRUE, "Active"), $focus->found_in_release)); $xtpl->assign("FIXED_IN_RELEASE_OPTIONS", get_select_options_with_id($seedRelease->get_releases(TRUE, "Active"), $focus->fixed_in_release)); if (empty($focus->priority)) { $xtpl->assign("PRIORITY_OPTIONS", get_select_options_with_id($app_list_strings['bug_priority_dom'], $app_list_strings['bug_priority_default_key'])); } else { $xtpl->assign("PRIORITY_OPTIONS", get_select_options_with_id($app_list_strings['bug_priority_dom'], $focus->priority)); } //Add Custom Fields require_once 'modules/DynamicFields/templates/Files/EditView.php'; /////////////////////////////////////////////////////////////////////////////// //// INBOUND EMAIL HANDLING /////////////////////////////////////////////////////////////////////////////// if (isset($_REQUEST['inbound_email_id'])) { require_once 'modules/Emails/Email.php'; $email = new Email(); $email->retrieve($_REQUEST['inbound_email_id']);
function getReleaseDropDown() { static $releases = null; if (!$releases) { $seedRelease = new Release(); $releases = $seedRelease->get_releases(TRUE, "Active"); } return $releases; }
/** * Retrieve field data for a provided SugarBean. * * @param SugarBean $value -- The bean to retrieve the field information for. * @return Array -- 'field'=> 'name' -- the name of the field * 'type' -- the data type of the field * 'label' -- the translation key for the label of the field * 'required' -- Is the field required? * 'options' -- Possible values for a drop down field */ function get_field_list(&$value) { $list = array(); if (!empty($value->field_defs)) { foreach ($value->field_defs as $var) { if (isset($var['source']) && $var['source'] != 'db' && (!isset($var['type']) || $var['type'] != 'relate')) { continue; } $required = 0; $options_dom = array(); $options_ret = array(); // Apparently the only purpose of this check is to make sure we only return fields // when we've read a record. Otherwise this function is identical to get_module_field_list if (isset($value->required_fields) && key_exists($var['name'], $value->required_fields)) { $required = 1; } if (isset($var['options'])) { $options_dom = translate($var['options'], $value->module_dir); if (!is_array($options_dom)) { $options_dom = array(); } foreach ($options_dom as $key => $oneOption) { $options_ret[] = get_name_value($key, $oneOption); } } $list[$var['name']] = array('name' => $var['name'], 'type' => $var['type'], 'label' => translate($var['vname'], $value->module_dir), 'required' => $required, 'options' => $options_ret); } } if ($value->module_dir == 'Bugs') { require_once 'modules/Releases/Release.php'; $seedRelease = new Release(); $options = $seedRelease->get_releases(TRUE, "Active"); $options_ret = array(); foreach ($options as $name => $value) { $options_ret[] = array('name' => $name, 'value' => $value); } if (isset($list['fixed_in_release'])) { $list['fixed_in_release']['type'] = 'enum'; $list['fixed_in_release']['options'] = $options_ret; } if (isset($list['release'])) { $list['release']['type'] = 'enum'; $list['release']['options'] = $options_ret; } if (isset($list['release_name'])) { $list['release_name']['type'] = 'enum'; $list['release_name']['options'] = $options_ret; } } if (isset($value->assigned_user_name) && isset($list['assigned_user_id'])) { $list['assigned_user_name'] = $list['assigned_user_id']; $list['assigned_user_name']['name'] = 'assigned_user_name'; } if (isset($list['modified_user_id'])) { $list['modified_by_name'] = $list['modified_user_id']; $list['modified_by_name']['name'] = 'modified_by_name'; } if (isset($list['created_by'])) { $list['created_by_name'] = $list['created_by']; $list['created_by_name']['name'] = 'created_by_name'; } return $list; }
public static function get_field_list($module, $translate = true) { $value = BeanFactory::getBean($module); // Получаем bean текущего модуля $list = array(); if (!empty($value->field_defs)) { foreach ($value->field_defs as $var) { if ($var['type'] != 'id' && $var['name'] != 'assigned_user_id' && $var['name'] != 'modified_user_id' && $var['name'] != 'account_id' && $var['name'] != 'created_by') { if (isset($var['source']) && ($var['source'] != 'db' && $var['source'] != 'custom_fields') && $var['name'] != 'email1' && $var['name'] != 'email2' && (!isset($var['type']) || $var['type'] != 'relate') && $var['type'] != 'id') { continue; } $required = 0; $options_dom = array(); $options_ret = array(); // Apparently the only purpose of this check is to make sure we only return fields // when we've read a record. Otherwise this function is identical to get_module_field_list if (!empty($var['required'])) { $required = 1; } if (isset($var['options'])) { $options_dom = translate($var['options'], $value->module_dir); if (!is_array($options_dom)) { $options_dom = array(); } foreach ($options_dom as $key => $oneOption) { $options_ret[] = self::get_name_value($key, $oneOption); } } if (!empty($var['dbType']) && $var['type'] == 'bool') { $options_ret[] = self::get_name_value('type', $var['dbType']); } $entry = array(); $entry['name'] = $var['name']; $entry['type'] = $var['type']; if ($translate) { $entry['label'] = isset($var['vname']) ? translate($var['vname'], $value->module_dir) : $var['name']; } else { $entry['label'] = isset($var['vname']) ? $var['vname'] : $var['name']; } $entry['required'] = $required; $entry['options'] = $options_ret; if (isset($var['default'])) { $entry['default_value'] = $var['default']; } $list[$var['name']] = $entry; } } //foreach } //if if ($value->module_dir == 'Bugs') { $seedRelease = new Release(); $options = $seedRelease->get_releases(TRUE, "Active"); $options_ret = array(); foreach ($options as $name => $value) { $options_ret[] = array('name' => $name, 'value' => $value); } if (isset($list['fixed_in_release'])) { $list['fixed_in_release']['type'] = 'enum'; $list['fixed_in_release']['options'] = $options_ret; } if (isset($list['release'])) { $list['release']['type'] = 'enum'; $list['release']['options'] = $options_ret; } if (isset($list['release_name'])) { $list['release_name']['type'] = 'enum'; $list['release_name']['options'] = $options_ret; } } if ($value->module_dir == 'Emails') { $fields = array('from_addr_name', 'reply_to_addr', 'to_addrs_names', 'cc_addrs_names', 'bcc_addrs_names'); foreach ($fields as $field) { $var = $value->field_defs[$field]; $required = 0; $entry = array(); $entry['name'] = $var['name']; $entry['type'] = $var['type']; if ($translate) { $entry['label'] = isset($var['vname']) ? translate($var['vname'], $value->module_dir) : $var['name']; } else { $entry['label'] = isset($var['vname']) ? $var['vname'] : $var['name']; } $entry['required'] = $required; $entry['options'] = array(); if (isset($var['default'])) { $entry['default_value'] = $var['default']; } $list[$var['name']] = $entry; } } if (isset($value->assigned_user_name) && isset($list['assigned_user_id'])) { $list['assigned_user_name'] = $list['assigned_user_id']; $list['assigned_user_name']['name'] = 'assigned_user_name'; } if (isset($list['modified_user_id'])) { $list['modified_by_name'] = $list['modified_user_id']; $list['modified_by_name']['name'] = 'modified_by_name'; } if (isset($list['created_by'])) { $list['created_by_name'] = $list['created_by']; $list['created_by_name']['name'] = 'created_by_name'; } return $list; }
global $theme; global $current_user; // focus_list is the means of passing data to a ListView. global $focus_list; // setup quicksearch require_once 'include/QuickSearchDefaults.php'; $qsd = new QuickSearchDefaults(); // clear the display columns back to default when clear query is called if (!empty($_REQUEST['clear_query']) && $_REQUEST['clear_query'] == 'true') { $current_user->setPreference('ListViewDisplayColumns', array(), 0, $currentModule); } $savedDisplayColumns = $current_user->getPreference('ListViewDisplayColumns', $currentModule); // get user defined display columns $json = getJSONobj(); $seedRelease = new Release(); $bug_release_dom = $seedRelease->get_releases(false, "Active"); $GLOBALS['app_list_strings']['bug_release_dom'] = $bug_release_dom; $seedBug = new Bug(); // seed bean $searchForm = new SearchForm('Bugs', $seedBug); // new searchform instance // setup listview smarty $lv = new ListViewSmarty(); $displayColumns = array(); // check $_REQUEST if new display columns from post if (!empty($_REQUEST['displayColumns'])) { foreach (explode('|', $_REQUEST['displayColumns']) as $num => $col) { if (!empty($listViewDefs['Bugs'][$col])) { $displayColumns[$col] = $listViewDefs['Bugs'][$col]; } }