示例#1
0
文件: admin.php 项目: demental/m
 public function doExecApplier()
 {
     $form = new MyQuickForm('applyform', 'POST', M_Office::URL());
     $opts = M::tablesWithPlugin('tag');
     $opts = array_combine($opts, $opts);
     $form->addElement('select', 'table', 'Table', $opts);
     $form->addElement('textarea', 'clause', 'clause', 'rows="4" cols="60"');
     $form->addElement('text', 'tagname', 'tagname');
     $form->addElement('text', 'tagdel', 'tagdel');
     $form->addElement('checkbox', 'distinct', 'distinct');
     $form->addElement('submit', '__submit__', 'Apply');
     $form->addFormRule(array($this, 'checkApplier'));
     if ($form->validate()) {
         @set_time_limit(0);
         ini_set('memory_limit', '1024M');
         $values = $form->exportValues();
         $t = DB_DataObject::factory($values['table']);
         $query = 'SELECT ' . ($values['distinct'] ? 'DISTINCT ' : ' ') . $values['table'] . '.* FROM ' . $values['table'] . ' ' . $values['clause'];
         $t->query($query);
         while ($t->fetch()) {
             if ($values['tagname']) {
                 $t->addTag($values['tagname']);
             }
             if ($values['tagdel']) {
                 $t->removeTag($values['tagdel']);
             }
             $applied++;
         }
         $this->assign('success', 1);
         $this->assign('applied', $applied);
     }
     $this->assign('form', $form);
 }
示例#2
0
文件: i18n_test.php 项目: demental/m
 public function testWithNamePrefix()
 {
     T::setLang('fr');
     $t = DB_DataObject::factory('formtest');
     $t->fb_elementNamePrefix = 'test';
     $fb = MyFB::create($t);
     $form = new MyQuickForm('testform', 'POST', M_Office::URL());
     $post = array_merge($form->exportValues(), array('testtitre_group' => array('testtitre_fr' => 'Test titre', 'testtitre_en' => 'title', 'testtitre_es' => 'titulo'), 'testdescription_group' => array('testdescription_fr' => 'Nouv desc 2 FR', 'testdescription_en' => null, 'testdescription_es' => 'Nueva desc 2 ES'), 'testpays' => 'ma', 'testtestuser_id' => 1, '_qf__' . $form->getAttribute('name') => 1, 'testi18n_id_fr' => '', 'testi18n_id_en' => '', 'testi18n_id_es' => '', 'testid' => ''));
     $get = $_GET;
     $request = array_merge($get, $post);
     $form->initRequest($get, $post, $request);
     $fb->useForm($form);
     $fb->getForm();
     $form->validate();
     $form->process(array($fb, 'processForm'), false);
     T::setLang('es');
     $t2 = DB_DataObject::factory('formtest');
     $t2->get($t->id);
     $this->assertEqual($t2->titre, 'titulo');
     T::setLang('en');
     $t2 = DB_DataObject::factory('formtest');
     $t2->get($t->id);
     $this->assertEqual($t2->titre, 'title');
 }