Questions & Answers

aVogt
Returning Creator

"Freigabe nutzen" nur in bestimmten Bereichen

Hallo,

ehe ich ein FR erstelle:

Wir haben Medien, bzw. Inhalte die noch mal durch eine zweite person kontrolliert werden mรผssen. Deswegen nutzen wir die Freigabe mit einem 4-Augen -Arbeitsablauf. Dadurch mรผssen aber auch alle anderen Inhalte und Medien freigegeben werden (einfacher Arbeitsablauf). Das gefรคllt den Redakteuren nicht.

Gibt es eine Mรถglichkeit die Freigabe (Einstellung unter Projekteinstellungen -> Optionen -> Freigabe nutzen) nur auf bestimmte Bereiche festzulegen?

0 Kudos
3 Replies
feddersen
Community Manager

Nein, die Einstellung wirkt sich immer auf das gesamte Projekt aus. Sie kรถnnen natรผrlich unterschiedliche Freigaberechte und auch unterschiedliche Freigabeworkflows verwenden. So kann in einem Bereich ein 4-Augen-Arbeitsablauf notwendig sein, wรคhrend in einem anderen Bereich jeder Objekte freigeben darf.

0 Kudos

Ok. Das Freigeben der eigenen Objekte ist sicher mรถglich, das gefรคllt aber den Nutzern (leider) nicht. Die sehen auch event. Vorteile nicht (z.B. Arbeitsstand - morgen weiter arbeiten). Der Klick "Freigabe" ist denen zu viel

0 Kudos
hoebbel
Crownpeak employee

Hallo Herr Vogt,

dann besteht natรผrlich die Mรถglichkeit, die Freigabe vor der Verรถffentlichung automatisiert durchzufรผhren.

Folgendes Skript habe ich mal geschrieben, um sicherzustellen, dass alle Ordner in der Inhalte-Verwaltung im Freigabestand vorhanden sind [Grundgedanke ist hier, dass sichergestellt wird, dass Seiten in der Inhalte-Verwaltung durch geschickte Verschiebeoperationen nicht aus dem Freigabestand ausgehรคngt werden kรถnnen]

Solcher Code macht natรผrlich nur bei relativ kleinen Projekten Sinn. Wenn Sie groรŸe Projekte haben, dann wรคre es sinnvoller, รผber die ร„nderungen seid der letzten Durchfรผhrung des Skriptes zu iterieren und eine Liste mit geรคnderten Knoten zu ermitteln und diese dann entsprechend abzuarbeiten.

import de.espirit.firstspirit.access.store.Store;

import de.espirit.firstspirit.access.store.IDProvider;

userservice = connection.getProjectById(context.getProject().getId()).getUserService(); //schreibender Zugriff, also muss eine eigene Verbindung definiert werden, wobei der angegebene Benutzer ausreichend rechte haben muss!

pagestore = userservice.getStore(Store.Type.PAGESTORE,false);

storeElements = pagestore.getChildren(de.espirit.firstspirit.access.store.pagestore.PageFolder.class,true);

storeElementCounter = storeElements.iterator();

while (storeElementCounter.hasNext()) {

    elem = storeElementCounter.next();

    if (!elem.isInReleaseStore()) {   

        try {

            elem.setLock(true,false);

            elem.release(false);

        } catch (Exception e) {

            context.logInfo("lock or release not possible for pagestore folder:" + elem.getUid() + " (ID:" + elem.getId() + ")");

        }

        try {

            elem.setLock(false,false);

        } catch (Exception e) {

        }

    }

}

context.setStartTime(new Date());

Viele Grรผsse aus Dortmund,

  Holger Hรถbbel

0 Kudos

Type a product name