Page 1 of 2
[opgelost] Pagina's beveiligen met meerdere contentblocks
Posted: Sat Jul 31, 2010 9:33 am
by iStevo
Code: Select all
<div id="content">
{content block="First Content Block" wysiwyg="false" oneline="true"}<br />
{content block="Second Content Block"}<br />
{content block="Third Content Block"}<br />
{content block="Fourth Content Block" wysiwyg="false" oneline="true"}<br />
{content block="Fifth Content Block" wysiwyg="false" oneline="true"}<br />
</div>
Ik ben aan het puzzelen met content blocks, kan je volgende uitvoeren of niet? Ik krijg steeds foutmelding.
In block 1 komt {if $ccuser->loggedin()}
In block 2 komt voortekst
In block 3 komt tekst
In block 4 komt {gallery}
In block 5 komt {else}U hebt geen toestemming tot deze informatie.{/if}
waardoor de gevoelige code los staat van de teksten die je kan bewerken.
Probleem is dat ik deze foutmelding krijg
string(142) "Smarty error: [in content:First_Content_Block line 1]: syntax error: unclosed tag \{if} (opened line 1). (Smarty_Compiler.class.php, line 317)"
Re: puzzelen met content blocks
Posted: Sat Jul 31, 2010 10:06 am
by Jos
Wil je met het eerste en laatste blok instellen of de pagina-inhoud beveiligd moet zijn of niet?
Probeer het dan eens zo:
Code: Select all
{content block="First Content Block" wysiwyg="false" oneline="true" assign=loggedin}
<div id="content">
{if empty($loggedin) || $ccuser->loggedin()}
{content block="Second Content Block"}<br />
{content block="Third Content Block"}<br />
{content block="Fourth Content Block" wysiwyg="false" oneline="true"}<br />
{else}
<p>U hebt geen toestemming tot deze informatie.</p>
{/if}
</div>
Op deze manier is je inhoud afgeschermd als je iets willekeurigs in het eerste blok hebt ingevuld.
Re: puzzelen met content blocks
Posted: Sat Jul 31, 2010 12:41 pm
by iStevo
Jos wrote:
Wil je met het eerste en laatste blok instellen of de pagina-inhoud beveiligd moet zijn of niet?
Probeer het dan eens zo:
Code: Select all
{content block="First Content Block" wysiwyg="false" oneline="true" assign=loggedin}
<div id="content">
{if empty($loggedin) || $ccuser->loggedin()}
{content block="Second Content Block"}<br />
{content block="Third Content Block"}<br />
{content block="Fourth Content Block" wysiwyg="false" oneline="true"}<br />
{else}
<p>U hebt geen toestemming tot deze informatie.</p>
{/if}
</div>
Op deze manier is je inhoud afgeschermd als je iets willekeurigs in het eerste blok hebt ingevuld.
Jos,
In mijn uitwerking ging ik ervan uit dat sjabloon gewoon blokken leest zoals ze zijn en dat door de beveiligingscode op te splitsen de pagina al dan niet gelezen kon worden. Maar dit lukte niet doordat in eerste blok de code niet correct gesloten werd.
Ik heb eigenlijk 3 blokken nodig (2x tekst, 1 x gallery).
Sommige van die pagina's moeten afgeschermd zijn.
Als ik jouw uitwerking goed begrijp maak jij 4 blokken aan (blok 2-3 voor tekst, blok 4 voor gallery)
Alles is afhankelijk van blok 1. Is die leeg dan ziet iedereen de info maar staat daar iets in (gelijk wat) dan is info afgeschermd.
Begrijp ik het goed??
Als ik jouw voorstel lees is alles afhankelijk van mijn eerste blok. Als deze leeg is
Re: puzzelen met content blocks
Posted: Sat Jul 31, 2010 3:16 pm
by Jos
Klopt. Zo dacht ik dat jij het bedoelde

Re: puzzelen met content blocks
Posted: Sun Aug 01, 2010 7:02 am
by iStevo
Jos wrote:
Klopt. Zo dacht ik dat jij het bedoelde
Dat is ook zo.
Ga dit deze middag eens uitprobereren.
Thx.
Re: puzzelen met content blocks
Posted: Sun Aug 01, 2010 6:49 pm
by iStevo
Jos,
Waarom plaats jij de eerste content block uit de contentdiv en niet gewoon in de div zoals alle andere blokken??
Ik heb beiden geprobeerd maar steeds met hetzelfde resultaat. Ik kan in mijn admin duidelijk de blokken zien wat goed is, maar op de website niets. Zelf mijn menu en de tekst "U hebt geen toestemming tot deze informatie." zijn niet zichtbaar.
Grt Stevo
Re: puzzelen met content blocks
Posted: Sun Aug 01, 2010 8:53 pm
by Jos
Dat maakt inderdaad niet uit. Ik heb em erbuiten geplaatst, omdat deze feitelijk niet in de div weergegeven wordt. Hij wordt zelfs helemaal niet weergegeven in de frontend, vanwege de assign parameter.
Tis maar net wat je zelf mooi vindt.
Re: puzzelen met content blocks
Posted: Mon Aug 02, 2010 6:19 am
by iStevo
Mr_Stevo wrote:
Ik kan in mijn admin duidelijk de blokken zien wat goed is, maar op de website niets. Zelf mijn menu en de tekst "U hebt geen toestemming tot deze informatie." zijn niet zichtbaar.
Re: puzzelen met content blocks
Posted: Mon Aug 02, 2010 8:52 am
by Jos
Sorry, overheen gelezen... Kun je eens in je html-bron kijken wat er wel tevoorschijn komt? Staat de er wel? En wat zit erin?
Re: puzzelen met content blocks
Posted: Mon Aug 02, 2010 10:10 am
by iStevo
Code: Select all
</__body>
<div id="container_holder">
<div id="content_holder" class="container">
<div id="header"> </div>
<div id="content">
<br />
<br />
<br />
</div>
</div>
</div>
<__body>
Re: puzzelen met content blocks
Posted: Mon Aug 02, 2010 10:41 am
by Jos
Bijzonder... de
's staan er allemaal wel... Je hebt toch niet stiekem bij alle content blocks assign parameters toegevoegd?
Pagina's beveiligen met meerdere contentblocks
Posted: Mon Aug 02, 2010 12:09 pm
by iStevo
Jos,
Ga deze topic aanpassen want het gaat nu meer over pagina met meerdere contentblokken beveiligen.
Ik ben wat verder op zoek gegaan, ook na een tip van Rolf en ben op deze link uitgekomen.
http://docs.google.com/fileview?id=0BwR ... M2Fk&hl=en
Ik heb deze verder proberen uitvoeren binnen mijn project maar blijf opnieuw ergens steken.
Code: Select all
<div id="container_holder">
<div id="content_holder" class="container">
<div id="header"> </div>
<div id="menu">{if $ccuser->loggedin()}{menu}{else}{menu excludeprefix="private_"}{/if}</div>
<div id="content">
{content block="First Content Block" assign="priv"}<br />
{content block="Second Content Block" assign="priv"}<br />
{content block="Third Content Block" wysiwyg="false" oneline="true" assign="priv"}
{if private !=' '}
{if $ccuser->loggedin()}
{$priv}
{cms_module module=FrontEndUsers}
{else}
{cms_module module=FrontEndUsers}
{/if}{/if}
</div>
</div>
</div>
Re: Pagina's beveiligen met meerdere contentblocks
Posted: Mon Aug 02, 2010 1:41 pm
by Jos
Je hebt nu in alle contentblocks
assign="priv" staan. Daarmee definieer je 3 keer de variabele
$priv en die wordt dus telkens overschreven.
Verder zie ik:
Wat is private? Is het een variabele? dan mist er een dollarteken. Maar op welke plek krijgt die variabele een waarde?
Tot slot de functie van dit stukje code:
Code: Select all
{if private !=' '}
{if $ccuser->loggedin()}
Dit leg ik uit als volgt:
als private een spatie als waarde heeft, laat dan niets zien, anders kijk of de gebruiker ingelogd is.
edit:
Is er eigenlijk een reden dat je de code uit deze post
http://forum.cmsmadesimple.org/index.ph ... #msg220083 helemaal overboord hebt gezet?
Re: Pagina's beveiligen met meerdere contentblocks
Posted: Mon Aug 02, 2010 2:01 pm
by iStevo
@ Jos, neen, het is niet de bedoeling dat ik uw code opzij schuif, maar ik was even verder op onderzoek uit en ik dacht dat ik de oplossing gevonden had (Nu blijkt dit niet zo te zijn).
Ik ben eigenlijk op zoek om de gevoelige code af te schermen van de gebruikers.
Code: Select all
{if $ccuser->loggedin()}welkom{else}U hebt Geen toegang tot deze pagina.{/if}
In uw oplossing sprak je met eerste en laatste box om deze af te schermen, maar eigenlijk moet dit maar in de eerste box zijn.
box 1 : aanduiden privaat of niet
box 2 : voortekst
box 3 : tekst
box 4 : gallery
Re: Pagina's beveiligen met meerdere contentblocks
Posted: Mon Aug 02, 2010 2:42 pm
by Jos
Ik vroeg het omdat het niet handig is om van de ene code op de andere te hinken, als je vanaf afstand moet helpen. Hoe is je code nu precies en wat heeft dit voor resultaat in je html-bron?