<?php defined("_VALID_ACCESS") || die('Direct access forbidden'); $tabs = DB::GetCol('SELECT tab FROM recordbrowser_table_properties'); foreach ($tabs as $tab) { PatchUtil::db_drop_column($tab . '_data_1', 'private'); }
$allow |= is_user_in_group($aid, 'Employee Administrator'); $allow |= is_user_in_group($aid, 'Administrator'); $allow |= is_user_in_group($aid, 'Super administrator'); if ($allow) { $r2 = DB::Execute('SELECT * FROM contact_data_1 WHERE f_login=%d', array($row['id'])); while ($r = $r2->FetchRow()) { if (!$r['f_access']) { $gr = '__manager__'; } else { $gr = $r['f_access'] . 'manager__'; } DB::Execute('UPDATE contact_data_1 SET f_access=%s WHERE id=%d', array($gr, $r['id'])); } } } PatchUtil::db_drop_column('recordbrowser_table_properties', 'access_callback'); Utils_RecordBrowserCommon::add_default_access('crm_assets'); Utils_RecordBrowserCommon::add_access('company', 'view', 'ACCESS:employee', array('(!permission' => 2, '|:Created_by' => 'USER_ID')); Utils_RecordBrowserCommon::add_access('company', 'view', 'ALL', array('id' => 'USER_COMPANY')); Utils_RecordBrowserCommon::add_access('company', 'add', 'ACCESS:employee'); Utils_RecordBrowserCommon::add_access('company', 'edit', 'ACCESS:employee', array('(permission' => 0, '|:Created_by' => 'USER_ID')); Utils_RecordBrowserCommon::add_access('company', 'edit', array('ALL', 'ACCESS:manager'), array('id' => 'USER_COMPANY')); Utils_RecordBrowserCommon::add_access('company', 'edit', array('ACCESS:employee', 'ACCESS:manager'), array()); Utils_RecordBrowserCommon::add_access('company', 'delete', 'ACCESS:employee', array(':Created_by' => 'USER_ID')); Utils_RecordBrowserCommon::add_access('company', 'delete', array('ACCESS:employee', 'ACCESS:manager')); Utils_RecordBrowserCommon::add_access('contact', 'view', 'ACCESS:employee', array('(!permission' => 2, '|:Created_by' => 'USER_ID')); Utils_RecordBrowserCommon::add_access('contact', 'view', 'ALL', array('login' => 'USER_ID')); Utils_RecordBrowserCommon::add_access('contact', 'add', 'ACCESS:employee'); Utils_RecordBrowserCommon::add_access('contact', 'edit', 'ACCESS:employee', array('(permission' => 0, '|:Created_by' => 'USER_ID'), array('access', 'login')); Utils_RecordBrowserCommon::add_access('contact', 'edit', 'ALL', array('login' => 'USER_ID'), array('company_name', 'related_companies', 'access', 'login')); Utils_RecordBrowserCommon::add_access('contact', 'edit', array('ALL', 'ACCESS:manager'), array('company_name' => 'USER_COMPANY'), array('login', 'company_name', 'related_companies'));
<?php defined("_VALID_ACCESS") || die('Direct access forbidden'); if (array_key_exists(strtoupper('revision'), DB::MetaColumnNames('utils_attachment_file'))) { @DB::Execute('ALTER TABLE utils_attachment_file DROP INDEX utils_attachment_file__revision__idx'); @DB::Execute('alter table utils_attachment_file drop foreign key utils_attachment_file_ibfk_2'); @DB::Execute('alter table utils_attachment_file drop index attach_id'); PatchUtil::db_drop_column('utils_attachment_file', 'revision'); }
JOIN information_schema.constraint_column_usage AS ccu ON ccu.constraint_name = tc.constraint_name WHERE constraint_type = 'FOREIGN KEY' AND tc.table_name='recordbrowser_words_map' AND kcu.column_name='word_id';"); if($a) { DB::Execute('alter table recordbrowser_words_map drop CONSTRAINT "'.$a.'"'); } } DB::CreateIndex('recordbrowser_words_map__idx','recordbrowser_words_map','word_id,tab,record_id,field_name',array('DROP'=>1)); DB::CreateIndex('recordbrowser_words_map__idx2','recordbrowser_words_map','tab,record_id',array('DROP'=>1)); DB::Execute('TRUNCATE TABLE recordbrowser_words_index'); $remove_idx_checkpoint->done(); } $finalize_checkpoint = Patch::checkpoint('finalize'); if(!$finalize_checkpoint->is_done()) { Patch::require_time(20); PatchUtil::db_drop_column('recordbrowser_words_map', 'tab'); PatchUtil::db_drop_column('recordbrowser_words_map', 'field_name'); if(DB::is_postgresql()) { DB::Execute('ALTER TABLE recordbrowser_words_map ADD CONSTRAINT word_id_fk FOREIGN KEY (word_id) REFERENCES recordbrowser_words_index'); } else { DB::Execute('ALTER TABLE recordbrowser_words_map ADD FOREIGN KEY (word_id) REFERENCES recordbrowser_words_index(id)'); } DB::CreateIndex('recordbrowser_words_map__idx','recordbrowser_words_map','word_id,tab_id'); $finalize_checkpoint->done(); }