ソースを参照

settings get/add/edit/del

tags/0.1.2
Robin Thoni 8年前
コミット
e76f1594ef

+ 27
- 0
src/Auth/Business/LuticateSettingsBusiness.php ファイルの表示

13
         return new LuticateSettingsDataAccess();
13
         return new LuticateSettingsDataAccess();
14
     }
14
     }
15
 
15
 
16
+    /**
17
+     * @param $setting LuticateSettingsDbo
18
+     */
19
+    public static function checkSetting($setting)
20
+    {
21
+        if (is_null($setting->getValue())) {
22
+            self::notFound("Setting Value cannot be null");
23
+        }
24
+        if (is_null($setting->getType())) {
25
+            self::notFound("Setting Type cannot be null");
26
+        }
27
+        else {
28
+            if (is_array($setting->getValue())) {
29
+                $setting->setValue(json_encode($setting->getValue()));
30
+            }
31
+        }
32
+        if (is_null($setting->getName())) {
33
+            self::notFound("Setting Name cannot be null");
34
+        }
35
+        if (!is_bool($setting->getIsBlocked())) {
36
+            self::notFound("Setting IsBlocked must be boolean");
37
+        }
38
+    }
39
+
16
     public static function checkSettingName($setting_name)
40
     public static function checkSettingName($setting_name)
17
     {
41
     {
18
         $perm = LuticateSettingsDataAccess::getByName($setting_name);
42
         $perm = LuticateSettingsDataAccess::getByName($setting_name);
53
      */
77
      */
54
     public static function add($setting)
78
     public static function add($setting)
55
     {
79
     {
80
+        self::checkSetting($setting);
56
         $perm = LuticateSettingsDataAccess::getByName($setting->getName());
81
         $perm = LuticateSettingsDataAccess::getByName($setting->getName());
57
         if (is_null($perm)) {
82
         if (is_null($perm)) {
58
             LuticateSettingsDataAccess::add($setting);
83
             LuticateSettingsDataAccess::add($setting);
75
      */
100
      */
76
     public static function edit($setting_name, $setting)
101
     public static function edit($setting_name, $setting)
77
     {
102
     {
103
+        $setting->setName($setting_name);
104
+        self::checkSetting($setting);
78
         self::checkSettingName($setting_name);
105
         self::checkSettingName($setting_name);
79
         LuticateSettingsDataAccess::edit($setting_name, $setting);
106
         LuticateSettingsDataAccess::edit($setting_name, $setting);
80
         return true;
107
         return true;

+ 1
- 1
src/Auth/Controller/LuticateSettingsController.php ファイルの表示

103
      * @param $setting LuticateSettingsDbo The setting
103
      * @param $setting LuticateSettingsDbo The setting
104
      * @return bool
104
      * @return bool
105
      */
105
      */
106
-    public function edit($setting_name, $setting)
106
+    public function edit($setting_name, LuticateSettingsDbo $setting)
107
     {
107
     {
108
         return LuticateSettingsBusiness::edit($setting_name, $setting);
108
         return LuticateSettingsBusiness::edit($setting_name, $setting);
109
     }
109
     }

+ 0
- 1
src/Auth/DataAccess/LuticateSettingsDataAccess.php ファイルの表示

66
         if (is_null($perm))
66
         if (is_null($perm))
67
             return;
67
             return;
68
         $perm->is_blocked = $setting->getIsBlocked();
68
         $perm->is_blocked = $setting->getIsBlocked();
69
-        $perm->name = $setting->getName();
70
         $perm->type = $setting->getType();
69
         $perm->type = $setting->getType();
71
         $perm->value = $setting->getValue();
70
         $perm->value = $setting->getValue();
72
         $perm->save();
71
         $perm->save();

+ 1
- 0
src/Auth/DataAccess/Models/LuticateSettings.php ファイルの表示

6
 
6
 
7
 class LuticateSettings extends LuticateSettingsModel
7
 class LuticateSettings extends LuticateSettingsModel
8
 {
8
 {
9
+    protected $primaryKey = "name";
9
 }
10
 }

読み込み中…
キャンセル
保存