[Pkg-voip-commits] r5543 - in /freepbx-modules/trunk/debian: TODO.Debian patches/series patches/sqlite_autoincrement patches/sqlite_no_change
tzafrir-guest at alioth.debian.org
tzafrir-guest at alioth.debian.org
Mon Apr 14 20:10:39 UTC 2008
Author: tzafrir-guest
Date: Mon Apr 14 20:10:39 2008
New Revision: 5543
URL: http://svn.debian.org/wsvn/pkg-voip/?sc=1&rev=5543
Log:
Fixed two common issues bothering sqlite3:
* The CHANGE keyword in ALTER TABLE (not needed).
* Different syntax than standard with AUTO(_)INCREMENT.
Added:
freepbx-modules/trunk/debian/patches/sqlite_autoincrement
freepbx-modules/trunk/debian/patches/sqlite_no_change
Modified:
freepbx-modules/trunk/debian/TODO.Debian
freepbx-modules/trunk/debian/patches/series
Modified: freepbx-modules/trunk/debian/TODO.Debian
URL: http://svn.debian.org/wsvn/pkg-voip/freepbx-modules/trunk/debian/TODO.Debian?rev=5543&op=diff
==============================================================================
--- freepbx-modules/trunk/debian/TODO.Debian (original)
+++ freepbx-modules/trunk/debian/TODO.Debian Mon Apr 14 20:10:39 2008
@@ -8,11 +8,6 @@
- FreePBX System Status:
Notice: Undefined offset: 2 in
/usr/share/freepbx/modules/core/functions.inc.php on line 1868
- - Customer DB: bad DB error: http://freepbx.org/trac/ticket/2781
- - PHPAGI Config:
- Warning: extract() [function.extract]: First argument should be an
- array in /usr/share/freepbx/modules/phpagiconf/page.phpagiconf.php
- on line 68
* A copy of phpsysinfo under modules/dashboard/
* Web server shows as "Timeout" in the dashboard.
Modified: freepbx-modules/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-voip/freepbx-modules/trunk/debian/patches/series?rev=5543&op=diff
==============================================================================
--- freepbx-modules/trunk/debian/patches/series (original)
+++ freepbx-modules/trunk/debian/patches/series Mon Apr 14 20:10:39 2008
@@ -1,3 +1,5 @@
sqlite_trunk_query
checkperms_indications
logfile_messages
+sqlite_no_change
+sqlite_autoincrement
Added: freepbx-modules/trunk/debian/patches/sqlite_autoincrement
URL: http://svn.debian.org/wsvn/pkg-voip/freepbx-modules/trunk/debian/patches/sqlite_autoincrement?rev=5543&op=file
==============================================================================
--- freepbx-modules/trunk/debian/patches/sqlite_autoincrement (added)
+++ freepbx-modules/trunk/debian/patches/sqlite_autoincrement Mon Apr 14 20:10:39 2008
@@ -1,0 +1,50 @@
+sqlite allows AUTO_INCREMENT. But only if it is called AUTOINCREMENT.
+And on a PRIMARY KEY (part of its definition).
+--- freepbx-modules-2.3.1.orig/modules/backup/install.php
++++ freepbx-modules-2.3.1/modules/backup/install.php
+@@ -20,8 +20,7 @@ CREATE TABLE IF NOT EXISTS Backup (
+ Weekdays varchar(50) default NULL,
+ Command varchar(200) default NULL,
+ Method varchar(50) default NULL,
+- ID int(11) NOT NULL $autoincrement,
+- PRIMARY KEY (ID)
++ ID int(11) NOT NULL PRIMARY KEY $autoincrement
+ );";
+
+ $check = $db->query($sql);
+--- freepbx-modules-2.3.1.orig/modules/ivr/install.php
++++ freepbx-modules-2.3.1/modules/ivr/install.php
+@@ -1,5 +1,15 @@
+ <?php
+-sql('CREATE TABLE IF NOT EXISTS ivr ( ivr_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, displayname VARCHAR(50), deptname VARCHAR(50), enable_directory VARCHAR(8), enable_directdial VARCHAR(8), timeout INT, announcement VARCHAR(255), dircontext VARCHAR ( 50 ) DEFAULT "default" )');
++$autoincrement = ($amp_conf["AMPDBENGINE"] == "sqlite3") ? "AUTOINCREMENT":"AUTO_INCREMENT";
++sql('CREATE TABLE IF NOT EXISTS ivr (
++ ivr_id INT NOT NULL'.$autoincrement.' PRIMARY KEY,
++ displayname VARCHAR(50),
++ deptname VARCHAR(50),
++ enable_directory VARCHAR(8),
++ enable_directdial VARCHAR(8),
++ timeout INT,
++ announcement VARCHAR(255),
++ dircontext VARCHAR ( 50 ) DEFAULT "default"
++)');
+ sql('CREATE TABLE IF NOT EXISTS ivr_dests ( ivr_id INT NOT NULL, selection VARCHAR(10), dest VARCHAR(50))');
+
+ global $db;
+--- freepbx-modules-2.3.1.orig/modules/recordings/install.php
++++ freepbx-modules-2.3.1/modules/recordings/install.php
+@@ -22,7 +22,13 @@ $fcc->update();
+ unset($fcc);
+
+ // Make sure table exists
+-$sql = "CREATE TABLE IF NOT EXISTS recordings ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, displayname VARCHAR(50) , filename BLOB, description VARCHAR(254));";
++$autoincrement = (($amp_conf["AMPDBENGINE"] == "sqlite") || ($amp_conf["AMPDBENGINE"] == "sqlite3")) ? "AUTOINCREMENT":"AUTO_INCREMENT";
++$sql = "CREATE TABLE IF NOT EXISTS recordings (
++ id INT NOT NULL $autoincrement PRIMARY KEY,
++ displayname VARCHAR(50) ,
++ filename BLOB, description
++ VARCHAR(254)
++);";
+ $result = $db->query($sql);
+ if(DB::IsError($result)) {
+ die_freepbx($result->getDebugInfo());
Added: freepbx-modules/trunk/debian/patches/sqlite_no_change
URL: http://svn.debian.org/wsvn/pkg-voip/freepbx-modules/trunk/debian/patches/sqlite_no_change?rev=5543&op=file
==============================================================================
--- freepbx-modules/trunk/debian/patches/sqlite_no_change (added)
+++ freepbx-modules/trunk/debian/patches/sqlite_no_change Mon Apr 14 20:10:39 2008
@@ -1,0 +1,109 @@
+sqlite(3) does ont support the CHANGE keyword for ALTER TABLE. And it
+will actually work fine with data of a different size.
+--- freepbx-modules-2.3.1.orig/modules/findmefollow/install.php
++++ freepbx-modules-2.3.1/modules/findmefollow/install.php
+@@ -37,8 +37,11 @@ if(DB::IsError($check)) {
+ $result = $db->query($sql);
+ if(DB::IsError($result)) { die_freepbx($result->getDebugInfo()); }
+ }
+-// increase size for older installs
+-$db->query("ALTER TABLE findmefollow CHANGE dring dring VARCHAR( 255 ) NULL");
++$db_engine = $amp_conf["AMPDBENGINE"];
++if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ // increase size for older installs
++ $db->query("ALTER TABLE findmefollow CHANGE dring dring VARCHAR( 255 ) NULL");
++}
+
+ $results = array();
+ $sql = "SELECT grpnum, postdest FROM findmefollow";
+@@ -92,10 +95,12 @@ if ($astman) {
+
+ // Version 2.4.13 change (#1961)
+ //
+-$results = $db->query("ALTER TABLE `findmefollow` CHANGE `grpnum` `grpnum` VARCHAR( 20 ) NOT NULL");
+-if(DB::IsError($results)) {
+- echo $results->getMessage();
+- return false;
++if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ $results = $db->query("ALTER TABLE `findmefollow` CHANGE `grpnum` `grpnum` VARCHAR( 20 ) NOT NULL");
++ if(DB::IsError($results)) {
++ echo $results->getMessage();
++ return false;
++ }
+ }
+
+ ?>
+--- freepbx-modules-2.3.1.orig/modules/ringgroups/install.php
++++ freepbx-modules-2.3.1/modules/ringgroups/install.php
+@@ -2,6 +2,8 @@
+
+ global $db;
+
++$db_engine = $amp_conf["AMPDBENGINE"];
++
+ // Version 1.1 upgrade
+ $sql = "SELECT description FROM ringgroups";
+ $check = $db->getRow($sql, DB_FETCHMODE_ASSOC);
+@@ -20,11 +22,13 @@ if(DB::IsError($check)) {
+ die_freepbx($result->getDebugInfo());
+ }
+
+- // make new field required
+- $sql = "ALTER TABLE `ringgroups` CHANGE `description` `description` VARCHAR( 35 ) NOT NULL ;";
+- $result = $db->query($sql);
+- if(DB::IsError($result)) {
++ if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ // make new field required
++ $sql = "ALTER TABLE `ringgroups` CHANGE `description` `description` VARCHAR( 35 ) NOT NULL ;";
++ $result = $db->query($sql);
++ if(DB::IsError($result)) {
+ die_freepbx($result->getDebugInfo());
++ }
+ }
+ }
+ // Version 1.2 upgrade
+@@ -38,9 +42,11 @@ if(DB::IsError($check)) {
+ die_freepbx($result->getDebugInfo());
+ }
+ }
+-// increase size for older installs
+-$db->query("ALTER TABLE ringgroups CHANGE alertinfo alertinfo VARCHAR( 255 ) NULL");
+
++if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ // increase size for older installs
++ $db->query("ALTER TABLE ringgroups CHANGE alertinfo alertinfo VARCHAR( 255 ) NULL");
++}
+ // Version 2.0 upgrade. Yeah. 2.0 baby!
+ $sql = "SELECT remotealert FROM ringgroups";
+ $check = $db->getRow($sql, DB_FETCHMODE_ASSOC);
+@@ -89,10 +95,12 @@ if (!DB::IsError($results)) { // error -
+
+ // Version 2.2.16 change (#1961)
+ //
+-$results = $db->query("ALTER TABLE `ringgroups` CHANGE `grpnum` `grpnum` VARCHAR( 20 ) NOT NULL");
+-if(DB::IsError($results)) {
+- echo $results->getMessage();
+- return false;
++if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ $results = $db->query("ALTER TABLE `ringgroups` CHANGE `grpnum` `grpnum` VARCHAR( 20 ) NOT NULL");
++ if(DB::IsError($results)) {
++ echo $results->getMessage();
++ return false;
++ }
+ }
+
+ ?>
+--- freepbx-modules-2.3.1.orig/modules/queues/install.php
++++ freepbx-modules-2.3.1/modules/queues/install.php
+@@ -23,6 +23,11 @@ if (!DB::IsError($results)) { // error -
+ }
+ }
+
++$db_engine = $amp_conf["AMPDBENGINE"];
++if ( ($db_engine != 'sqlite') && ($db_engine != 'sqlite3' ) ) {
++ // No need to CHANGE table columns below.
++ return true;
++}
+ // Version 2.2.11 change (#1659)
+ //
+ $results = $db->query("ALTER TABLE `queues` CHANGE `id` `id` VARCHAR( 45 ) NOT NULL DEFAULT '-1'");
More information about the Pkg-voip-commits
mailing list