Reputation: 5078
I have HMENU and TMENU inside. For TMENU.NO.after property I need to dinamically assign cObject based on current page uid?
Code:
#Privatni podmeni
lib.meni= HMENU
lib.meni.special = list
lib.meni.special.value = 5395, 5396, 5397, 5398
lib.meni.wrap = <ul id="menu" style="display:none;">|</ul>
lib.meni.1 = TMENU
lib.meni.1{
expAll = 1
NO {
allWrap = <li>|</li>
ATagParams.insertData = 1
ATagParams = class="drop _{field:uid}"
after.cObject < temp.meni5
}
}
I need this in pseudo-code:
IF field:uid = 5240
after.cObject < temp.meni5
IF field:uid = 5241
after.cObject < temp.meni6
IF field:uid = 5342
after.cObject < temp.meni7
How can I do this?
Upvotes: 0
Views: 2493
Reputation: 5078
I was able to get this done by using CASE object in TS. Here is example code:
temp.meni0= HMENU
temp.meni0.special = list
temp.meni0.special.value = 5417, 5418, 5419, 5420, 5421
temp.meni0.wrap = <div class="dropdown_5columns"><div class="col_1"><ul>|</ul></div></div>
temp.meni0.1 = TMENU
temp.meni0.1{
expAll = 1
NO {
allWrap = <li>|</li>
#ATagParams.insertData = 1
#ATagParams = class="drop"
}
}
temp.meni6= HMENU
temp.meni6 < temp.meni0
temp.meni6.special.value = 5431, 5432, 5433, 5434, 5435
temp.meni6.wrap = <div class="dropdown_5columns m-144"><div class="col_1"><ul>|</ul></div></div>
temp.meni7= HMENU
temp.meni7 < temp.meni0
temp.meni7.special.value = 5456, 5457, 5458, 5459, 5460
temp.meni7.wrap = <div class="dropdown_5columns m-288"><div class="col_1"><ul>|</ul></div></div>
temp.meni8= HMENU
temp.meni8 < temp.meni0
temp.meni8.special.value = 5466, 5467, 5470, 5471, 5472
temp.meni8.wrap = <div class="dropdown_5columns m-432"><div class="col_1"><ul>|</ul></div></div>
lib.meni= HMENU
lib.meni.special = list
lib.meni.special.value = 5395, 5396, 5397, 5398
lib.meni.wrap = <ul id="menu" style="display:none;">|</ul>
lib.meni.1 = TMENU
lib.meni.1{
expAll = 1
NO {
allWrap = <li>|</li>
ATagParams.insertData = 1
ATagParams = class="drop _{field:uid}"
#after.cObject < temp.meni5
after.cObject = CASE
after.cObject {
key.field = uid
default = TEXT
default.value = <span>NIJE OK!</span>
5395 < temp.meni0
5396 < temp.meni6
5397 < temp.meni7
5398 < temp.meni8
}
}
}
With this, I am able to insert very specific submenus for each menu item (page) of lib.menu
Upvotes: 1
Reputation: 3228
You can use COA cObject and set it partially:
lib.meni.1.NO.after.cObject = COA
lib.meni.1.NO.after.cObject {
10 < temp.meni5
10.if.equals.field = uid
10.if.value = 5240
20 < temp.meni6
20.if.equals.field = uid
20.if.value = 5241
30 < temp.meni7
30.if.equals.field = uid
30.if.value = 5342
}
But this will work in case your objects in temp.meni5, temp.meni6, temp.meni7 support stdWrap. Check TSref for details.
Upvotes: 1