[MediaWiki-commits] [Gerrit] wikimedia...civicrm[master]: Upstream 4.7.11 mulilingual upgrade fix which was merged aft...

2017-01-03 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged. ( 
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(-)

Approvals:
  jenkins-bot: Verified
  Ejegg: Looks good to me, approved



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, "=5", ""), fullscreen_url = REPLACE(fullscreen_url, 
"=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: merged
Gerrit-Change-Id: I3a02311ffd456515f56fe6b162823d3dbba485e5
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/fundraising/crm/civicrm
Gerrit-Branch: master
Gerrit-Owner: Eileen 
Gerrit-Reviewer: 

[MediaWiki-commits] [Gerrit] wikimedia...civicrm[master]: Upstream 4.7.11 mulilingual upgrade fix which was merged aft...

2016-12-30 Thread Eileen (Code Review)
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, "=5", ""), fullscreen_url = REPLACE(fullscreen_url, 
"=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