Example #1
0
 public function testOptions()
 {
     $element = $this->getElement();
     $allSeries = Opus_Series::getAll();
     $this->assertEquals(count($allSeries), count($element->getMultiOptions()));
     $index = 0;
     foreach ($element->getMultiOptions() as $seriesId => $label) {
         $this->assertEquals($allSeries[$index]->getId(), $seriesId);
         $this->assertEquals($allSeries[$index]->getTitle(), $label);
         $index++;
     }
 }
Example #2
0
 public function init()
 {
     parent::init();
     $this->setRequired(true);
     $this->setDisableTranslator(true);
     // Schriftenreihen werden nicht übersetzt
     $validator = new Zend_Validate_Int();
     $validator->setMessage('validation_error_int');
     $this->addValidator($validator);
     $options = Opus_Series::getAll();
     foreach ($options as $option) {
         $this->addMultiOption($option->getId(), $option->getTitle());
     }
 }
 * @version     $Id: reassign_doc_sort_order.php 12918 2014-01-21 10:06:02Z esimon $
 */
/**
 * 
 * Setzt die interne Sortierreihenfolge (doc_sort_order) für die einer
 * Schriftenreihe zugeordneten Dokumente auf Basis der vergebenenen Bandnummern
 * neu.
 *
 * Dazu werden für eine Schriftenreihe alle Bandnummern der zugeordneten
 * Dokumente ermittelt. Die Dokumente werden anschließend der Schriftenreihe
 * neu zugeordnet. Als Sortierkriterium wird dabei die existierende Bandnummer
 * betrachtet. Sind alle Bandnummern numerisch, so wird numerisch nach
 * Bandnummer sortiert; andernfalls lexikographisch nach Bandnummer.
 *
 */
foreach (Opus_Series::getAll() as $series) {
    echo "\nreassign doc_sort_order for documents in series #" . $series->getId() . ': ';
    $docIds = $series->getDocumentIds();
    if (empty($docIds)) {
        echo "no documents found -- nothing to do\n";
        continue;
    }
    echo count($docIds) . " documents found\n";
    $seriesNumbers = array();
    foreach ($docIds as $docId) {
        $doc = new Opus_Document($docId);
        foreach ($doc->getSeries() as $docSeries) {
            if ($docSeries->getModel()->getId() === $series->getId()) {
                $seriesNumbers[$docId] = $docSeries->getNumber();
            }
        }
 public function testSeriesIdIsShownInTable()
 {
     $this->dispatch('/admin/series');
     $allSeries = Opus_Series::getAll();
     foreach ($allSeries as $series) {
         $seriesId = $series->getId();
         $this->assertXPathContentContains('//td', "(ID = {$seriesId})");
     }
 }
 private function restoreVisiblitySettings()
 {
     foreach (Opus_Series::getAll() as $seriesItem) {
         $seriesItem->setVisible($this->visibilities[$seriesItem->getId()]);
         $seriesItem->store();
     }
 }
 private function setSortOrders($sortOrders)
 {
     foreach (Opus_Series::getAll() as $seriesItem) {
         $seriesItem->setSortOrder($sortOrders[$seriesItem->getId()]);
         $seriesItem->store();
     }
 }