Example #1
0
	public function install() {
		
		$fields = array(
			array('name' => _M('Project Name'), 'type'=>'text', 'required'=>true, 'param'=>'64', 'extra'=>false, 'visible'=>true,'display_callback'=>array('Tests_BugtrackCommon', 'display_bugtrack')),	
			array('name' => _M('Company Name'), 'type'=>'select', 'required'=>true, 'param'=>array('company'=>'Company Name'), 'extra'=>false, 'visible'=>true),
			array('name' => _M('Due Date'), 'type'=>'date', 'required'=>true, 'param'=>64, 'extra'=>false, 'visible'=>true),
			array('name' => _M('Status'), 'type'=>'commondata', 'required'=>true, 'param'=>'Bugtrack_Status', 'extra'=>false,'visible'=>true),
			array('name' => _M('Description'), 'type'=>'long text', 'required'=>false, 'param'=>'64', 'extra'=>false)
		);
		Utils_RecordBrowserCommon::install_new_recordset('bugtrack', $fields);
		Utils_RecordBrowserCommon::new_filter('bugtrack', 'Company Name');
		Utils_RecordBrowserCommon::set_quickjump('bugtrack', 'Project Name');
		Utils_RecordBrowserCommon::set_favorites('bugtrack', true);
		Utils_RecordBrowserCommon::set_recent('bugtrack', 15);
		Utils_RecordBrowserCommon::set_caption('bugtrack', _M('Bugtrack'));
		Utils_RecordBrowserCommon::set_icon('bugtrack', Base_ThemeCommon::get_template_filename('Tests/Bugtrack', 'icon.png'));
		
// ************ addons ************** //
		Utils_AttachmentCommon::new_addon('bugtrack');
		Utils_RecordBrowserCommon::new_addon('company', 'Tests/Bugtrack', 'company_bugtrack_addon', 'Bugtrack');

// ************ other ************** //	
		Utils_CommonDataCommon::new_array('Bugtrack_Status',array('new'=>_M('New'),'inprog'=>_M('In Progress'),'cl'=>_M('Closed')),true,true);

		Utils_RecordBrowserCommon::add_access('bugtrack', 'view', 'ACCESS:employee');
		Utils_RecordBrowserCommon::add_access('bugtrack', 'add', 'ACCESS:employee');
		Utils_RecordBrowserCommon::add_access('bugtrack', 'edit', 'ACCESS:employee');
		Utils_RecordBrowserCommon::add_access('bugtrack', 'delete', array('ACCESS:employee', 'ACCESS:manager'));

		return true;
	}
Example #2
0
 public function install()
 {
     Utils_CommonDataCommon::new_array('CRM', array(), true, true);
     Utils_CommonDataCommon::new_array('CRM/Priority', array(0 => _M('Low'), 1 => _M('Medium'), 2 => _M('High')), true, true);
     Utils_CommonDataCommon::new_array('CRM/Access', array(0 => _M('Public'), 1 => _M('Public, Read-Only'), 2 => _M('Private')), true, true);
     Utils_CommonDataCommon::new_array('CRM/Status', array(_M('Open'), _M('In Progress'), _M('On Hold'), _M('Closed'), _M('Canceled')), true, true);
     return true;
 }
Example #3
0
 public function install()
 {
     Base_ThemeCommon::install_default_theme($this->get_type());
     Utils_CommonDataCommon::new_id('Base_Notify/Timeout', true);
     Utils_CommonDataCommon::new_array('Base_Notify/Timeout', array(-1 => _M('Disable Notification'), 0 => _M('Manually')), true, true);
     Utils_CommonDataCommon::new_array('Base_Notify/Timeout', array(10000 => _M('10 seconds'), 30000 => _M('30 seconds'), 60000 => _M('1 minute')));
     return true;
 }
Example #4
0
 public function install()
 {
     Base_ThemeCommon::install_default_theme(CRM_ContactsInstall::module_name());
     Utils_RecordBrowserCommon::register_datatype('crm_company', 'CRM_ContactsCommon', 'crm_company_datatype');
     Utils_RecordBrowserCommon::register_datatype('crm_contact', 'CRM_ContactsCommon', 'crm_contact_datatype');
     Utils_RecordBrowserCommon::register_datatype('crm_company_contact', 'CRM_ContactsCommon', 'crm_company_contact_datatype');
     Utils_RecordBrowserCommon::register_datatype('email', 'CRM_ContactsCommon', 'email_datatype');
     ModuleManager::include_common('CRM_Contacts', 0);
     // ************ companies ************** //
     $fields = array(array('name' => _M('Company Name'), 'type' => 'text', 'required' => true, 'param' => '128', 'extra' => false, 'visible' => true, 'display_callback' => array('Utils_RecordBrowserCommon', 'display_linked_field_label'), 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_cname')), array('name' => _M('Short Name'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => false), array('name' => _M('Phone'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_phone')), array('name' => _M('Fax'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Email'), 'type' => 'email', 'required' => false, 'param' => array('unique' => true), 'extra' => true, 'visible' => false), array('name' => _M('Web address'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_webaddress'), 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_webaddress')), array('name' => _M('Group'), 'type' => 'multiselect', 'required' => false, 'visible' => true, 'param' => Utils_RecordBrowserCommon::multiselect_from_common('Companies_Groups'), 'extra' => false, 'filter' => true), array('name' => _M('Permission'), 'type' => 'commondata', 'required' => true, 'param' => array('order_by_key' => true, 'CRM/Access'), 'extra' => true), array('name' => _M('Address 1'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('Address 2'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('City'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('Country'), 'type' => 'commondata', 'required' => true, 'param' => array('Countries'), 'extra' => true, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_country')), array('name' => _M('Zone'), 'type' => 'commondata', 'required' => false, 'param' => array('Countries', 'Country'), 'extra' => true, 'visible' => true, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_zone')), array('name' => _M('Postal Code'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Tax ID'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_tax_id')));
     Utils_RecordBrowserCommon::install_new_recordset('company', $fields);
     // ************ contacts ************** //
     $fields = array(array('name' => _M('Last Name'), 'type' => 'text', 'required' => true, 'param' => '64', 'extra' => false, 'visible' => true, 'display_callback' => array('Utils_RecordBrowserCommon', 'display_linked_field_label')), array('name' => _M('First Name'), 'type' => 'text', 'required' => true, 'param' => '64', 'extra' => false, 'visible' => true, 'display_callback' => array('Utils_RecordBrowserCommon', 'display_linked_field_label')), array('name' => _M('Company Name'), 'type' => 'crm_company', 'param' => array('field_type' => 'select'), 'required' => false, 'extra' => false, 'visible' => true, 'filter' => true), array('name' => _M('Related Companies'), 'type' => 'crm_company', 'param' => array('field_type' => 'multiselect'), 'required' => false, 'extra' => true, 'visible' => false, 'filter' => true), array('name' => _M('Group'), 'type' => 'multiselect', 'required' => false, 'param' => Utils_RecordBrowserCommon::multiselect_from_common('Contacts_Groups'), 'extra' => true, 'filter' => true), array('name' => _M('Title'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Work Phone'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_phone')), array('name' => _M('Mobile Phone'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_phone')), array('name' => _M('Fax'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Email'), 'type' => 'email', 'required' => false, 'param' => array('unique' => true), 'extra' => false, 'visible' => false), array('name' => _M('Web address'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_webaddress'), 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_webaddress')), array('name' => _M('Address 1'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('Address 2'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('City'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'visible' => true, 'display_callback' => array('CRM_ContactsCommon', 'maplink')), array('name' => _M('Country'), 'type' => 'commondata', 'required' => true, 'param' => array('Countries'), 'extra' => true, 'visible' => false, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_country')), array('name' => _M('Zone'), 'type' => 'commondata', 'required' => false, 'param' => array('Countries', 'Country'), 'extra' => true, 'visible' => true, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_zone')), array('name' => _M('Postal Code'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Permission'), 'type' => 'commondata', 'required' => true, 'param' => array('order_by_key' => true, 'CRM/Access'), 'extra' => true), array('name' => _M('Details'), 'type' => 'page_split'), array('name' => _M('Home Phone'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'display_phone')), array('name' => _M('Home Address 1'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'home_maplink')), array('name' => _M('Home Address 2'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'home_maplink')), array('name' => _M('Home City'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true, 'display_callback' => array('CRM_ContactsCommon', 'home_maplink')), array('name' => _M('Home Country'), 'type' => 'commondata', 'required' => false, 'param' => array('Countries'), 'extra' => true, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_country')), array('name' => _M('Home Zone'), 'type' => 'commondata', 'required' => false, 'param' => array('Countries', 'Home Country'), 'extra' => true, 'QFfield_callback' => array('Data_CountriesCommon', 'QFfield_zone')), array('name' => _M('Home Postal Code'), 'type' => 'text', 'required' => false, 'param' => '64', 'extra' => true), array('name' => _M('Birth Date'), 'type' => 'date', 'required' => false, 'param' => 64, 'extra' => true), array('name' => _M('Login Panel'), 'type' => 'page_split', 'param' => 1), array('name' => _M('Login'), 'type' => 'integer', 'required' => false, 'param' => '64', 'extra' => false, 'display_callback' => array('CRM_ContactsCommon', 'display_login'), 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_login'), 'style' => ''), array('name' => _M('Username'), 'type' => 'calculated', 'required' => false, 'extra' => false, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_username')), array('name' => _M('Set Password'), 'type' => 'calculated', 'required' => false, 'extra' => false, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_password')), array('name' => _M('Confirm Password'), 'type' => 'calculated', 'required' => false, 'extra' => false, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_repassword')), array('name' => _M('Admin'), 'type' => 'calculated', 'required' => false, 'extra' => false, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_admin'), 'display_callback' => array('CRM_ContactsCommon', 'display_admin')), array('name' => _M('Access'), 'type' => 'multiselect', 'required' => false, 'param' => Utils_RecordBrowserCommon::multiselect_from_common('Contacts/Access'), 'extra' => false, 'QFfield_callback' => array('CRM_ContactsCommon', 'QFfield_access')));
     Utils_RecordBrowserCommon::install_new_recordset('contact', $fields);
     DB::CreateIndex('contact_data_1__f_login_idx', 'contact_data_1', 'f_login,active');
     // ************ company settings ************** //
     Utils_RecordBrowserCommon::register_processing_callback('company', array('CRM_ContactsCommon', 'submit_company'));
     Utils_RecordBrowserCommon::set_quickjump('company', 'Company Name');
     Utils_RecordBrowserCommon::set_favorites('company', true);
     Utils_RecordBrowserCommon::set_recent('company', 15);
     Utils_RecordBrowserCommon::set_caption('company', _M('Companies'));
     Utils_RecordBrowserCommon::set_icon('company', Base_ThemeCommon::get_template_filename(CRM_ContactsInstall::module_name(), 'companies.png'));
     Utils_RecordBrowserCommon::set_description_callback('company', array('CRM_ContactsCommon', 'company_format_default'));
     Utils_RecordBrowserCommon::enable_watchdog('company', array('CRM_ContactsCommon', 'company_watchdog_label'));
     Utils_RecordBrowserCommon::set_clipboard_pattern('company', "%{{company_name}<BR>}\n%{{address_1}<BR>}\n%{{address_2}<BR>}\n%{%{{city} }%{{zone} }{postal_code}<BR>}\n%{{country}<BR>}\n%{tel. {phone}<BR>}\n%{fax. {fax}<BR>}\n%{{web_address}<BR>}");
     // ************ contacts settings ************** //
     Utils_RecordBrowserCommon::set_tpl('contact', Base_ThemeCommon::get_template_filename(CRM_ContactsInstall::module_name(), 'Contact'));
     Utils_RecordBrowserCommon::register_processing_callback('contact', array('CRM_ContactsCommon', 'submit_contact'));
     Utils_RecordBrowserCommon::set_quickjump('contact', 'Last Name');
     Utils_RecordBrowserCommon::set_favorites('contact', true);
     Utils_RecordBrowserCommon::set_recent('contact', 15);
     Utils_RecordBrowserCommon::set_caption('contact', _M('Contacts'));
     Utils_RecordBrowserCommon::set_icon('contact', Base_ThemeCommon::get_template_filename(CRM_ContactsInstall::module_name(), 'icon.png'));
     Utils_RecordBrowserCommon::set_description_callback('contact', array('CRM_ContactsCommon', 'contact_format_default'));
     Utils_RecordBrowserCommon::enable_watchdog('contact', array('CRM_ContactsCommon', 'contact_watchdog_label'));
     Utils_RecordBrowserCommon::set_clipboard_pattern('contact', "%{{first_name} {last_name}<BR>}\n%{{title}<BR>}\n%{{company_name}<BR>}\n%{{address_1}<BR>}\n%{{address_2}<BR>}\n%{%{{city} }%{{zone} }{postal_code}<BR>}\n%{{country}<BR>}\n%{tel. {work_phone}<BR>}\n%{{email}<BR>}");
     // ************ addons ************** //
     Utils_RecordBrowserCommon::new_addon('company', CRM_ContactsInstall::module_name(), 'company_addon', _M('Contacts'));
     Utils_AttachmentCommon::new_addon('company');
     Utils_AttachmentCommon::new_addon('contact');
     // ************ other ************** //
     Utils_CommonDataCommon::new_array('Companies_Groups', array('customer' => _M('Customer'), 'vendor' => _M('Vendor'), 'other' => _M('Other'), 'manager' => _M('Manager')), true, true);
     Utils_CommonDataCommon::new_array('Contacts_Groups', array('office' => _M('Office Staff'), 'field' => _M('Field Staff'), 'custm' => _M('Customer')), true, true);
     Utils_CommonDataCommon::new_array('Contacts/Access', array('manager' => _M('Manager')), true, true);
     Utils_BBCodeCommon::new_bbcode('contact', 'CRM_ContactsCommon', 'contact_bbcode');
     Utils_BBCodeCommon::new_bbcode('company', 'CRM_ContactsCommon', 'company_bbcode');
     Utils_RecordBrowserCommon::set_search('company', 1, 2);
     Utils_RecordBrowserCommon::set_search('contact', 1, 2);
     Base_AclCommon::add_clearance_callback(array('CRM_ContactsCommon', 'crm_clearance'));
     Utils_CommonDataCommon::extend_array('Contacts/Access', array('employee' => _M('Employee')));
     self::install_permissions();
     return true;
 }
Example #5
0
    public function install()
    {
        $ret = true;
        DB::Execute('DROP TABLE IF EXISTS base_notify');
        DB::CreateTable('base_notify', '
			token C(32) NOTNULL PRIMARY KEY,
			cache X,
			last_refresh I8,
			single_cache_uid I,
			telegram I1 DEFAULT 0', array('constraints' => ', FOREIGN KEY (single_cache_uid) REFERENCES user_login(id)'));
        if (!$ret) {
            print 'Unable to create table base_notify.<br>';
            return false;
        }
        Base_ThemeCommon::install_default_theme($this->get_type());
        Utils_CommonDataCommon::new_id('Base_Notify/Timeout', true);
        Utils_CommonDataCommon::new_array('Base_Notify/Timeout', array(-1 => _M('Disable Notification'), 0 => _M('Manually')), true, true);
        Utils_CommonDataCommon::new_array('Base_Notify/Timeout', array(10000 => _M('10 seconds'), 30000 => _M('30 seconds'), 60000 => _M('1 minute')));
        return $ret;
    }
Example #6
0
 public function install()
 {
     $calling_codes = array('US' => '+1', 'CA' => '+1', 'BS' => '+1242', 'BB' => '+1246', 'AI' => '+1264', 'AG' => '+1268', 'VG' => '+1284', 'VI' => '+1340', 'KY' => '+1345', 'BM' => '+1441', 'GD' => '+1473', 'TC' => '+1649', 'MS' => '+1664', 'MP' => '+1670', 'GU' => '+1671', 'AS' => '+1684', 'LC' => '+1758', 'DM' => '+1767', 'VC' => '+1784', 'PR' => '+1787', 'DO' => '+1809', 'TT' => '+1868', 'KN' => '+1869', 'JM' => '+1876', 'EG' => '+20', 'MA' => '+212', 'EH' => '+212', 'DZ' => '+213', 'TN' => '+216', 'LY' => '+218', 'GM' => '+220', 'SN' => '+221', 'MR' => '+222', 'ML' => '+223', 'GN' => '+224', 'CI' => '+225', 'BF' => '+226', 'NE' => '+227', 'TG' => '+228', 'BJ' => '+229', 'MU' => '+230', 'LR' => '+231', 'SL' => '+232', 'GH' => '+233', 'NG' => '+234', 'TD' => '+235', 'CF' => '+236', 'CM' => '+237', 'CV' => '+238', 'ST' => '+239', 'GQ' => '+240', 'GA' => '+241', 'CG' => '+242', 'CD' => '+243', 'AO' => '+244', 'GW' => '+245', 'IO' => '+246', 'AC' => '+247', 'SC' => '+248', 'SD' => '+249', 'RW' => '+250', 'ET' => '+251', 'SO' => '+252', 'QS' => '+252', 'DJ' => '+253', 'KE' => '+254', 'TZ' => '+255', 'UG' => '+256', 'BI' => '+257', 'MZ' => '+258', 'ZM' => '+260', 'MG' => '+261', 'RE' => '+262', 'YT' => '+262', 'ZW' => '+263', 'NA' => '+264', 'MW' => '+265', 'LS' => '+266', 'BW' => '+267', 'SZ' => '+268', 'KM' => '+269', 'ZA' => '+27', 'SH' => '+290', 'TA' => '+290', 'ER' => '+291', 'AW' => '+297', 'FO' => '+298', 'GL' => '+299', 'GR' => '+30', 'NL' => '+31', 'BE' => '+32', 'FR' => '+33', 'ES' => '+34', 'GI' => '+350', 'PT' => '+351', 'LU' => '+352', 'IE' => '+353', 'IS' => '+354', 'AL' => '+355', 'MT' => '+356', 'CY' => '+357', 'FI' => '+358', 'AX' => '+358', 'BG' => '+359', 'HU' => '+36', 'LT' => '+370', 'LV' => '+371', 'EE' => '+372', 'MD' => '+373', 'AM' => '+374', 'BY' => '+375', 'AD' => '+376', 'MC' => '+377', 'SM' => '+378', 'UA' => '+380', 'RS' => '+381', 'ME' => '+382', 'HR' => '+385', 'SI' => '+386', 'BA' => '+387', 'EU' => '+388', 'MK' => '+389', 'IT' => '+39', 'VA' => '+39', 'RO' => '+40', 'CH' => '+41', 'CZ' => '+420', 'SK' => '+421', 'LI' => '+423', 'AT' => '+43', 'GB' => '+44', 'GG' => '+44', 'IM' => '+44', 'JE' => '+44', 'DK' => '+45', 'SE' => '+46', 'NO' => '+47', 'SJ' => '+47', 'PL' => '+48', 'DE' => '+49', 'FK' => '+500', 'BZ' => '+501', 'GT' => '+502', 'SV' => '+503', 'HN' => '+504', 'NI' => '+505', 'CR' => '+506', 'PA' => '+507', 'PM' => '+508', 'HT' => '+509', 'PE' => '+51', 'MX' => '+52', 'CU' => '+53', 'AR' => '+54', 'BR' => '+55', 'CL' => '+56', 'CO' => '+57', 'VE' => '+58', 'GP' => '+590', 'BL' => '+590', 'MF' => '+590', 'BO' => '+591', 'GY' => '+592', 'EC' => '+593', 'GF' => '+594', 'PY' => '+595', 'MQ' => '+596', 'SR' => '+597', 'UY' => '+598', 'AN' => '+599', 'MY' => '+60', 'AU' => '+61', 'CX' => '+61', 'CC' => '+61', 'ID' => '+62', 'PH' => '+63', 'NZ' => '+64', 'SG' => '+65', 'TH' => '+66', 'TL' => '+670', 'NF' => '+672', 'AQ' => '+672', 'BN' => '+673', 'NR' => '+674', 'PG' => '+675', 'TO' => '+676', 'SB' => '+677', 'VU' => '+678', 'FJ' => '+679', 'PW' => '+680', 'WF' => '+681', 'CK' => '+682', 'NU' => '+683', 'WS' => '+685', 'KI' => '+686', 'NC' => '+687', 'TV' => '+688', 'PF' => '+689', 'TK' => '+690', 'FM' => '+691', 'MH' => '+692', 'RU' => '+7', 'KZ' => '+7', 'XT' => '+800', 'XS' => '+808', 'JP' => '+81', 'KR' => '+82', 'VN' => '+84', 'KP' => '+850', 'HK' => '+852', 'MO' => '+853', 'KH' => '+855', 'LA' => '+856', 'CN' => '+86', 'XN' => '+870', 'PN' => '+872', 'XP' => '+878', 'BD' => '+880', 'XG' => '+881', 'XV' => '+882', 'XL' => '+883', 'TW' => '+886', 'XD' => '+888', 'TR' => '+90', 'QY' => '+90', 'IN' => '+91', 'PK' => '+92', 'AF' => '+93', 'LK' => '+94', 'MM' => '+95', 'MV' => '+960', 'LB' => '+961', 'JO' => '+962', 'SY' => '+963', 'IQ' => '+964', 'KW' => '+965', 'SA' => '+966', 'YE' => '+967', 'OM' => '+968', 'PS' => '+970', 'AE' => '+971', 'IL' => '+972', 'BH' => '+973', 'QA' => '+974', 'BT' => '+975', 'MN' => '+976', 'NP' => '+977', 'XR' => '+979', 'IR' => '+98', 'XC' => '+991', 'TJ' => '+992', 'TM' => '+993', 'AZ' => '+994', 'GE' => '+995', 'KG' => '+996', 'UZ' => '+998');
     Utils_CommonDataCommon::new_id('Calling_Codes', true);
     Utils_CommonDataCommon::new_array('Calling_Codes', $calling_codes);
     $countries = array("AF" => _M('Afghanistan'), "AL" => _M('Albania'), "DZ" => _M('Algeria'), "AS" => _M('American Samoa'), "AD" => _M('Andorra'), "AO" => _M('Angola'), "AI" => _M('Anguilla'), "AG" => _M('Antigua & Barbuda'), "AR" => _M('Argentina'), "AA" => _M('Armenia'), "AW" => _M('Aruba'), "AU" => _M('Australia'), "AT" => _M('Austria'), "AZ" => _M('Azerbaijan'), "BS" => _M('Bahamas'), "BH" => _M('Bahrain'), "BD" => _M('Bangladesh'), "BB" => _M('Barbados'), "BY" => _M('Belarus'), "BE" => _M('Belgium'), "BZ" => _M('Belize'), "BJ" => _M('Benin'), "BM" => _M('Bermuda'), "BT" => _M('Bhutan'), "BO" => _M('Bolivia'), "BL" => _M('Bonaire'), "BA" => _M('Bosnia & Herzegovina'), "BW" => _M('Botswana'), "BR" => _M('Brazil'), "BC" => _M('British Indian Ocean Territory'), "BN" => _M('Brunei'), "BG" => _M('Bulgaria'), "BF" => _M('Burkina Faso'), "BI" => _M('Burundi'), "KH" => _M('Cambodia'), "CM" => _M('Cameroon'), "CA" => _M('Canada'), "IC" => _M('Canary Islands'), "CV" => _M('Cape Verde'), "KY" => _M('Cayman Islands'), "CF" => _M('Central African Republic'), "TD" => _M('Chad'), "CD" => _M('Channel Islands'), "CL" => _M('Chile'), "CN" => _M('China'), "CI" => _M('Christmas Island'), "CS" => _M('Cocos Islands'), "CO" => _M('Colombia'), "CC" => _M('Comoros'), "CG" => _M('Congo'), "CK" => _M('Cook Islands'), "CR" => _M('Costa Rica'), "CT" => _M('Cote D\'Ivoire'), "HR" => _M('Croatia'), "CU" => _M('Cuba'), "CB" => _M('Curacao'), "CY" => _M('Cyprus'), "CZ" => _M('Czech Republic'), "DK" => _M('Denmark'), "DJ" => _M('Djibouti'), "DM" => _M('Dominica'), "DO" => _M('Dominican Republic'), "TM" => _M('East Timor'), "EC" => _M('Ecuador'), "EG" => _M('Egypt'), "SV" => _M('El Salvador'), "GQ" => _M('Equatorial Guinea'), "ER" => _M('Eritrea'), "EE" => _M('Estonia'), "ET" => _M('Ethiopia'), "FA" => _M('Falkland Islands'), "FO" => _M('Faroe Islands'), "FJ" => _M('Fiji'), "FI" => _M('Finland'), "FR" => _M('France'), "GF" => _M('French Guiana'), "PF" => _M('French Polynesia'), "FS" => _M('French Southern Territories'), "GA" => _M('Gabon'), "GM" => _M('Gambia'), "GE" => _M('Georgia'), "DE" => _M('Germany'), "GH" => _M('Ghana'), "GI" => _M('Gibraltar'), "GR" => _M('Greece'), "GL" => _M('Greenland'), "GD" => _M('Grenada'), "GP" => _M('Guadeloupe'), "GU" => _M('Guam'), "GT" => _M('Guatemala'), "GN" => _M('Guinea'), "GY" => _M('Guyana'), "HT" => _M('Haiti'), "HW" => _M('Hawaii'), "HN" => _M('Honduras'), "HK" => _M('Hong Kong'), "HU" => _M('Hungary'), "IS" => _M('Iceland'), "IN" => _M('India'), "ID" => _M('Indonesia'), "IA" => _M('Iran'), "IQ" => _M('Iraq'), "IR" => _M('Ireland'), "IM" => _M('Isle of Man'), "IL" => _M('Israel'), "IT" => _M('Italy'), "JM" => _M('Jamaica'), "JP" => _M('Japan'), "JO" => _M('Jordan'), "KZ" => _M('Kazakhstan'), "KE" => _M('Kenya'), "KI" => _M('Kiribati'), "NK" => _M('Korea North'), "KS" => _M('Korea South'), "KW" => _M('Kuwait'), "KG" => _M('Kyrgyzstan'), "LA" => _M('Laos'), "LV" => _M('Latvia'), "LB" => _M('Lebanon'), "LS" => _M('Lesotho'), "LR" => _M('Liberia'), "LY" => _M('Libya'), "LI" => _M('Liechtenstein'), "LT" => _M('Lithuania'), "LU" => _M('Luxembourg'), "MO" => _M('Macau'), "MK" => _M('Macedonia'), "MG" => _M('Madagascar'), "MY" => _M('Malaysia'), "MW" => _M('Malawi'), "MV" => _M('Maldives'), "ML" => _M('Mali'), "MT" => _M('Malta'), "MH" => _M('Marshall Islands'), "MQ" => _M('Martinique'), "MR" => _M('Mauritania'), "MU" => _M('Mauritius'), "ME" => _M('Mayotte'), "MX" => _M('Mexico'), "MI" => _M('Midway Islands'), "MD" => _M('Moldova'), "MC" => _M('Monaco'), "MN" => _M('Mongolia'), "MS" => _M('Montserrat'), "MA" => _M('Morocco'), "MZ" => _M('Mozambique'), "MM" => _M('Myanmar'), "NA" => _M('Nambia'), "NU" => _M('Nauru'), "NP" => _M('Nepal'), "AN" => _M('Netherland Antilles'), "NL" => _M('Netherlands'), "NV" => _M('Nevis'), "NC" => _M('New Caledonia'), "NZ" => _M('New Zealand'), "NI" => _M('Nicaragua'), "NE" => _M('Niger'), "NG" => _M('Nigeria'), "NW" => _M('Niue'), "NF" => _M('Norfolk Island'), "NO" => _M('Norway'), "OM" => _M('Oman'), "PK" => _M('Pakistan'), "PW" => _M('Palau Island'), "PS" => _M('Palestine'), "PA" => _M('Panama'), "PG" => _M('Papua New Guinea'), "PY" => _M('Paraguay'), "PE" => _M('Peru'), "PH" => _M('Philippines'), "PO" => _M('Pitcairn Island'), "PL" => _M('Poland'), "PT" => _M('Portugal'), "PR" => _M('Puerto Rico'), "QA" => _M('Qatar'), "RE" => _M('Reunion'), "RO" => _M('Romania'), "RU" => _M('Russia'), "RW" => _M('Rwanda'), "NT" => _M('St Barthelemy'), "EU" => _M('St Eustatius'), "HE" => _M('St Helena'), "KN" => _M('St Kitts-Nevis'), "LC" => _M('St Lucia'), "MB" => _M('St Maarten'), "PM" => _M('St Pierre & Miquelon'), "VC" => _M('St Vincent & Grenadines'), "SP" => _M('Saipan'), "SO" => _M('Samoa'), "SM" => _M('San Marino'), "ST" => _M('Sao Tome & Principe'), "SA" => _M('Saudi Arabia'), "SN" => _M('Senegal'), "SC" => _M('Seychelles'), "SS" => _M('Serbia & Montenegro'), "SL" => _M('Sierra Leone'), "SG" => _M('Singapore'), "SK" => _M('Slovakia'), "SI" => _M('Slovenia'), "SB" => _M('Solomon Islands'), "OI" => _M('Somalia'), "ZA" => _M('South Africa'), "ES" => _M('Spain'), "LK" => _M('Sri Lanka'), "SD" => _M('Sudan'), "SR" => _M('Suriname'), "SZ" => _M('Swaziland'), "SE" => _M('Sweden'), "CH" => _M('Switzerland'), "SY" => _M('Syria'), "TA" => _M('Tahiti'), "TW" => _M('Taiwan'), "TJ" => _M('Tajikistan'), "TZ" => _M('Tanzania'), "TH" => _M('Thailand'), "TG" => _M('Togo'), "TK" => _M('Tokelau'), "TO" => _M('Tonga'), "TT" => _M('Trinidad & Tobago'), "TN" => _M('Tunisia'), "TR" => _M('Turkey'), "TU" => _M('Turkmenistan'), "TC" => _M('Turks & Caicos Is'), "TV" => _M('Tuvalu'), "UG" => _M('Uganda'), "UA" => _M('Ukraine'), "AE" => _M('United Arab Emirates'), "GB" => _M('United Kingdom'), "US" => _M('United States of America'), "UY" => _M('Uruguay'), "UZ" => _M('Uzbekistan'), "VU" => _M('Vanuatu'), "VS" => _M('Vatican City State'), "VE" => _M('Venezuela'), "VN" => _M('Vietnam'), "VB" => _M('Virgin Islands (Brit)'), "VA" => _M('Virgin Islands (USA)'), "WK" => _M('Wake Island'), "WF" => _M('Wallis & Futana Is'), "YE" => _M('Yemen'), "ZR" => _M('Zaire'), "ZM" => _M('Zambia'), "ZW" => _M('Zimbabwe'));
     Utils_CommonDataCommon::new_id('Countries', true);
     Utils_CommonDataCommon::new_array('Countries', $countries);
     $usa_states = array('AL' => _M('Alabama'), 'AK' => _M('Alaska'), 'AZ' => _M('Arizona'), 'AR' => _M('Arkansas'), 'CA' => _M('California'), 'CO' => _M('Colorado'), 'CT' => _M('Connecticut'), 'DE' => _M('Delaware'), 'DC' => _M('District Of Columbia'), 'FL' => _M('Florida'), 'GA' => _M('Georgia'), 'HI' => _M('Hawaii'), 'ID' => _M('Idaho'), 'IL' => _M('Illinois'), 'IN' => _M('Indiana'), 'IA' => _M('Iowa'), 'KS' => _M('Kansas'), 'KY' => _M('Kentucky'), 'LA' => _M('Louisiana'), 'ME' => _M('Maine'), 'MD' => _M('Maryland'), 'MA' => _M('Massachusetts'), 'MI' => _M('Michigan'), 'MN' => _M('Minnesota'), 'MS' => _M('Mississippi'), 'MO' => _M('Missouri'), 'MT' => _M('Montana'), 'NE' => _M('Nebraska'), 'NV' => _M('Nevada'), 'NH' => _M('New Hampshire'), 'NJ' => _M('New Jersey'), 'NM' => _M('New Mexico'), 'NY' => _M('New York'), 'NC' => _M('North Carolina'), 'ND' => _M('North Dakota'), 'OH' => _M('Ohio'), 'OK' => _M('Oklahoma'), 'OR' => _M('Oregon'), 'PA' => _M('Pennsylvania'), 'RI' => _M('Rhode Island'), 'SC' => _M('South Carolina'), 'SD' => _M('South Dakota'), 'TN' => _M('Tennessee'), 'TX' => _M('Texas'), 'UT' => _M('Utah'), 'VT' => _M('Vermont'), 'VA' => _M('Virginia'), 'WA' => _M('Washington'), 'WV' => _M('West Virginia'), 'WI' => _M('Wisconsin'), 'WY' => _M('Wyoming'));
     Utils_CommonDataCommon::new_array('Countries/US', $usa_states);
     $pl_wojew = array('DS' => _M('Lower Silesian'), 'KP' => _M('Kuyavian-Pomeranian'), 'LB' => _M('Lubusz'), 'LD' => _M('Łódź'), 'LU' => _M('Lublin'), 'MA' => _M('Masovian'), 'MP' => _M('Lesser Poland'), 'OP' => _M('Opole'), 'PD' => _M('Podlaskie'), 'PK' => _M('Subcarpathian'), 'PM' => _M('Pomeranian'), 'SL' => _M('Silesian'), 'SW' => _M('Świętokrzyskie'), 'WM' => _M('Warmian-Masurian'), 'WP' => _M('Greater Poland'), 'ZP' => _M('West Pomeranian'));
     Utils_CommonDataCommon::new_array('Countries/PL', $pl_wojew);
     $ro_wojew = array('AB' => _M('Alba'), 'AG' => _M('Arges'), 'AR' => _M('Arad'), 'B' => _M('Bucuresti'), 'BC' => _M('Bacau'), 'BH' => _M('Bihor'), 'BN' => _M('Bistrita-Nasaud'), 'BR' => _M('Braila'), 'BT' => _M('Botosani'), 'BV' => _M('Brasov'), 'BZ' => _M('Buzau'), 'CJ' => _M('Cluj'), 'CL' => _M('Calarasi'), 'CS' => _M('Caras-Severin'), 'CT' => _M('Constanta'), 'CV' => _M('Covasna'), 'DB' => _M('Dambovita'), 'DJ' => _M('Dolj'), 'GJ' => _M('Gorj'), 'GL' => _M('Galati'), 'GR' => _M('Giurgiu'), 'HD' => _M('Hunedoara'), 'HR' => _M('Harghita'), 'IF' => _M('Ilfov'), 'IL' => _M('Ialomita'), 'IS' => _M('Iasi'), 'MH' => _M('Mehedinti'), 'MM' => _M('Maramures'), 'MS' => _M('Mures'), 'NT' => _M('Neamt'), 'OT' => _M('Olt'), 'PH' => _M('Prahova'), 'SB' => _M('Sibiu'), 'SJ' => _M('Salaj'), 'SM' => _M('Satu-Mare'), 'SV' => _M('Suceava'), 'TL' => _M('Tulcea'), 'TM' => _M('Timis'), 'TR' => _M('Teleorman'), 'VL' => _M('Valcea'), 'VN' => _M('Vrancea'), 'VS' => _M('Vaslui'));
     Utils_CommonDataCommon::new_array('Countries/RO', $ro_wojew);
     $ca_provinces = array('ON' => _M('Ontario'), 'AB' => _M('Alberta'), 'BC' => _M('British Columbia'), 'MB' => _M('Manitoba'), 'QC' => _M('Quebec'), 'LB' => _M('Labrador'), 'NS' => _M('Nova Scotia'), 'PE' => _M('Prince Edwards Island'), 'YK' => _M('Yukon'), 'NT' => _M('Northwest Territories'), 'NU' => _M('Nunavut'), 'NB' => _M('New Brunswick'), 'SK' => 'Saskatchewan');
     Utils_CommonDataCommon::new_array('Countries/CA', $ca_provinces);
     $us_pa_county = array('philadelphia' => _M('Philadelphia'), 'montgomery' => _M('Montgomery'), 'delaware' => _M('Delaware'), 'lancaster' => _M('Lancaster'), 'chester' => _M('Chester'), 'bucks' => _M('Bucks'));
     Utils_CommonDataCommon::new_array('Countries/US/PA', $us_pa_county);
     Base_ThemeCommon::install_default_theme($this->get_type());
     return true;
 }
Example #7
0
 public function install()
 {
     Utils_CommonDataCommon::new_array('crm_assets_category', array(_M('Desktop'), _M('Server'), _M('Notebook'), _M('Monitor'), _M('Printer'), _M('Other')), true, true);
     Utils_CommonDataCommon::new_id('crm_assets_monitor_type', true);
     Utils_CommonDataCommon::new_array('crm_assets_monitor_type', array(_M('CRT'), _M('LCD'), _M('Other')));
     Utils_CommonDataCommon::new_id('crm_assets_printer_type', true);
     Utils_CommonDataCommon::new_array('crm_assets_printer_type', array(_M('Ink'), _M('Laser'), _M('Other')));
     $fields = array(array('name' => _M('Asset ID'), 'type' => 'calculated', 'param' => Utils_RecordBrowserCommon::actual_db_type('text', 16), 'extra' => false, 'visible' => true, 'display_callback' => array('CRM_AssetsCommon', 'display_asset_id')), array('name' => _M('Active'), 'type' => 'checkbox', 'extra' => false, 'visible' => true, 'filter' => true), array('name' => _M('Category'), 'type' => 'commondata', 'param' => array('crm_assets_category'), 'extra' => false, 'visible' => true, 'filter' => true, 'required' => true, 'QFfield_callback' => array('CRM_AssetsCommon', 'QFfield_category')), array('name' => _M('Asset Name'), 'type' => 'text', 'param' => '128', 'extra' => false, 'visible' => true, 'required' => true), array('name' => _M('Asset Tag'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Company'), 'type' => 'crm_company', 'extra' => false, 'visible' => true, 'param' => array('field_type' => 'select', 'crits' => array('CRM_AssetsCommon', 'company_crits')), 'filter' => true), array('name' => _M('Date Purchased'), 'type' => 'date', 'extra' => false), array('name' => _M('Serial Number'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('IP Address'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('General Info'), 'type' => 'calculated', 'extra' => false, 'visible' => true, 'display_callback' => array('CRM_AssetsCommon', 'display_info'), 'QFfield_callback' => array('CRM_AssetsCommon', 'QFfield_info')), array('name' => _M('Host Name'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Operating System'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Processor'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('RAM'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('HDD'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Optical Devices'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Audio'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Software'), 'type' => 'long text', 'extra' => false), array('name' => _M('Display Type'), 'type' => 'commondata', 'extra' => false, 'param' => array('crm_assets_monitor_type')), array('name' => _M('Screen Size'), 'type' => 'text', 'param' => '128', 'extra' => false), array('name' => _M('Printer Type'), 'type' => 'commondata', 'extra' => false, 'param' => array('order_by_key' => true, 'crm_assets_printer_type')), array('name' => _M('Color Printing'), 'type' => 'checkbox', 'extra' => false));
     Utils_RecordBrowserCommon::install_new_recordset('crm_assets', $fields);
     Utils_RecordBrowserCommon::set_recent('crm_assets', 10);
     Utils_RecordBrowserCommon::set_favorites('crm_assets', true);
     Utils_RecordBrowserCommon::set_caption('crm_assets', _M('Assets'));
     Utils_RecordBrowserCommon::set_quickjump('crm_assets', 'Asset Name');
     Utils_RecordBrowserCommon::set_icon('crm_assets', Base_ThemeCommon::get_template_filename('CRM/Assets', 'icon.png'));
     Utils_RecordBrowserCommon::register_processing_callback('crm_assets', array('CRM_AssetsCommon', 'process_request'));
     Utils_RecordBrowserCommon::enable_watchdog('crm_assets', array('CRM_AssetsCommon', 'watchdog_label'));
     Utils_RecordBrowserCommon::add_default_access('crm_assets');
     Utils_RecordBrowserCommon::set_search('crm_assets', 2, 0);
     Utils_RecordBrowserCommon::new_addon('company', 'CRM/Assets', 'assets_addon', _M('Assets'));
     Utils_AttachmentCommon::new_addon('crm_assets');
     Base_ThemeCommon::install_default_theme($this->get_type());
     return true;
 }
Example #8
0
 public function install()
 {
     Utils_CommonDataCommon::new_array('Tests/RecordBrowser/Test_Commondata', array('Test0', 'Test1', 'Test2', 'Test3', 'Test4'));
     Utils_CommonDataCommon::new_array('Tests/RecordBrowser/Test_Permissions', array('none', 'partial view', 'full view', 'partial edit', 'full edit', 'delete'));
     $tr = new Tests_RecordBrowser_Recordset();
     $tr->install();
     //$ra = new RBO_RecordsetAccessor('tests_record_set');
     //$records = array();
     //$in = -1;
     //records for RB tests (full permission)
     $record = $tr->new_record($this->prepare_data(5, false, false));
     $this->update_record($record, $this->prepare_data(5, true, false));
     $record = $tr->new_record($this->prepare_data(5, false, true));
     $this->update_record($record, $this->prepare_data(5, true, true));
     //records for permissions tests
     for ($j = 0; $j < 5; $j++) {
         $record = $tr->new_record($this->prepare_data($j, false, true));
         $this->update_record($record, $this->prepare_data($j, true, true));
     }
     //setting permissions
     $this->prepare_permissions();
     return true;
 }
Example #9
0
 public function install()
 {
     $this->create_data_dir();
     // create htaccess to prevent logs to be available on the internet
     $htaccess = $this->get_data_dir() . '.htaccess';
     $f = fopen($htaccess, 'w');
     if ($f === false) {
         print "Cannot create .htaccess file ({$htaccess}). " . "Your Roundcube logs may be available on the internet!";
     } else {
         fwrite($f, "deny from all\n");
         fclose($f);
     }
     Base_ThemeCommon::install_default_theme($this->get_type());
     $this->drop_all_rc_tables();
     if (DB::is_mysql()) {
         $f = file_get_contents('modules/CRM/Roundcube/RC/SQL/mysql.initial.sql');
     } else {
         $f = file_get_contents('modules/CRM/Roundcube/RC/SQL/postgres.initial.sql');
     }
     foreach (explode(';', $f) as $q) {
         $q = trim($q);
         if (!$q) {
             continue;
         }
         DB::Execute($q);
     }
     Utils_CommonDataCommon::new_array('CRM/Roundcube/Security', array('tls' => _M('TLS'), 'ssl' => _M('SSL')), true, true);
     //addons table
     $fields = array(array('name' => _M('Recordset'), 'type' => 'text', 'param' => 64, 'display_callback' => array($this->get_type() . 'Common', 'display_recordset'), 'QFfield_callback' => array($this->get_type() . 'Common', 'QFfield_recordset'), 'required' => true, 'extra' => false, 'visible' => true));
     Utils_RecordBrowserCommon::install_new_recordset('rc_related', $fields);
     Utils_RecordBrowserCommon::set_caption('rc_related', _M('Mail Related Recordsets'));
     Utils_RecordBrowserCommon::register_processing_callback('rc_related', array('CRM_RoundcubeCommon', 'processing_related'));
     Utils_RecordBrowserCommon::add_access('rc_related', 'view', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_related', 'add', 'ADMIN');
     Utils_RecordBrowserCommon::add_access('rc_related', 'edit', 'SUPERADMIN');
     Utils_RecordBrowserCommon::add_access('rc_related', 'delete', 'SUPERADMIN');
     Utils_RecordBrowserCommon::new_record('rc_related', array('recordset' => 'company'));
     Utils_RecordBrowserCommon::new_record('rc_related', array('recordset' => 'contact'));
     //accounts table
     $fields = array(array('name' => _M('EPESI User'), 'type' => 'integer', 'extra' => false, 'visible' => true, 'required' => true, 'display_callback' => array('CRM_RoundcubeCommon', 'display_epesi_user'), 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_epesi_user')), array('name' => _M('Email'), 'type' => 'text', 'extra' => false, 'visible' => true, 'required' => true, 'param' => 128), array('name' => _M('Account Name'), 'type' => 'text', 'extra' => false, 'visible' => true, 'required' => true, 'param' => 32, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_account_name')), array('name' => _M('Server'), 'type' => 'text', 'extra' => false, 'visible' => true, 'param' => '255', 'required' => true), array('name' => _M('Login'), 'type' => 'text', 'required' => true, 'param' => '255', 'extra' => false, 'visible' => true), array('name' => _M('Password'), 'type' => 'text', 'required' => true, 'extra' => false, 'param' => '255', 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_password'), 'display_callback' => array('CRM_RoundcubeCommon', 'display_password')), array('name' => _M('Security'), 'type' => 'commondata', 'param' => array('CRM/Roundcube/Security'), 'extra' => false, 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_security')), array('name' => _M('SMTP Server'), 'type' => 'text', 'extra' => false, 'visible' => false, 'param' => '255', 'required' => true), array('name' => _M('SMTP Auth'), 'type' => 'checkbox', 'extra' => false, 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_smtp_auth')), array('name' => _M('SMTP Login'), 'type' => 'text', 'required' => false, 'param' => '255', 'extra' => false, 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_smtp_login')), array('name' => _M('SMTP Password'), 'type' => 'text', 'extra' => false, 'param' => '255', 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_smtp_password'), 'display_callback' => array('CRM_RoundcubeCommon', 'display_password')), array('name' => _M('SMTP Security'), 'type' => 'commondata', 'param' => array('CRM/Roundcube/Security'), 'extra' => false, 'visible' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_smtp_security')), array('name' => _M('Default Account'), 'type' => 'checkbox', 'extra' => false, 'visible' => true, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_default_account')), array('name' => _M('Advanced'), 'type' => 'page_split'), array('name' => _M('Archive on sending'), 'type' => 'checkbox', 'extra' => true, 'visible' => false), array('name' => _M('Use EPESI Archive directories'), 'type' => 'checkbox', 'extra' => true, 'visible' => false), array('name' => _M('IMAP Root'), 'type' => 'text', 'param' => 32, 'extra' => true, 'visible' => false), array('name' => _M('IMAP Delimiter'), 'type' => 'text', 'param' => 8, 'extra' => true, 'visible' => false));
     Utils_RecordBrowserCommon::install_new_recordset('rc_accounts', $fields);
     Utils_RecordBrowserCommon::set_caption('rc_accounts', _M('Mail accounts'));
     Utils_RecordBrowserCommon::register_processing_callback('rc_accounts', array('CRM_RoundcubeCommon', 'submit_account'));
     $fields = array(array('name' => _M('Subject'), 'type' => 'text', 'param' => '256', 'extra' => false, 'visible' => true, 'required' => false, 'display_callback' => array('CRM_RoundcubeCommon', 'display_subject')), array('name' => _M('Count'), 'type' => 'calculated', 'extra' => false, 'visible' => true, 'required' => false, 'display_callback' => array('CRM_RoundcubeCommon', 'display_thread_count'), 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_thread_count')), array('name' => _M('Contacts'), 'type' => 'crm_company_contact', 'param' => array('field_type' => 'multiselect'), 'required' => false, 'extra' => false, 'visible' => true), array('name' => _M('First Date'), 'type' => 'timestamp', 'extra' => false, 'visible' => true, 'required' => false), array('name' => _M('Last Date'), 'type' => 'timestamp', 'extra' => false, 'visible' => true, 'required' => false), array('name' => _M('Attachments'), 'type' => 'calculated', 'extra' => false, 'visible' => true, 'display_callback' => array('CRM_RoundcubeCommon', 'display_thread_attachments'), 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_thread_attachments')));
     Utils_RecordBrowserCommon::install_new_recordset('rc_mail_threads', $fields);
     Utils_RecordBrowserCommon::set_caption('rc_mail_threads', _M('Mail Thread'));
     Utils_RecordBrowserCommon::new_addon('rc_mail_threads', 'CRM/Roundcube', 'thread_addon', _M('E-mails'));
     Utils_RecordBrowserCommon::set_search('rc_mail_threads', 2, -1);
     $fields = array(array('name' => _M('Subject'), 'type' => 'text', 'param' => '256', 'extra' => false, 'visible' => true, 'required' => false, 'display_callback' => array('CRM_RoundcubeCommon', 'display_subject')), array('name' => _M('Contacts'), 'type' => 'crm_company_contact', 'param' => array('field_type' => 'multiselect'), 'required' => false, 'extra' => false, 'visible' => true), array('name' => _M('Employee'), 'type' => 'crm_contact', 'param' => array('field_type' => 'select'), 'extra' => false, 'visible' => true, 'required' => false), array('name' => _M('Related'), 'type' => 'multiselect', 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_related'), 'param' => '__RECORDSETS__::;CRM_RoundcubeCommon::related_crits', 'extra' => false, 'required' => false, 'visible' => true), array('name' => _M('Date'), 'type' => 'timestamp', 'extra' => false, 'visible' => true, 'required' => false), array('name' => _M('Attachments'), 'type' => 'calculated', 'extra' => false, 'visible' => true, 'display_callback' => array('CRM_RoundcubeCommon', 'display_attachments'), 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_attachments')), array('name' => _M('Headers Data'), 'type' => 'long text', 'extra' => false, 'visible' => false, 'required' => false), array('name' => _M('Body'), 'type' => 'long text', 'extra' => false, 'visible' => false, 'required' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_body')), array('name' => _M('From'), 'type' => 'text', 'param' => 128, 'extra' => false, 'visible' => false, 'required' => false), array('name' => _M('To'), 'type' => 'text', 'param' => 4096, 'extra' => false, 'visible' => false, 'required' => false), array('name' => _M('Thread'), 'type' => 'select', 'param' => 'rc_mail_threads::Count', 'extra' => false, 'visible' => false, 'required' => false, 'display_callback' => array('CRM_RoundcubeCommon', 'display_mail_thread'), 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_mail_thread')), array('name' => _M('Message ID'), 'type' => 'text', 'param' => 128, 'extra' => false, 'visible' => false, 'required' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_hidden')), array('name' => _M('References'), 'type' => 'text', 'param' => 4096 * 4, 'extra' => false, 'visible' => false, 'required' => false, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_hidden')));
     Utils_RecordBrowserCommon::install_new_recordset('rc_mails', $fields);
     Utils_RecordBrowserCommon::set_caption('rc_mails', _M('Mails'));
     Utils_RecordBrowserCommon::set_tpl('rc_mails', Base_ThemeCommon::get_template_filename('CRM/Roundcube', 'mails'));
     Utils_RecordBrowserCommon::register_processing_callback('rc_mails', array('CRM_RoundcubeCommon', 'submit_mail'));
     Utils_RecordBrowserCommon::set_search('rc_mails', 2, -1);
     DB::CreateIndex('rc_mails_thread_idx', 'rc_mails_data_1', 'f_thread');
     DB::CreateIndex('rc_mails_msgid_idx', 'rc_mails_data_1', 'f_message_id');
     Utils_RecordBrowserCommon::new_addon('rc_mails', 'CRM/Roundcube', 'mail_body_addon', _M('Body'));
     Utils_RecordBrowserCommon::new_addon('rc_mails', 'CRM/Roundcube', 'attachments_addon', _M('Attachments'));
     Utils_RecordBrowserCommon::new_addon('rc_mails', 'CRM/Roundcube', 'mail_headers_addon', _M('Headers'));
     @DB::DropTable('rc_mails_attachments');
     DB::CreateTable('rc_mails_attachments', '
         mail_id I4 NOTNULL,
         type C(32),
         name C(255),
         mime_id C(32),
         attachment I1 DEFAULT 1', array('constraints' => ', FOREIGN KEY (mail_id) REFERENCES rc_mails_data_1(ID)'));
     DB::CreateTable('rc_mails_attachments_download', '
         mail_id I4 NOTNULL,
         hash C(32),
         created_on T DEFTIMESTAMP', array('constraints' => ', FOREIGN KEY (mail_id) REFERENCES rc_mails_data_1(ID)'));
     Utils_RecordBrowserCommon::new_addon('contact', 'CRM/Roundcube', 'addon', _M('E-mails'));
     Utils_RecordBrowserCommon::new_addon('company', 'CRM/Roundcube', 'addon', _M('E-mails'));
     $fields = array(array('name' => _M('Record Type'), 'type' => 'hidden', 'param' => Utils_RecordBrowserCommon::actual_db_type('text', 64), 'required' => false, 'visible' => false, 'filter' => true, 'extra' => false), array('name' => _M('Record ID'), 'type' => 'hidden', 'param' => Utils_RecordBrowserCommon::actual_db_type('integer'), 'filter' => false, 'required' => false, 'extra' => false, 'visible' => false), array('name' => _M('Nickname'), 'type' => 'text', 'required' => true, 'param' => '64', 'extra' => false, 'visible' => true, 'QFfield_callback' => array('CRM_RoundcubeCommon', 'QFfield_nickname')), array('name' => _M('Email'), 'type' => 'email', 'required' => true, 'param' => array('unique' => true), 'extra' => false, 'visible' => true));
     Utils_RecordBrowserCommon::install_new_recordset('rc_multiple_emails', $fields);
     Utils_RecordBrowserCommon::set_favorites('rc_multiple_emails', true);
     Utils_RecordBrowserCommon::set_caption('rc_multiple_emails', _M('Mail addresses'));
     Utils_RecordBrowserCommon::set_icon('rc_multiple_emails', Base_ThemeCommon::get_template_filename('CRM/Roundcube', 'icon.png'));
     Utils_RecordBrowserCommon::set_search('rc_multiple_emails', 2, 0);
     Utils_RecordBrowserCommon::new_addon('contact', 'CRM/Roundcube', 'mail_addresses_addon', _M('E-mail addresses'));
     Utils_RecordBrowserCommon::new_addon('company', 'CRM/Roundcube', 'mail_addresses_addon', _M('E-mail addresses'));
     Variable::set('crm_roundcube_global_signature', "Message sent with EPESI - managing business your way!<br /><a href=\"http://epe.si\">http://epe.si</a>");
     Utils_RecordBrowserCommon::add_access('rc_accounts', 'view', 'ACCESS:employee', array('epesi_user' => 'USER_ID'));
     Utils_RecordBrowserCommon::add_access('rc_accounts', 'add', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_accounts', 'edit', 'ACCESS:employee', array(), array('epesi_user'));
     Utils_RecordBrowserCommon::add_access('rc_accounts', 'delete', 'ACCESS:employee', array('epesi_user' => 'USER_ID'));
     Utils_RecordBrowserCommon::add_access('rc_mails', 'view', 'ACCESS:employee', array(), array('headers_data'));
     Utils_RecordBrowserCommon::add_access('rc_mails', 'delete', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_mails', 'edit', 'ACCESS:employee', array(), array('subject', 'employee', 'date', 'headers_data', 'body', 'from', 'to', 'thread', 'message_id', 'references'));
     Utils_RecordBrowserCommon::add_access('rc_mail_threads', 'view', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_mail_threads', 'delete', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_multiple_emails', 'view', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_multiple_emails', 'add', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_multiple_emails', 'edit', 'ACCESS:employee');
     Utils_RecordBrowserCommon::add_access('rc_multiple_emails', 'delete', 'ACCESS:employee');
     return true;
 }