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();
 }
Пример #2
0
 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());
 }
Пример #3
0
 /**
  * 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;
 }