[Kobv-opus-tester] Änderung der Daten per Skript
Sascha Szott
szott at zib.de
Mon Apr 23 10:40:56 MEST 2012
Hallo Herr Neuber,
wenn Sie in Ihrem Skript dafür sorgen, dass das Dokument in den Zustand
(serverstate) *published* überführt wird, dann kümmert sich das
OPUS-Framework automatisch um das Setzen der entsprechenden Zeitstempel
(server_date_modified, server_date_published) und die Aufnahme des
Dokuments in den Suchindex.
Das könnte in etwa so aussehen (sie können sich an dem Skript
$BASEDIR/opus4/scripts/snippets/release_all_unpublished_docs.php
orientieren):
$docId = ... // wird von außen übergeben
$doc = new Opus_Document($docId);
$doc->setServerState('published');
$doc->store();
Beste Grüße,
Sascha Szott
On 23.04.2012 09:21, Neuber, Daniel [RZ/Studienberatung] wrote:
> Hallo zusammen,
>
> wir haben an unserem OPUS-System die Anforderung, Sperrfristen für
> Abschlussarbeiten zu berücksichtigen. Dies soll automatisiert erfolgen.
> Das heißt, wenn ein Dokument heute eingestellt, aber erst in einem Jahr
> veröffentlicht werden darf, dann soll dieses auch erst in einem Jahr in
> der Suche aufgelistet werden. Mir wurde bereits gesagt, dass dies
> aktuell nicht möglich ist. Nun würde ich hierfür gern ein kleines Skript
> schreiben, das täglich das Feld „CompletedDate“ prüft und dann das
> Dokument frei gibt oder nicht. Mein bisheriger Versuch besteht darin,
> die Felder „server_date_modified“, „server_date_published“ und
> „server_state“ zu ändern. Doch leider ist das Dokument dann immer noch
> nicht in der Suche enthalten. Welche Felder werden von OPUS verändert,
> wenn ein Dokument freigeschaltet wird?
>
> Vielen Dank und viele Grüße
>
> Daniel Neuber
--
Sascha Szott :: KOBV/ZIB :: <szott at zib.de> :: +49 30 84185-457