Geschützten Bereich mit webEdition umsetzen

Fragen zum Erstellen von Templates für webEdition.
Benutzeravatar
e-site
webEdition Partner
webEdition Partner
Beiträge: 75
Registriert: Fr 27. Mai 2016, 09:33
Kontaktdaten:

Geschützten Bereich mit webEdition umsetzen

Beitragvon e-site » Di 7. Aug 2018, 15:55

Hallo Zusammen,
ich habe Probleme einen geschützten Bereich auf einer Website mit webEdition umzusetzen.
Ich weiß, das Thema ist nicht neu und wurde hier schon mehrere Male behandelt aber eine gute Lösung habe ich nicht gefunden:
Es sollen pro Benutzer eigene Dateien zum Download angeboten werden.
Bei Änderungen an den Dateien soll ein Benachrichtigung an den Benutzer, dass neue/geänderte Dateien zum Download vorliegen.
Die Downloads sollen wiederum gesperrt sein und nur für den jeweiligen angemeldeten Benutzer downloadbar sein.

Dazu habe ich im Download-Ordner einen jeweiligen Benutzerordner angelegt und im Kundenfilter "Nur bestimmte Kunden haben Zugriff" gesetzt und die Dateien habe ich mit dem Kunden verknüpft.
Die Ausgabe erfolgt momentan über eine Listview:
<we:setVar to="global" nameto="userid" from="sessionfield" namefrom="ID" />
<we:ifRegisteredUser userid="\$userid">
<we:listview type="document" name="pdfs" searchable="false" workspaceID="44" order="we_filename" desc="false">
<we:repeat>
<a target="_blank" href="<we:field name="we_path" />"><we:field name="wedoc_Text" /></a><br>
</we:repeat>
</we:listview>
</we:ifRegisteredUser>
Leider wird hier nur etwas ausgegeben, wenn ich die workspaceID angebe, aber dann ist es ja nicht mehr dynamisch pro User. Außer ich kann irgendwo die workspaceID der zugehörigen userid ermitteln.
Auch wird hier die .htaccess angezeigt, mit der ich auf die download.php weiterleite.

In der Kundenverwaltung habe ich noch "Dokumente des Kunden" entdeckt, nur wie kann ich dort Dokumente zuweisen?
Wäre das die Lösung für mein Problem?

Ich habe viel hier im Forum gesucht und getestet aber es funktioniert einfach nicht wie gewünscht.

Hat jemand einen Tipp für mich, wie ich pro User eigene Dokumente zuweisen und ausgeben kann?
Die Website läuft mit webEdition 8.0.3

Gruß
Heiko

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Geschützten Bereich mit webEdition umsetzen

Beitragvon mokraemer » Di 7. Aug 2018, 21:56

Hallo Heiko,
das ist viel auf einmal. Vielleicht sollte man das erst mal langsam runterbrechen.
Das verstehe ich nicht:

Code: Alles auswählen

<we:setVar to="global" nameto="userid" from="sessionfield" namefrom="ID" />
 <we:ifRegisteredUser userid="\$userid">
Der Teil ist gleichbedeutend mit

Code: Alles auswählen

<we:ifRegisteredUser>
Denn wenn du eine ID hast, dann bist du mit der auch registriert.

Das hier macht evtl. für dich Sinn. Es ist schon gut, wenn die Query in etwa weiß wo sie suchen muß. Deshalb wenn die Benutzerordner immer in /customers/xx/pdfs liegen, dann gibst du der LV den Workspace von /customers, dann muß die DB nicht alle anderen Einträge durchsuchen.

Code: Alles auswählen

<we:listview type="document" name="pdfs" searchable="false" workspaceID="44" order="we_filename" desc="false" customer="\$userid">
Evtl. kann man die Suche dann über

Code: Alles auswählen

<we:listview  [..] contenttypes="application/pdf"/>
auch noch etwas verfeinern.

Hilft das schon mal?
webEdition-Kern-Entwickler

Benutzeravatar
e-site
webEdition Partner
webEdition Partner
Beiträge: 75
Registriert: Fr 27. Mai 2016, 09:33
Kontaktdaten:

Re: Geschützten Bereich mit webEdition umsetzen

Beitragvon e-site » Mi 8. Aug 2018, 10:42

Hallo mokraemer,
das hilft schon einmal. Die workspaceID weise ich nun dem Kunden in der Kundenverwaltung zu:

Code: Alles auswählen

<we:ifRegisteredUser> 
		<we:comment>UserID und workspaceID an php-Variablen übergeben</we:comment>
		<we:setVar to="global" nameto="userid" from="sessionfield" namefrom="ID" />
		<we:setVar to="global" nameto="workspaceID" from="sessionfield" namefrom="WorkspaceID" />
		<we:listview type="document" name="pdfs" searchable="false" workspaceID="\$workspaceID" order="we_filename" desc="false" customer="\$userid" contenttypes="application/pdf">
			<we:repeat>
				<a target="_blank" href='<we:field name="we_path" />'><we:field name="wedoc_Text" /></a><br>
			</we:repeat>
		</we:listview>
</we:ifRegisteredUser>
Es sind jetzt nicht viele Kunden, unter 10 vielleicht. Also sollte diese Lösung so gut funktionieren.

Der Rest sollte jetzt gut machbar sein.

Aber ich weiss immer noch nicht, was es in der Kundenverwaltung mit den "Dokumenten des Kunden" auf sich hat.
Hat da jemand einen Link zum Einarbeiten für mich?

Gruß
Heiko

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Geschützten Bereich mit webEdition umsetzen

Beitragvon mokraemer » Mi 8. Aug 2018, 12:04

Aber ich weiss immer noch nicht, was es in der Kundenverwaltung mit den "Dokumenten des Kunden" auf sich hat.
Hat da jemand einen Link zum Einarbeiten für mich?
Du kannst einem Dokument/Objekt auf dem Reiter "Kunden" einem Kunden zuweisen. Afaik wird das Feld auch gesetzt wenn im Frontend ein Kunde eine Datei hochlädt (userinput).
Bei der Listview kann man dann auch genau auf dieses Feld zugreifen um alle Dokumente/Objekte eines Kunden zu finden:

Code: Alles auswählen

<we:listview [...] customers="1,23,99">[..]
webEdition-Kern-Entwickler


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste