public function createNewModel() { $model = new Opus_DnbInstitute(); $model->setName('TestName'); $model->setCity('TestCity'); $model->setDepartment('TestDepartment'); $model->setAddress('TestAddress'); $model->setPhone('TestPhone'); $model->setDnbContactId('TestDnbContactId'); $model->setIsGrantor(true); $model->setIsPublisher(false); return $model->store(); }
public function testPopulateFromModel() { $form = new Admin_Form_DnbInstitute(); $model = new Opus_DnbInstitute(); $model->setName('TestName'); $model->setDepartment('TestDepartment'); $model->setAddress('TestAddress'); $model->setCity('TestCity'); $model->setPhone('TestPhone'); $model->setDnbContactId('TestDnbContactId'); $model->setIsGrantor(true); $model->setIsPublisher(false); $form->populateFromModel($model); $this->assertEquals('TestName', $form->getElement('Name')->getValue()); $this->assertEquals('TestDepartment', $form->getElement('Department')->getValue()); $this->assertEquals('TestAddress', $form->getElement('Address')->getValue()); $this->assertEquals('TestCity', $form->getElement('City')->getValue()); $this->assertEquals('TestPhone', $form->getElement('Phone')->getValue()); $this->assertEquals('TestDnbContactId', $form->getElement('DnbContactId')->getValue()); $this->assertTrue($form->getElement('IsGrantor')->getValue()); $this->assertEquals('0', $form->getElement('IsPublisher')->getValue()); $this->assertNull($form->getElement('Id')->getValue()); }
/** * Imports Faculties from Opus3 to Opus4 directly (without XML) * Faculty is also a DNB Institute * * @param DOMDocument $data XML-Document to be imported * @return array List of documents that have been imported */ protected function importFaculties($data, $role) { $mapFaculties = $this->_config->migration->mapping->faculties; $fileFaculties = null; try { $fileFaculties = @fopen($mapFaculties, 'w'); if (!$fileFaculties) { throw new Exception("Could not create '" . $mapFaculties . "' for Faculties.\n"); } } catch (Exception $e) { $this->_logger->log($e->getMessage(), Zend_Log::ERR); return; } $mapGrantors = $this->_config->migration->mapping->grantors; $fileGrantors = null; try { $fileGrantors = @fopen($mapGrantors, 'w'); if (!$fileGrantors) { throw new Exception("Could not create '" . $mapGrantors . "' for Grantors.\n"); } } catch (Exception $e) { $this->_logger->log($e->getMessage(), Zend_Log::ERR); fclose($fileFaculties); return; } $classification = $this->transferOpusClassification($data); $subcoll = array(); foreach ($classification as $class) { if (array_key_exists('fakultaet', $class) === false) { continue; } if (array_key_exists('nr', $class) === false) { continue; } /* Create a Collection for Faculty */ $root = $role->getRootCollection(); $coll = $root->addLastChild(); $coll->setName($class['fakultaet']); $coll->setVisible(1); $root->store(); $subcoll[$class["nr"]] = $coll->getId(); /* Create a DNB-Institute for Faculty */ $fac = new Opus_DnbInstitute(); $fac->setName($this->uniname); /* Changed since Opus 4.4.1: faculty is stored in distinct field 'department' * See Issue #OPUSVIER-3041 */ $fac->setDepartment($class['fakultaet']); $fac->setCity($this->unicity); $fac->setIsGrantor('1'); $fac->store(); $this->_logger->log("Faculty imported: " . $class['fakultaet'], Zend_Log::DEBUG); // echo "Faculty imported: " . $class['fakultaet'] ."\t" . $class['nr'] . "\t" . $subcoll[$class["nr"]] // . "\n"; fputs($fileFaculties, $class['nr'] . ' ' . $subcoll[$class["nr"]] . "\n"); fputs($fileGrantors, $class['nr'] . ' ' . $fac->getId() . "\n"); } fclose($fileFaculties); fclose($fileGrantors); return $subcoll; }