本文整理匯總了PHP中CRM_Logging_Schema::dropTriggers方法的典型用法代碼示例。如果您正苦於以下問題:PHP CRM_Logging_Schema::dropTriggers方法的具體用法?PHP CRM_Logging_Schema::dropTriggers怎麽用?PHP CRM_Logging_Schema::dropTriggers使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類CRM_Logging_Schema
的用法示例。
在下文中一共展示了CRM_Logging_Schema::dropTriggers方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: makeSinglelingual
/**
* Switch database from multi-lang back to single (by dropping
* additional columns and views and retaining only the selected locale).
*
* @param $retain string the locale to retain
*
* @return void
*/
static function makeSinglelingual($retain)
{
$domain = new CRM_Core_DAO_Domain();
$domain->find(TRUE);
$locales = explode(CRM_Core_DAO::VALUE_SEPARATOR, $domain->locales);
// break early if the db is already single-lang
if (!$locales) {
return;
}
// lets drop all triggers first
$logging = new CRM_Logging_Schema();
$logging->dropTriggers();
// turn subsequent tables singlelingual
$tables = CRM_Core_I18n_SchemaStructure::tables();
foreach ($tables as $table) {
self::makeSinglelingualTable($retain, $table);
}
// update civicrm_domain.locales
$domain->locales = 'NULL';
$domain->save();
//CRM-6963 -fair assumption.
global $dbLocale;
$dbLocale = '';
// now lets rebuild all triggers
CRM_Core_DAO::triggerRebuild();
}
示例2: dropTriggers
/**
* Wrapper function to drop triggers.
*
* @param string $tableName
* the specific table requiring a rebuild; or NULL to rebuild all tables.
*/
public static function dropTriggers($tableName = NULL)
{
$info = array();
$logging = new CRM_Logging_Schema();
$logging->triggerInfo($info, $tableName);
// drop all existing triggers on all tables
$logging->dropTriggers($tableName);
}
示例3: triggerRebuild
static function triggerRebuild($tableName = NULL)
{
$info = array();
$logging = new CRM_Logging_Schema();
$logging->triggerInfo($info, $tableName);
CRM_Core_I18n_Schema::triggerInfo($info, $tableName);
CRM_Utils_Hook::triggerInfo($info, $tableName);
// drop all existing triggers on all tables
$logging->dropTriggers($tableName);
// now create the set of new triggers
self::createTriggers($info);
}