sync
authorjohn <john@roojs.com>
Wed, 4 Apr 2018 08:19:19 +0000 (16:19 +0800)
committerjohn <john@roojs.com>
Wed, 4 Apr 2018 08:19:19 +0000 (16:19 +0800)
DataObjects/Core_setting.php [new file with mode: 0644]
sql/core_setting.sql

diff --git a/DataObjects/Core_setting.php b/DataObjects/Core_setting.php
new file mode 100644 (file)
index 0000000..bacd835
--- /dev/null
@@ -0,0 +1,71 @@
+<?php
+
+class_exists('DB_DataObject') ? '' : require_once 'DB/DataObject.php';
+
+class Pman_Core_DataObjects_Core_setting extends DB_DataObject
+{
+    public $__table = 'core_setting';
+    
+    function initKeys($dir)
+    {
+        //reject when keys exist
+        if(
+            !file_exists($dir) ||
+            file_exists("{$dir}/pub.key") ||
+            file_exists("{$dir}/pri.key")
+        ){
+            return;
+        }
+        
+        $ssl = openssl_pkey_new(array(
+            "digest_alg" => "sha512",  
+            "private_key_bits" => 1024, //returns cipher in 128 characters
+            "private_key_type" => OPENSSL_KEYTYPE_RSA
+        ));
+        
+        openssl_pkey_export($ssl, $pri_key);
+        $pub_key = openssl_pkey_get_details($ssl);
+        $pub_key = $pub_key["key"];
+        
+        file_put_contents("{$dir}/pub.key",$pub_key);
+        file_put_contents("{$dir}/pri.key",$pri_key);
+    }
+    
+    function getSetting($m,$n)
+    {
+        $s = DB_DataObject::factory('core_setting');
+        $s->setFrom(array(
+            'module' => $q['module'],
+            'name' => $q['name']
+        ));
+        if($s->find(true)) {
+            return $s;
+        }
+        return false;
+    }
+    
+    function beforeInsert($q, $roo)
+    {
+        return;
+    }
+    
+    function initSetting($a)
+    {
+        //foreach ($a) > insert
+        if(empty($a)) {
+            return;
+        }
+        
+        foreach ($a as $s) {
+            
+        }
+        
+        return;
+    }
+    
+    function encryptVal($v) {
+        
+    }
+    
+    
+}
index 36966d6..82f6621 100644 (file)
@@ -4,14 +4,17 @@ CREATE TABLE  core_setting  (
 );
 
 ALTER TABLE core_setting ADD COLUMN module VARCHAR(64) NOT NULL DEFAULT '';
+
 ALTER TABLE core_setting ADD COLUMN name VARCHAR(64) NOT NULL DEFAULT '';
-ALTER TABLE core_setting ADD COLUMN description VARCHAR(128) NOT NULL DEFAULT '';
-ALTER TABLE core_setting ADD COLUMN val VARCHAR(128) NOT NULL DEFAULT '';
-ALTER TABLE core_setting ADD COLUMN updated_dt DATE NOT NULL DEFAULT '0000-00-00';
-ALTER TABLE core_setting ADD COLUMN is_encrypt INT(2) NOT NULL DEFAULT 1;
 
+ALTER TABLE core_setting ADD COLUMN description VARCHAR(128) NOT NULL DEFAULT '';
 
+ALTER TABLE core_setting CHANGE COLUMN  val val  TEXT DEFAULT '';
+ALTER TABLE core_setting ADD COLUMN         val        TEXT NOT NULL DEFAULT '';
 
+ALTER TABLE core_setting ADD COLUMN updated_dt DATE NOT NULL DEFAULT '0000-00-00';
 
+ALTER TABLE core_setting ADD COLUMN is_encrypt INT(2) NOT NULL DEFAULT 1;
 
 
+ALTER TABLE core_setting ADD INDEX lookup_module_name(module, name);
\ No newline at end of file