public function regenerate($data, Form $form)
 {
     $form->sessionMessage('Regenerated script files', 'good');
     $class = $this->modelClass();
     $this->scriptService->generateScriptFilesFor($class);
     $this->owner->redirectBack();
 }
 public function script()
 {
     // we don't allow access unless the user is logged in
     if (!Member::currentUserID()) {
         return;
     }
     $type = $this->request->param('ID');
     $filename = $this->request->param('OtherID');
     $content = $this->scriptService->generateScriptDataFor($type, $filename, Versioned::current_archived_date());
     $this->response->addHeader('Content-type', 'text/javascript');
     return $content;
 }
 public function testGeneratedScript()
 {
     $this->logInWithPermission('ADMIN');
     $data = GenieTestObject::create(array('Title' => 'Titleone', 'FirstField' => 'OneFieldone', 'SecondField' => 'TwoFieldone'));
     $data->write();
     $data = GenieTestObject::create(array('Title' => 'Titletwo', 'FirstField' => 'OneFieldtwo', 'SecondField' => 'TwoFieldtwo'));
     $data->write();
     $svc = new ScriptGenieService();
     $svc->typeConfiguration = array('GenieTestObject' => array('default' => array('target_path' => __DIR__ . '/data')));
     $svc->generateScriptFilesFor('GenieTestObject');
     $generated = __DIR__ . '/data/default-GenieTestObject.js';
     $this->assertTrue(file_exists($generated));
     unlink($generated);
 }