Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatt <matt@59fd770c-687e-43c8-a1e3-f5a4ff64c105>2008-11-03 19:29:16 +0300
committermatt <matt@59fd770c-687e-43c8-a1e3-f5a4ff64c105>2008-11-03 19:29:16 +0300
commit3f49998533e25d79b6d269736a4196e20a0deb54 (patch)
tree1f54832dcff2c0e438c9669568391e055d161112
parent275bf7fa99faaedb5f33e68c12e8be5570484343 (diff)
- adding the version 0.2.10, with the creation of table piwik_option to make it easy for core & plugins to save/load key.value data
-rw-r--r--core/Option.php14
-rw-r--r--core/Piwik.php8
-rw-r--r--core/Updates/0.2.10.php9
3 files changed, 28 insertions, 3 deletions
diff --git a/core/Option.php b/core/Option.php
index 69e939c4ad..a34a3e8f73 100644
--- a/core/Option.php
+++ b/core/Option.php
@@ -6,18 +6,26 @@
// - design Options, how WP plugins make use of it, reuse same pattern
function Piwik_GetOption($name)
{
- return Piwik_FetchOne( 'SELECT option_value
+ try {
+ return Piwik_FetchOne( 'SELECT option_value
FROM ' . Piwik::prefixTable('option') . '
WHERE option_name = ?',
- $name);
+ $name);
+ } catch(Exception $e) {
+ return false;
+ }
}
function Piwik_UpdateOption($name, $value)
{
- return Piwik_Query('INSERT INTO '. Piwik::prefixTable('option') . ' (option_name, option_value)
+ try {
+ return Piwik_Query('INSERT INTO '. Piwik::prefixTable('option') . ' (option_name, option_value)
VALUES (?, ?)
ON DUPLICATE KEY UPDATE option_value = ?',
array($name, $value, $value));
+ } catch(Exception $e) {
+ return false;
+ }
}
/**
diff --git a/core/Piwik.php b/core/Piwik.php
index 164d96a3eb..16cb618a0b 100644
--- a/core/Piwik.php
+++ b/core/Piwik.php
@@ -600,6 +600,14 @@ class Piwik
)
",
+ 'option' => "CREATE TABLE {$prefixTables}option (
+ idoption BIGINT NOT NULL AUTO_INCREMENT ,
+ option_name VARCHAR( 64 ) NOT NULL ,
+ option_value LONGTEXT NOT NULL ,
+ PRIMARY KEY ( idoption , option_name )
+ )
+ ",
+
'archive_numeric' => "CREATE TABLE {$prefixTables}archive_numeric (
idarchive INTEGER UNSIGNED NOT NULL,
name VARCHAR(255) NOT NULL,
diff --git a/core/Updates/0.2.10.php b/core/Updates/0.2.10.php
new file mode 100644
index 0000000000..3af62d1dec
--- /dev/null
+++ b/core/Updates/0.2.10.php
@@ -0,0 +1,9 @@
+<?php
+
+try {
+ $tables = Piwik::getTablesCreateSql();
+ $optionTable = $tables['option'];
+ Piwik_Query( $optionTable );
+} catch (Exception $e) {
+ throw new UpdateErrorException("Error trying to create the option table in Mysql: " . $e->getMessage());
+}