summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Tanghus <thomas@tanghus.net>2012-07-04 22:58:31 +0200
committerThomas Tanghus <thomas@tanghus.net>2012-07-04 22:58:31 +0200
commit5d79444852cdc12f976264c21409311a475cf54f (patch)
treeddba500efe70a546fa71ae51b8b75f0c2e9fa166
parent706a13544ba1aa022b1642baac53d8070c268cc4 (diff)
downloadnextcloud-server-5d79444852cdc12f976264c21409311a475cf54f.tar.gz
nextcloud-server-5d79444852cdc12f976264c21409311a475cf54f.zip
Missing update script.
-rw-r--r--apps/contacts/appinfo/update.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/apps/contacts/appinfo/update.php b/apps/contacts/appinfo/update.php
new file mode 100644
index 00000000000..873899f578b
--- /dev/null
+++ b/apps/contacts/appinfo/update.php
@@ -0,0 +1,25 @@
+<?php
+
+$installedVersion=OCP\Config::getAppValue('contacts', 'installed_version');
+if (version_compare($installedVersion, '0.2.90', '<')) {
+ // First set all address books in-active.
+ $stmt = OCP\DB::prepare( 'UPDATE *PREFIX*contacts_addressbooks SET active=0' );
+ $result = $stmt->execute(array());
+
+ // Then get all the active address books.
+ $stmt = OCP\DB::prepare( 'SELECT userid,configvalue FROM *PREFIX*preferences WHERE appid=\'contacts\' AND configkey=\'openaddressbooks\'' );
+ $result = $stmt->execute(array());
+
+ // Prepare statement for updating the new 'active' field.
+ $stmt = OCP\DB::prepare( 'UPDATE *PREFIX*contacts_addressbooks SET active=? WHERE id=? AND userid=?' );
+ while( $row = $result->fetchRow()) {
+ $ids = explode(';', $row['configvalue']);
+ foreach($ids as $id) {
+ $r = $stmt->execute(array(1, $id, $row['userid']));
+ }
+ }
+
+ // Remove the old preferences.
+ $stmt = OCP\DB::prepare( 'DELETE FROM *PREFIX*preferences WHERE appid=\'contacts\' AND configkey=\'openaddressbooks\'' );
+ $result = $stmt->execute(array());
+}