OSDN Git Service

merged 3.15rc3 modification
[nucleus-jp/nucleus-jp-ancient.git] / euc / build / testcases / NP_PrePluginOptionsUpdate_TestCase1.php
1 <?php\r
2 class NP_PrePluginOptionsUpdate_TestCase1 extends NucleusPlugin {\r
3   \r
4 // --------- Plug-in Info ---------------------------------\r
5         // name of plugin\r
6         function getName() {\r
7           return 'NP_PrePluginOptionsUpdate_TestCase1';\r
8         }\r
9         \r
10         // author of plugin\r
11         function getAuthor() {\r
12           return 'TeRanEX';\r
13         }\r
14         // an URL to the plugin website\r
15         function getURL() {\r
16           return 'http://budts.be/weblog/';\r
17         }\r
18         \r
19         // version of the plugin\r
20         function getVersion() {\r
21           return '0.1';\r
22         }\r
23         \r
24         // a description to be shown on the installed plugins listing\r
25         function getDescription() {\r
26           return 'A plugin to test the PrePluginOptionsUpdate event and the enhancement to the PrePluginOptionsEdit event';\r
27         }\r
28         \r
29         function getEventList() { return array('PrePluginOptionsUpdate', 'PrePluginOptionsEdit'); }\r
30         \r
31         function install() {\r
32                 $this->createItemOption('TestValue', 'TestOption', 'text', 'foobar', '');\r
33                 $this->createMemberOption('MemberTestOptions', 'TestOption', 'text', 'foobar-member', '');\r
34         }\r
35   \r
36         //supported features\r
37         function supportsFeature($what) {\r
38           switch($what) {\r
39                 case 'SqlTablePrefix':\r
40                   return 1;\r
41                 default:\r
42                   return 0;\r
43           }\r
44         }\r
45         \r
46         function event_PrePluginOptionsUpdate(&$data) {\r
47                 if ($this->getID() == $data['plugid']) {\r
48                         //this belongs to us :-)\r
49                         //echo "PrePluginOptionsUpdate: TestCase-plugin<br/>";\r
50                         //echo "optionname: ".$data['optionname']."<br/>";\r
51                         //echo "context: ".$data['context']."<br/>";\r
52                         //echo "contextid: ".$data['contextid']."<br/>";\r
53                         //echo "value: ".$data['value']."<br/>";\r
54                         if ($data['value'] == '') {\r
55                                 $data['value'] = 'no-value';\r
56                         } else {\r
57                                 $data['value'] .= '-TEST';\r
58                         }\r
59                         //echo "new value: ".$data['value']."<br /><br/>";\r
60                 }\r
61                 \r
62                 if ($data['optionname'] == 'TestValue') {\r
63                         $data['value'] .= '|||'.requestVar('np_testcase_item');\r
64                 }\r
65         }\r
66         \r
67         \r
68         // function event_PrePluginOptionsEdit(&$data){\r
69                 // echo 'event: PrePluginOptionsEdit<br/>';\r
70                 // echo '$data: '.$data.'<br/>';\r
71                 // echo 'context: '.$data['context'].'<br/>';\r
72                 // echo 'contextid: '.$data['contextid'].'<br/>';\r
73                 // for ($i == 0; $i < count($data['options']); $i++) {\r
74                         // echo 'option-name: '.$data['options'][$i]['name'].' value: '.$data['options'][$i]['value'].'<br/>';\r
75                         // echo 'extra: '.$data['options'][$i]['extra'].'<br/>';\r
76                         // // $data['options'][$i]['extra'] .= 'test';\r
77                         // // echo 'new extra: '.$data['options'][$i]['extra'].'<br/>';\r
78                 // }\r
79         // }\r
80         \r
81         function event_PrePluginOptionsEdit(&$data) {\r
82                 //echo 'PrePluginOptionsEdit ';\r
83                 // if ($data['context'] == 'item') {\r
84                         //foreach($data['options'] as $option) {\r
85                         foreach (array_keys($data['options']) as $optionKey) {\r
86                                 $option = &$data['options'][$optionKey];\r
87                                 // if (($option['pid'] == $this->getID)&&($option['name'] == 'TestValue')) {\r
88                                 if (($option['name'] == 'TestValue') && ($option['pid'] == $this->getID())) {\r
89                                         $option['extra'] .= ' <input type="text" name="np_testcase_item" />';\r
90                                         //echo 'Extra: '.$option['extra'].'<br/>';\r
91                                 }\r
92                         // } \r
93                 }\r
94         }\r
95 }\r
96 ?>\r