[Fusionforge-commits] r15786 - in branches/Branch_5_2: . src/plugins/mediawiki/www

Roland Mas lolando at fusionforge.org
Thu Jun 14 16:24:35 CEST 2012


Author: lolando
Date: 2012-06-14 16:24:35 +0200 (Thu, 14 Jun 2012)
New Revision: 15786

Modified:
   branches/Branch_5_2/
   branches/Branch_5_2/src/plugins/mediawiki/www/LocalSettings.php
Log:
Merged from Evolvis: Mediawiki: more wrappers, to help with upgrades

Modified: branches/Branch_5_2/src/plugins/mediawiki/www/LocalSettings.php
===================================================================
--- branches/Branch_5_2/src/plugins/mediawiki/www/LocalSettings.php	2012-06-14 14:24:29 UTC (rev 15785)
+++ branches/Branch_5_2/src/plugins/mediawiki/www/LocalSettings.php	2012-06-14 14:24:35 UTC (rev 15786)
@@ -86,6 +86,23 @@
 		    $password, $dbName, $failFunction, $flags);
 	}
 
+	function fieldInfo($table, $field) {
+		switch ($table) {
+		case 'interwiki':
+			break;
+		default:
+			return DatabasePostgres::fieldInfo($table, $field);
+		}
+
+		global $wgDBmwschema;
+
+		$save_wgDBmwschema = $wgDBmwschema;
+		$wgDBmwschema = 'public';
+		$v = DatabasePostgres::fieldInfo($table, $field);
+		$wgDBmwschema = $save_wgDBmwschema;
+		return $v;
+	}
+
 	function open($server, $user, $password, $dbName) {
 		$v = DatabasePostgres::open($server, $user, $password, $dbName);
 
@@ -98,13 +115,31 @@
 		return $v;
 	}
 
+	function query($sql, $fname='', $tempIgnore=false) {
+		/* ugh! */
+		$chk = "ALTER TABLE interwiki ";
+		$csz = strlen($chk);
+		if (substr($sql, 0, $csz) == $chk) {
+			$sql = "ALTER TABLE public.interwiki " .
+			    substr($sql, $csz);
+		}
+		return DatabasePostgres::query($sql, $fname,$tempIgnore);
+	}
+
 	function tableName($name, $format='quoted') {
+		global $wgDBmwschema;
+
 		switch ($name) {
 		case 'interwiki':
-			return 'public.interwiki';
+			$v = 'interwiki';
 		default:
 			return DatabasePostgres::tableName($name, $format);
 		}
+
+		if ($wgDBmwschema != 'public') {
+			$v = 'public.' . $v;
+		}
+		return $v;
 	}
 }
 




More information about the Fusionforge-commits mailing list