<%@LANGUAGE="VBSCRIPT"%> <% ' testsida: för bilder '*********************************************** ' Detaljsida för portfolio och nyheter. ' Procedur för sida '- hämta qs och sätt vars '- hämta data från post '- hämta array m bilder för post '- hämta mall för sidan '- bestäm vilken typ av sida och innehåll som ska visas '- hämta innehåll för visningstypen '- applicera innehållet på sidmallen '- skriv ut hela sidan '*********************************************** 'QS för Q, ID and KAT for article: 2400 i GetKAt.asp '*********************************************** ' Media type: new var typ kan vara txt,vid eller img ' om typ finns i QStr har vi klickat på readmore, video eller bild ' annars har vi klickat på länk eller bild från kategorisida ' BEHÖVS? egentligen kan vi klara oss med att kolla imgid,vid el curpage. möjligen behövs typ=txt typ = request.QueryString("typ") '- anv ej på små bilder 'Om vi har klickat på en bild för att förstora hämtar vi bildens ID qsimgid = request.QueryString("imgid") 'video id om vi har klickat på video vid = request.QueryString("vid") 'sidnummer för slidepage page = request.querystring("curPage") '****************** ' 2400 använder KAT istf Q som flagga (q används fortfarande för att hämta data bl.a). ' Kat ser till att vi är på rätt kategori och hämtar information som är nödvändig för kategorin: fr.a. id,rubrik,supkat. ' detta hämtas här via getKat som kollar vilken kat artikeln har. 'OBS! var för KAT heter katid! '**** sätt tillbaka katid="" om vi har gammal news if nType = "old" then katid = "" '*********************************************** ' ny malldriven sida med klasser ' article-content.asp ' - filer som ska in i rotering (bilder video, dok) ' - t.ex. en videoklass som dessutom hämtar embedkod, dok-klass, bildklass ' article-media.asp ' - används för att ladda bilder och media ink mediatempl ' klasser-posts.asp ' - hämtar data för posten, text etc '****************************** 'HÄMTA POST DATA FRÅN ARRAY '2400 slår ihop p och n if q = "p" then ' klasser-post hämta poster med detta katid rsarr = getOnePostArray(id,kat) ' 2500 - testar att ta in katarray för aktuell kat katposts = getPostArray(id,kat) '*** kontrollera array if isarray(katposts) then ' Kollar antal kolumner, startar på 0 katpostsCols = uBound(katposts,1) ' Kollar antal rader, startar på 0 katpostsRows = uBound(katposts,2) katp_recs = 1 katpHtml = "[txt]" katpStrOut = "" For katp_i = 0 to katpostsRows katp_id = katposts(0,katp_i) 'katid = rsarr(1,i) 'behövs eg ej! NJA. katid= visar att vi har gammal post. så detta blir en reset of sorts. 'feat = rsarr(2,i) katp_rubrik = katposts(3,katp_i) 'kortbesk = rsarr(4,i) 'besk = rsarr(5,i) katp_rubrik_sv = katposts(6,katp_i) katp_txt = katp_rubrik_sv if currlang = "en" then katp_txt = katp_rubrik 'sträng katpStr = "" katpStr = replace(katpHtml,"[id]",katp_id) katpStr = replace(katpStr,"[kat]",katid) katpStr = replace(katpStr,"[txt]",katp_txt) katpStrOut = katpStrOut & katpStr & "
" 'response.write "id: " & katp_id & " rub: " & katp_rubrik & " rub sv: " & katp_rubrik_sv & "
" next 'response.write katpStrOut end if '*** POST FÖR NYHETER elseif q = "n" then ' klasser-post hämta post med detta id,kat samt nType old/new (sätts i getkat) (getNewspost(id,q)) rsarr = getNews(id,kat,nType) end if 'data från array if isarray(rsarr) then ' Kollar antal kolumner, startar på 0 intCols = uBound(rsarr,1) ' Kollar antal rader, startar på 0 intRows = uBound(rsarr,2) 'ta ut variabler från array '2400: sqlFld="ID,KAT,feat,rubrik,kortbesk,besk,rubrik_sv,kortbesk_sv,besk_sv"_ '& ",pub,kortbesk2,kortbesk2_sv,ar,shopid" currid = rsarr(0,i) 'kat = rsarr(1,i) feat = rsarr(2,i) rubrik = rsarr(3,i) kortbesk = rsarr(4,i) besk = rsarr(5,i) rubrik_sv = rsarr(6,i) kortbesk_sv = rsarr(7,i) besk_sv = rsarr(8,i) '2300 pub = rsarr(9,i) if q = "p" then 'special P kortbesk2 = rsarr(10,i) kortbesk2_sv = rsarr(11,i) ar = rsarr(12,i) shopId = rsarr(13,i) elseif q="n" then 'special n pubdate = rsarr(10,i) end if 'response.write "

pub: " & pub & " a: " & MM_grantAccess 'dirigera vidare om posten är avstängd och vi inte är inloggad if lcase(pub) = "none" and MM_grantAccess=False then response.redirect "/nonexisting-page.asp" end if 'om rsarr false ingen post else response.write "

No id found!

" end if '******************* 'förbered text från post 'språk rub = rubrik if currlang = "sve" then rub = rubrik_sv besk = besk_sv kortbesk = kortbesk_sv kortbesk2 = kortbesk2_sv end if 'prep text if isnull(besk)=false then besk = prepTxt(cstr(besk),katid) else besk="" end if if isnull(kortbesk)=false then kortbesk = prepTxt(cstr(kortbesk),katid) else kortbesk="" end if if isnull(kortbesk2)=false then kortbesk2 = prepTxt(cstr(kortbesk2),katid) else kortbesk2="" end if 'nytt 219x 'kolla om vi har onepage och bara ingress. i så fall används ingressen som full text. 'denna funktion är till för att täcka äldre versioner. 'tagit bort 2530 efts det gör att readmore-knappar visas i onödan 'if kortbesk <> "" and besk="" then 'besk = kortbesk 'end if 'END HÄMTA POST '******************************* 'BILD ARRAT FÖR POST 'BILDER - hämtar array med bilder för den här artikeln (article-content) 'arg: id och typ (1=p,2=n,3=video) 'obs! 2402 sätter in katid i mixen för att plocka ut ref till nya resp gamla nyheter 'return: array med id,namn,txt,txte imgArr = doImgArray(currid,q,katid) '******************************* 'MALL '******************************* 'välj mall-fil beroende på tpl i kat. uppdelade mallar 2211 tpl_2 = getTplParam(tplparams,2) 'splittar tplparams returnerar tplnr för article (tplConv.asp) tplname = getTplname_detail(tpl_2,tpl) 'hämtar mallens namn (tplConv.asp) tpl = convTpl_detail(tpl_2,tpl) 'return värde enl gamla tpl (tplConv.asp) 'response.write "

tplname: " & tplname & ", tpl (out): " & tpl & ", tpl_2: " & tpl_2 & ", tplparams: " & tplparams & "" '******************************* 'alternativ för att hårdkoda tplname 'tplname = "start-1-3c" '**************** ' MALL INCLUDES ' gemensam p/n ' returnerar templ som HTML och ev. parametrar som tplParam_1 etc %> <% '********************* 'POSTARR - 2520 hämta poster för detta katid 'klasser.asp-post-ops postArrayHead = "" postArrayList = "" if artInCat = 1 and tpl=8 then postArrayHead = getKatFld(2,kat,0) postArrayList = getMenuPArray(postArray, kat,0,0,0) 'test 'response.write postArrayList postArrayList = "

" & postArrayHead & "

" & postArrayList & "" end if '********************* ' BESTÄM SIDTYP ' bestäm vilket innehåll som visas ' *** MAIN COLUMN FOR IMG, TEXT OR VIDEO ITEM ' kollar först om vi har typ fr qs som indikerar vilken typ som ska visas ' finns inte det utgår vi från sidmallen ' response.write "typ: " & typ & "
" imgpage = false txtpage = false vidpage = false slidepage = false 'ny 2212 'nytt! bildsidor utgår nu från page! typ=img anv ej mer i p if typ = "txt" then txtpage = true 'elseif typ = "vid" then elseif vid <> "" then vidpage = true elseif typ = "" then ' response.write "tpl2: " & templ & "
" '*********************************************** ' om ej typ i QString sätt typ beroende på tpl för denna post ' OBS! denna kan uppdateras om vi använder params från tplparams ' i så fall utgår vi bara från info i den. ' tpl 1 lista och bildsidor i två kolumner ' tpl 2 bilder och bildsidor i två kolumner ' if tpl 3 lista och textsidor (start text) ' if tpl 4 lista och textsidor (start bild) ' if tpl 5 bilder och video (start video) ' tpl 8 3col 1060/960 och tpl9? if tpl=1 or tpl=2 or tpl=4 then imgpage=true elseif tpl=6 then slidepage=true elseif tpl=3 or tpl=8 or tpl=9 then if page <> "" then imgpage=true else txtpage=true end if elseif tpl=5 then vidpage=true end if else 'imgpage = true end if ' test ' response.write "img: " & imgpage & "
txt: " & txtpage & "
vid: " & vidpage & "
" '*********************************************** ' CONTENT ' hämta och formatera innehåll '******************************* ' TEXT - html f innehåll på textsida ' gemensam p/n, special slide ' ny funk formArtTxt i article-content.asp: arg: kattext,rub,besk,mall (integer) txtStr = "" if slidepage=true then if tplParam_1 = "1" then txtStr = formArtTxt(kattxt,rub,besk,1) else txtStr = formArtTxt(kattxt,rub,besk,2) end if else txtStr = formArtTxt(kattxt,rub,besk,0) end if '*********************************************** ' MAIN COLUMN CONTENT ' Hämta innehåll beroende på typ mainContent = "" '*** BILDSIDOR if imgpage=true then '*** MAIN COL BILD - 2400 anv samma fnc som breda bilder if page = "" then page = 0 mainImg = getImgWide(imgArr,page,imgw,katid) if mainImg <> "" then mainContent = mainContent & mainImg else '*** ingen bild fanns, visa i stället text om arbetet mainContent = mainContent & txtStr end if '*** BREDA BILDER TPL 6 elseif slidepage=true then 'ny funk i article-content.asp: getImgWide(array byRef,page) 'page behövs för att vi ska veta vilken bild som skall visas (skickas m qs) if page = "" then page = 0 if isarray(imgArr) then '*** hämta aktuell bild från klass article-content.asp mainContent = mainContent & getImgWide(imgArr,page,imgwfull,katid) end if '*** ELSE VIDEO TYP (OCH AUDIO) elseif vidpage=true then 'nytt 2.2 funk i article-media. Vilka data behövs: id, vid, tpl 'testar ny getMainvid_2 mainVid = getMainvid_2(id,vid,tpl) mainContent = mainContent & mainVid '*** else we have a text page elseif txtpage = true then '*** ingen bild fanns, visa i stället text om arbetet mainContent = mainContent & txtStr end if '*** tillbakaknapp mainContent = mainContent & "

 

" mainContent = mainContent & backStr '*** skriv ut innehåll (test) 'response.write mainContent ' SLUT MAIN CONTENT '*************************** ' HÖGERKOLUMN ' använder tre variabler för att visa innehåll ' rightContent_img = bilder ' rightContent_info = information under bilderna ' rightContent_wdg = små widgets under informationen '*************************** ' BILDER - THUMBS rightContent_img = "" '*** tar in array i funk i article-content, loopar och returnerar html ' OBS funk anv params som är satta sedan tidigare (t.ex q) ' anv av både P och N ' nytt slidepage har option tplParam_2 = "1" och visar isf små bilder ' annars visas tummar bara för bildsida ' arg, array av tumnaglar, anv typ=img el curpage, katid (anv för gamla news) 'response.write "katid: " & katid if isarray(imgArr) AND slidepage=True AND tplParam_2 = "1" Then rightContent_img = rightContent_img & getImgTh(imgArr,1,katid) elseif isarray(imgArr) and slidepage=false then rightContent_img = rightContent_img & getImgTh(imgArr,0,katid) end if '**************************** 'INFO ABOUT WORK UNDER BILDER 'reset rightContent = "" if slidepage=false then 'Här måste vi städa upp. vad gäller för olika templates? 'Inga templates har årtal. 'Inga templates skall visa read more om vi har textsida 'bara tpl 1 skall ha kortbesk2 istf ingress 'bara tpl 2 skall ha ingress under 'txtram2 har ingen top margin! för video som inte visar bilder '2500 txtram sätts i detail-1 istället (tas bort?) ' if tpl=5 then ' ' txtramclass="txtram2" ' ' else ' ' txtramclass="txtram" ' ' end if 'rightContent = rightContent & "
" 'om vi inte har tpl=3 (lista och textsidor (start text)) 'varför utesluter vi tpl=3??? tpl 3 har bara ingen rubrik eller text under! if tpl=1 or tpl=2 or tpl=4 or tpl=5 or tpl=8 then rightContent = rightContent & UCase(rub) 'tpl4 har egen extra besk 'bara tpl 1 använder kortbesk2 'om kortbesk2 är tomt för tpl=1 anv ingen text if tpl=1 or tpl=8 then if kortbesk2 <> "" then if typ="txt" then 'nothing else 'rightContent = rightContent & "

" & kortbesk2 rightContentTxt = kortbesk2 end if end if elseif kortbesk <> "" then if typ="txt" then 'visa inget om vi har en textsida redan else 'rightContent = rightContent & "

" & kortbesk rightContentTxt = kortbesk end if end if 'skriv om vi har besk. men inte om vi har typ text if len(besk) > 5 and typ <> "txt" then 'response.write besk if typ <> "txt" and txtpage = false then 'read-morelänk artLink = setArtLink(currid,langStrArr(0) & " >",katid,"txt",0) 'rightContent = rightContent & artLink rightContentReadMore = artLink end if end if 'visa länk med läs mer om vi har en bildtemplate 'eller video 'NYTT 2220a - funk i html-snip.asp för länk: setArtLink() 'arg: a_link_id,a_link_rub,a_link_kat,a_link_typ,a_link_imgid 'ex. article.asp?q=p&id=" & currid & "&txtpage=main&typ=txt 'typ = "img" or typ = "vid" elseif imgpage=true or typ = "vid" then artLink = setArtLink(currid,langStrArr(2) & " " & (rub),katid,"txt",0) rightContent = rightContent & artLink end if 'rightContent = rightContent & "

" ' SLIDEPAGE (ny2300) elseif slidepage = True then 'anv f att visa text i maincol under bild rightContent = txtStr ' ' end chk content end if 'print info rightContent_info = rightContent '*** WIDGETS hämtas från article-content.asp. bara p rightContent_wdg = "" 'q = "p" and if slidepage=false then if nType <> "old" then '*** VIDEO WIDGET Visar länk till video med symbol (ny 2.2) 'obs ej gamla nyheter! rightContent_wdg = rightContent_wdg & getVidWidg(currid,kat) '*** DOK WIDGET Visar länk till dokument med symbol (ny 2.2) '2220b lägg till q '2600 visar för nya nyheter och p rightContent_wdg = rightContent_wdg & getDokWidg(currid,q) end if '*** CART WIDGET Visar länk till shop för detta item (ny 2.2) rightContent_wdg = rightContent_wdg & getCartWidg(shopId) '*** admin edit button (kräver 2200) rightContent_wdg = rightContent_wdg & getEditBtn(currid,kat) end if 'end chk q 'end if '*************************************************** 'CUSTOM HEAD 'måste in för att visa korrekt javascript på den här sidan if slidepage=true then if tplParam_1 = "0" then custHeadStr = "" custHeadStr = custHeadStr & "" custHeadStr = custHeadStr & "" end if end if '**************************************************** 'INLED TEMPLATES '*** applicera mallens html msgbody = tplHtml msgbody = replace(msgbody,"[MAIN_CONTENT]",mainContent) msgbody = replace(msgbody,"[RIGHT_IMG]",rightContent_img) msgbody = replace(msgbody,"[RIGHT_INFO]",rightContent_info) msgbody = replace(msgbody,"[RIGHT_INFO_TXT]",rightContentTxt) msgbody = replace(msgbody,"[RIGHT_INFO_READMORE]",rightContentReadMore) msgbody = replace(msgbody,"[RIGHT_WIDG]",rightContent_wdg) '2520 msgbody = replace(msgbody,"[POSTS_IN_CAT]",postArrayList) '*** NYTT - printa hela sidan utifrån base tpl 'var baseHtml satt i include baseTpl baseHtml = replace(baseHtml,"[SUBTITLE]"," - " & rub) baseHtml = replace(baseHtml,"[customHead]",custHeadStr) baseHtml = replace(baseHtml,"[mainContent]",msgbody) response.write baseHtml 'END PAGE '******************** %>