本文整理汇总了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);
}