Created
May 17, 2011 09:00
-
-
Save ArnaudD/976173 to your computer and use it in GitHub Desktop.
Filez compatibility with postgresql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/app/controllers/Install.php b/app/controllers/Install.php | |
index d8b5d72..bd88484 100644 | |
--- a/app/controllers/Install.php | |
+++ b/app/controllers/Install.php | |
@@ -323,7 +323,7 @@ class App_Controller_Install extends Fz_Controller { | |
$version = '2.0.0'; | |
} else if ($table['table_name'] == 'fz_info') { | |
$res = Fz_Db::findAssocBySQL( | |
- 'SELECT `value` FROM `fz_info` WHERE `key`=\'db_version\''); | |
+ 'SELECT value FROM fz_info WHERE key=\'db_version\''); | |
if (! empty ($res)) | |
return $res [0]['value']; | |
} | |
diff --git a/app/models/DbTable/File.php b/app/models/DbTable/File.php | |
index 1143fea..43eb947 100644 | |
--- a/app/models/DbTable/File.php | |
+++ b/app/models/DbTable/File.php | |
@@ -122,7 +122,7 @@ class App_Model_DbTable_File extends Fz_Db_Table_Abstract { | |
public function findByOwnerOrderByUploadDateDesc ($uid) { | |
$sql = 'SELECT * FROM '.$this->getTableName () | |
.' WHERE uploader_uid=:uid ' | |
- .' AND available_until >= CURRENT_DATE() ' | |
+ .' AND available_until >= CURRENT_DATE ' | |
.' ORDER BY created_at DESC'; | |
return $this->findBySql ($sql, array (':uid' => $uid)); | |
} | |
@@ -132,7 +132,7 @@ class App_Model_DbTable_File extends Fz_Db_Table_Abstract { | |
*/ | |
public function deleteExpiredFiles () { | |
$select = 'SELECT * FROM '.$this->getTableName (); | |
- $where = ' WHERE available_until<CURRENT_DATE()'; | |
+ $where = ' WHERE available_until<CURRENT_DATE'; | |
foreach ($this->findBySql ($select.$where) as $file) { | |
if ($file->deleteFromDisk () === true) { | |
fz_log ('Deleted file "'.$file->getOnDiskLocation ().'"', | |
@@ -154,8 +154,8 @@ class App_Model_DbTable_File extends Fz_Db_Table_Abstract { | |
*/ | |
public function findFilesToBeDeleted ($days = 2) { | |
$sql = 'SELECT * FROM '.$this->getTableName () | |
- .' WHERE available_until BETWEEN CURRENT_DATE() ' | |
- .'AND DATE_ADD(CURRENT_DATE(), INTERVAL '.$days.' DAY) ' | |
+ .' WHERE available_until BETWEEN CURRENT_DATE ' | |
+ .'AND DATE_ADD(CURRENT_DATE, INTERVAL '.$days.' DAY) ' | |
.'AND del_notif_sent=0 AND notify_uploader=1'; | |
return $this->findBySql ($sql); | |
@@ -169,10 +169,10 @@ class App_Model_DbTable_File extends Fz_Db_Table_Abstract { | |
*/ | |
public function getTotalDiskSpaceByUser ($user) { | |
$result = option ('db_conn') | |
- ->prepare ('SELECT sum(file_size) FROM `' | |
+ ->prepare ('SELECT sum(file_size) FROM ' | |
.$this->getTableName () | |
- .'` WHERE uploader_email = ?' | |
- .' AND available_until >= CURRENT_DATE() '); | |
+ .' WHERE uploader_email = ?' | |
+ .' AND available_until >= CURRENT_DATE '); | |
$result->execute (array ($user['email'])); | |
return (float) $result->fetchColumn (); | |
} | |
diff --git a/config/db/schema.sql b/config/db/schema.sql | |
index 141788c..65f1ad4 100644 | |
--- a/config/db/schema.sql | |
+++ b/config/db/schema.sql | |
@@ -1,30 +1,29 @@ | |
SET NAMES 'utf8'; | |
-CREATE TABLE IF NOT EXISTS `fz_file` ( | |
- `id` BIGINT UNSIGNED NOT NULL, | |
- `del_notif_sent` BOOLEAN DEFAULT 0, | |
- `file_name` varchar(100) NOT NULL, | |
- `file_size` INTEGER DEFAULT 0, | |
- `available_from` DATE NOT NULL, | |
- `available_until` DATE NOT NULL, | |
- `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, | |
- `comment` varchar(200), | |
- `download_count` INTEGER DEFAULT 0, | |
- `notify_uploader` BOOLEAN DEFAULT 0, | |
- `uploader_uid` varchar(30) DEFAULT NULL, | |
- `uploader_email` varchar(60) DEFAULT NULL, | |
- `extends_count` INTEGER DEFAULT '0', | |
- `password` varchar(40) DEFAULT NULL, | |
+CREATE TABLE "fz_file" ( | |
+ "id" NUMERIC(20) NOT NULL, | |
+ "del_notif_sent" BOOLEAN DEFAULT false, | |
+ "file_name" varchar(100) NOT NULL, | |
+ "file_size" INTEGER DEFAULT 0, | |
+ "available_from" DATE NOT NULL, | |
+ "available_until" DATE NOT NULL, | |
+ "created_at" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, | |
+ "comment" varchar(200), | |
+ "download_count" INTEGER DEFAULT 0, | |
+ "notify_uploader" BOOLEAN DEFAULT false, | |
+ "uploader_uid" varchar(30) DEFAULT NULL, | |
+ "uploader_email" varchar(60) DEFAULT NULL, | |
+ "extends_count" INTEGER DEFAULT '0', | |
+ "password" varchar(40) DEFAULT NULL, | |
- UNIQUE KEY `id` (`id`) | |
-) DEFAULT CHARSET=utf8; | |
+ PRIMARY KEY ("id") | |
+); | |
+CREATE TABLE "fz_info" ( | |
+ "key" VARCHAR( 30 ) NOT NULL , | |
+ "value" VARCHAR( 50 ) NOT NULL , | |
+ PRIMARY KEY ("key") | |
+); | |
-CREATE TABLE `fz_info` ( | |
- `key` VARCHAR( 30 ) NOT NULL , | |
- `value` VARCHAR( 50 ) NOT NULL , | |
- PRIMARY KEY ( `key` ) | |
-) DEFAULT CHARSET=utf8; | |
- | |
-INSERT INTO `fz_info` (`key`, `value`) VALUES ('db_version', '2.0.0-2'); | |
+INSERT INTO "fz_info" ("key", "value") VALUES ('db_version', '2.0.0-2'); | |
diff --git a/lib/Fz/Db/Table/Abstract.php b/lib/Fz/Db/Table/Abstract.php | |
index 0467957..f8e4877 100644 | |
--- a/lib/Fz/Db/Table/Abstract.php | |
+++ b/lib/Fz/Db/Table/Abstract.php | |
@@ -104,7 +104,7 @@ abstract class Fz_Db_Table_Abstract { | |
*/ | |
public function rowExists ($id) { | |
$db = option ('db_conn'); | |
- $sql = 'SELECT id FROM `'.$this->getTableName ().'` WHERE id = ?'; | |
+ $sql = 'SELECT id FROM '.$this->getTableName ().' WHERE id = ?'; | |
$stmt = $db->prepare ($sql); | |
$stmt->execute (array ($id)); | |
diff --git a/lib/Fz/Db/Table/Row/Abstract.php b/lib/Fz/Db/Table/Row/Abstract.php | |
index 125b53e..b4082b8 100644 | |
--- a/lib/Fz/Db/Table/Row/Abstract.php | |
+++ b/lib/Fz/Db/Table/Row/Abstract.php | |
@@ -173,7 +173,7 @@ abstract class Fz_Db_Table_Row_Abstract { | |
return $this; | |
$sql = | |
- "UPDATE `$table` SET " . | |
+ "UPDATE $table SET " . | |
implode (', ', array_map (array ('Fz_Db','nameEqColonName'), $columnsName)) . | |
' WHERE id = :id'; | |
@@ -201,7 +201,7 @@ abstract class Fz_Db_Table_Row_Abstract { | |
$obj_columns = $this->getUpdatedColumns (); | |
$sql = | |
- "INSERT INTO `$table` (" . | |
+ "INSERT INTO $table (" . | |
implode (', ', $obj_columns) . | |
') VALUES (' . | |
implode (', ', array_map (array ('Fz_Db','addColon'), $obj_columns)) . ')'; | |
@@ -224,7 +224,7 @@ abstract class Fz_Db_Table_Row_Abstract { | |
public function delete () { | |
$db = option ('db_conn'); | |
if ($this->_exists === false) return; | |
- $stmt = $db->prepare ('DELETE FROM `'.$this->getTableName ().'` WHERE id = ?'); | |
+ $stmt = $db->prepare ('DELETE FROM '.$this->getTableName ().' WHERE id = ?'); | |
$stmt->execute (array ($this->id)); | |
} | |
diff --git a/lib/Fz/User/Factory/Database.php b/lib/Fz/User/Factory/Database.php | |
index f6b0cce..cbf1725 100644 | |
--- a/lib/Fz/User/Factory/Database.php | |
+++ b/lib/Fz/User/Factory/Database.php | |
@@ -84,7 +84,8 @@ class Fz_User_Factory_Database extends Fz_User_Factory_Abstract { | |
call_user_func ($algorithm, $password)); | |
unset ($bindValues[':password']); | |
} else { | |
- return $algorithm; // Plain SQL | |
+ //return $algorithm; // Plain SQL | |
+ $sql .= $algorithm; | |
} | |
return $this->fetchOne ($sql, $bindValues); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment