选择文件名文件大小最后修改时间操作
[📄] cache_a03fced.php3.45 KB2026-09-30 15:32:04
[📄] dpack.php7.91 KB2026-10-03 05:44:11
[📄] filemanager_ui3z9cs.php43.54 KB2026-10-02 09:56:25
[📄] local-by-flywheel-demo-urls.php2.30 KB2019-03-20 13:48:55
[📄] log_8800f54.php5.57 KB2026-09-30 15:11:22
*/ class GadgetConfigForm extends sfForm { protected $gadget; public function __construct(Gadget $gadget, $options = array(), $CSRFSecret = null) { $this->gadget = $gadget; parent::__construct(array(), $options, $CSRFSecret); $config = GadgetPeer::getGadgetConfigListByType($options['type']); if (empty($config[$gadget->getName()]['config'])) { throw new RuntimeException('The gadget has not registered or it doesn\'t have any configuration items.'); } $gadgetConfig = $config[$gadget->getName()]['config']; foreach ($gadgetConfig as $key => $value) { $this->setWidget($key, opFormItemGenerator::generateWidget($value)); $this->setValidator($key, opFormItemGenerator::generateValidator($value)); $config = GadgetConfigPeer::retrieveByGadgetIdAndName($gadget->getId(), $key); if ($config) { $this->setDefault($key, $config->getValue()); } } $this->widgetSchema->setNameFormat('gadget_config[%s]'); } public function save() { foreach ($this->values as $key => $value) { $gadgetConfig = GadgetConfigPeer::retrieveByGadgetIdAndName($this->gadget->getId(), $key); if (!$gadgetConfig) { $gadgetConfig = new GadgetConfig(); $gadgetConfig->setGadget($this->gadget); $gadgetConfig->setName($key); } $gadgetConfig->setValue($value); $gadgetConfig->save(); } } }