Beiträge von Torty

    Habe versucht es über das ZMI zu machen, aber da finde ich auch keinen entspr. Eintrag. Also musst du folgenden Weg gehen:
    * gehe im ZMI zu portal_skins/custom
    * lege ein neues Script-Python mit der ID mkMembers an
    * editiere das Objekt und füge den Code ein

    Code
    portal = context.portal_url.getPortalObject()
    if not hasattr(portal, 'Members'):
        portal.invokeFactory(id='Members', type_name='Large Plone Folder')
    
    
        if hasattr(portal, 'Members'):
            return 'new Members-folder created'
        else:
            return 'something wrong - new Members-foldern wasnt created'


    * speichere es und gehe oben auf Proxy und markiere dort Manager -> Speichern
    * gehe nun im Browser auf deine Site (z.B. 192.168.0.3:8080/mySite)
    * erweitere die URL dann um den Anhang /mkMembers so dass dann da steht 192.168.0.3:8080/mySite/mkMembers

    Nun sollte auf dem Bildschirm erscheinen: new Members-folder created

    Damit solltest du wieder einen Members-Ordner haben.

    Try it and give feedback!
    Torty

    Hallo Carlos,
    mir wird hier angeeigt, dass Members ein ATBTreeFolder ist. Diesen kannst du über das ZMI sicher erzeugen. Ob es noch weitere Verkettungen gibt ist mir im Moment nicht bewusst. Probiers doch einfach mal so aus, dass du den ATBTreeFolder neu erstellst und ihm die Id Members und auch den Title Members gibst.

    Good luck!
    Torty

    Zitat von Carolyn

    Das gilt, solange keine größeren Bilder beinhaltet sind und man eine schnelle Leitung und einen einigermaßen leistungsstarken PC hat. Vergesst die ISDN- oder Modem-Nutzer nicht, ok? Gibt immer noch Gegenden in D, in denen kein DSL verfügbar ist.

    (Was nicht heißt, dass ich an dieser Zwischenseite hänge, ist mir ziemlich egal, ob sie da ist oder nicht.)


    ^^ Achtung - Gedankenfalle: Wenn jemand mit Modem in dem Thread drin ist und auf antworten geht, so hat er alle Inhalte ja bereits im Cache. Also dürfte der Seitenaufbau nicht länger dauern als bei DSL.

    Shila:
    Jupp - die Warterei kann ich schwer verkraften... ;)

    Bei Fragen wie "Wo ist XYZ definiert?" gehe ich wie folgt vor (Linux-Weg)
    * Console öffnen
    * egrep -n "(def XYZ)" {PATH_TO_PRODUCTS_FOLDER} -R

    Der ^^ Pfad weist auf das Products-Verzeichnis wo auch CMFPlone etc. abgelegt ist. Dann bekommt man alle Fundstellen mit Angabe der Zeilennummer angezeigt.
    Hier ein Bsp.:

    Zitat

    egrep -n "(def getHomeUrl)" /var/opt/zope2.8.6/inst_2/Products/ -R

    /var/opt/zope2.8.6/inst_2/Products/CMFDefault/MembershipTool.py:288: def get omeUrl(self, id=None, verifyPermission=0):
    /var/opt/zope2.8.6/inst_2/Products/CMFCore/interfaces/portal_membership.py:86: def getHomeUrl(id=None, verifyPermission=0):
    /var/opt/zope2.8.6/inst_2/Products/CMFCore/MembershipTool.py:526: def getHom Url(self, id=None, verifyPermission=0):


    Die Ausgabe zeigt also Pfad/Datei:Zeilennummer CODE_DER_ZEILE

    ^^ praktisch oder?!

    Torty

    Hallo Admin,
    seit ich in einem Forum unterwegs bin, wo man nach dem erstellen eines eigenen Post direkt auf die entspr. Threadansicht incl. Sprung zum eigenen Post gelangt, stosse ich mich an dem hier verwendeten System.
    In forum-hilfe ist es aktuell so, dass man nach dem Erstellen eines Post auf eine Zwischenseite gelangt, die man jedesmal (!) mit einem Klick verlassen muss und dann in die entspr. Threadansicht zum eigenen neuen Post gelangt.

    Frage: Lässt sich diese Zwischenseite nicht deaktivieren?

    Dadurch, dass man ja direkt zum eigenen neuen Post geleitet wird, hat diese Zwischenseite eigentlich keinerlei Funktion. Außer Maustaste quälen. ;)

    Falls nicht klar sein sollte was ich meine - was ich auch verstehen könnte - so schreibt mir das. Ich führe es dann etwas mehr aus.

    Torty

    Das System funktioniert auf dem index_html-Prinzip. Diese Funktion ist direkt so auch in den entspr. Klassen implementiert. Das heißt es gibt bsp.weise Methoden die index_html() heißen.
    Man hat jedoch die Möglichkeit unter portal_properties/site_properties im Feld default_page sich zusätzliche ID's zu definieren, die dann wie auch index_html automatisch aufgerufen werden.

    Einen solchen Mechanismus in Abhängigkeit vom Contenttype ist mir nicht bekannt. Aber ich weiß ja auch nicht viel...

    Torty

    Also das kann man nicht so ohne Weiteres sagen. Es könnten auch alles Ordner sein. In Plone existiert folgender Mechanismus:
    Wird ein ordnerartiges Objekt aufgerufen (per URL) geht Plone dort hin und prüft, ob es ein Objekt mit der ID(!) index_html gibt. Falls ja wird statt des Ordners das gefundene Objekt angezeigt. Anderenfalls kommt der view des Ordners zur Anwendung.
    Wenn du also in einem Ordner /xyz eine Ploneseite mit der ID index_html anlegst, so wird beim Aufruf des Ornders /xyz real das Objekt /xyz/index_html aufgerufen bzw. angezeigt.

    Hilft dir das weiter?
    Torty

    Hallo Ploner,
    Maik Derstappen und ich hatten die Idee eines ATDocument inklusive Bildern gehabt. Also etwas zusammengehöriges, was sich besser handl'n lässt als ATDocument mit seperat verlinkten Bildern.
    Also hat Maik den 1.Entwurf des ATMP (ATMediaPage) erstellt. Danach haben wir noch ein paar Sichten erstellt und sind aktuell bei der Version 0.1.4. Version 0.1.5 ist in Arbeit und kurz vorm Release.

    ATMediaPage ist ein folderish Objekt welches die Eingabe einer gewohnten Ploneseite (ATDocument) ermöglicht. Dieser Seite sind Bilder (ATImage) zugeordnet (enthalten), die dann in verschiedenen Sichten ausgegeben werden. Die Bilder müssen veröffentlicht sein.

    Schaut euch das Teil mal an und findet heraus was euch gefällt und was nicht. Über entsprechendes Feedback freuen wir uns natürlich sehr.

    ATMP auf sourceforge

    Torty

    Das Products-Verzeichnis war schon ganz richtig. Um nun auch die Plonesite deines Kollegen zu übernehmen, musst du von seiner Seite den Export bei dir importieren.

    Vergegenwärtige dir, dass die Plonesite nichts weiter ist wie eine Verkettung vieler Objekte (also Instanzen der Zope-, CMF-, Plone-Klassen etc.). Um nun diese Hierarchie zu übernehmen ist der besagte Export nötig.

    Falls du also Manager-Rechte für die bestehende Seite hast so tue folgendes:
    * login als Manager auf der "alten" Seite
    * im ZMI-Root das Kästchen vor der "alten" Plonesite (ID?) aktivieren
    * unten auf "Import/Export" klicken
    * Download to local machine
    * Ziel wählen und saugen

    Dieses *.zexp-File musst du nun in den Ordner /import deiner Zope-Instance kopieren. Dieser Ordner liegt quasi auf selber Ebene wie dein Products-Verzeichnis.
    * starte dein Zope
    * login als Manager auf dein Zope
    * im ZMI-Root klicke unten auf "Import/Export"
    * unter Import file name - das eben kopierte File auswählen
    * auf "Import" klicken

    Bevor importiert werden kann, müssen die benötigten Produkte und externen Methoden in deiner Zope-Instance verfügbar sein.
    Die externen Methoden sind Python-Dateien die sich im /Extensions-Ordner der Zope-Instance befinden. Diese musst du also mitkopieren.

    Probier das mal so und falls es Probs gibt, komm zurück und poste sie einfach...

    Torty

    Schreibe aber deine Änderungen lieber in die PloneCustom.css welche du von plone_styles "customize"ieren musst.

    Im Prinzip sollte solch ein Style dir schon helfen:

    Code
    #portal-searchbox {
        position: absolute;
        top: -1.0em;
    }

    Torty