Eileen has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/329720 )

Change subject: Upstream 4.7.11 mulilingual upgrade fix which was merged after 
we forked our version
......................................................................

Upstream 4.7.11 mulilingual upgrade fix which was merged after we forked our 
version

Change-Id: I3a02311ffd456515f56fe6b162823d3dbba485e5
---
M CRM/Core/BAO/SchemaHandler.php
M CRM/Upgrade/Incremental/php/FourSeven.php
M CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl
3 files changed, 30 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/wikimedia/fundraising/crm/civicrm 
refs/changes/20/329720/1

diff --git a/CRM/Core/BAO/SchemaHandler.php b/CRM/Core/BAO/SchemaHandler.php
index e68007d..3cc3e3e 100644
--- a/CRM/Core/BAO/SchemaHandler.php
+++ b/CRM/Core/BAO/SchemaHandler.php
@@ -370,11 +370,24 @@
   /**
    * @param string $tableName
    * @param string $columnName
+   * @param bool $l18n
+   *
    */
-  public static function dropColumn($tableName, $columnName) {
+  public static function dropColumn($tableName, $columnName, $l18n = FALSE) {
     if (self::checkIfFieldExists($tableName, $columnName)) {
       $sql = "ALTER TABLE $tableName DROP COLUMN $columnName";
-      CRM_Core_DAO::executeQuery($sql);
+      if ($l18n) {
+        CRM_Core_DAO::executeQuery($sql);
+      }
+      else {
+        CRM_Core_DAO::executeQuery($sql, array(), TRUE, NULL, FALSE, FALSE);
+      }
+      $domain = new CRM_Core_DAO_Domain();
+      $domain->find(TRUE);
+      if ($domain->locales) {
+        $locales = explode(CRM_Core_DAO::VALUE_SEPARATOR, $domain->locales);
+        CRM_Core_I18n_Schema::rebuildMultilingualSchema($locales, NULL);
+      }
     }
   }
 
diff --git a/CRM/Upgrade/Incremental/php/FourSeven.php 
b/CRM/Upgrade/Incremental/php/FourSeven.php
index 973c155..9d820e8 100644
--- a/CRM/Upgrade/Incremental/php/FourSeven.php
+++ b/CRM/Upgrade/Incremental/php/FourSeven.php
@@ -786,6 +786,8 @@
       CRM_Core_DAO::executeQuery('DELETE c1 FROM civicrm_dashboard_contact c1, 
civicrm_dashboard_contact c2 WHERE c1.contact_id = c2.contact_id AND 
c1.dashboard_id = c2.dashboard_id AND c1.id > c2.id');
       CRM_Core_DAO::executeQuery('ALTER TABLE civicrm_dashboard_contact ADD 
UNIQUE INDEX index_dashboard_id_contact_id (dashboard_id, contact_id);');
     }
+    $domain = new CRM_Core_DAO_Domain();
+    $domain->find(TRUE);
     CRM_Core_BAO_SchemaHandler::dropColumn('civicrm_dashboard_contact', 
'content');
     CRM_Core_BAO_SchemaHandler::dropColumn('civicrm_dashboard_contact', 
'is_minimized');
     CRM_Core_BAO_SchemaHandler::dropColumn('civicrm_dashboard_contact', 
'is_fullscreen');
@@ -798,7 +800,12 @@
     CRM_Core_DAO::executeQuery('UPDATE civicrm_dashboard SET url = 
REPLACE(url, "&snippet=5", ""), fullscreen_url = REPLACE(fullscreen_url, 
"&snippet=5", "")');
 
     if (!CRM_Core_BAO_SchemaHandler::checkIfFieldExists('civicrm_dashboard', 
'cache_minutes')) {
-      CRM_Core_DAO::executeQuery('ALTER TABLE civicrm_dashboard ADD COLUMN 
cache_minutes int unsigned NOT NULL DEFAULT 60 COMMENT "Number of minutes to 
cache dashlet content in browser localStorage."');
+      CRM_Core_DAO::executeQuery('ALTER TABLE civicrm_dashboard ADD COLUMN 
cache_minutes int unsigned NOT NULL DEFAULT 60 COMMENT "Number of minutes to 
cache dashlet content in browser localStorage."',
+         array(), TRUE, NULL, FALSE, FALSE);
+    }
+    if ($domain->locales) {
+      $locales = explode(CRM_Core_DAO::VALUE_SEPARATOR, $domain->locales);
+      CRM_Core_I18n_Schema::rebuildMultilingualSchema($locales, NULL);
     }
 
     CRM_Core_DAO::executeQuery('UPDATE civicrm_dashboard SET cache_minutes = 
1440 WHERE name = "blog"');
diff --git a/CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl 
b/CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl
index 64ff7eb..d0eeed5 100644
--- a/CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl
+++ b/CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl
@@ -14,6 +14,13 @@
 UPDATE civicrm_dashboard SET name = 'allCases' WHERE (name IS NULL OR name = 
'') AND url LIKE "civicrm/dashlet/allCases?%";
 UPDATE civicrm_dashboard SET name = 'casedashboard' WHERE (name IS NULL OR 
name = '') AND url LIKE "civicrm/dashlet/casedashboard?%";
 
+-- CRM-19291 Fix names on dashlets where name is an empty string
+{if $multilingual}
+UPDATE civicrm_dashboard SET name = label_{$locales.0} WHERE name = '';
+{else}
+UPDATE civicrm_dashboard SET name = label WHERE name = '';
+{/if}
+
 -- CRM-18508 Display State/Province in event address in registration emails
 {include file='../CRM/Upgrade/4.7.11.msg_template/civicrm_msg_template.tpl'}
 

-- 
To view, visit https://gerrit.wikimedia.org/r/329720
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3a02311ffd456515f56fe6b162823d3dbba485e5
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/fundraising/crm/civicrm
Gerrit-Branch: master
Gerrit-Owner: Eileen <emcnaugh...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to