[TYPO3-UG Denmark] Activity Calendar

Jeppe Donslund jd at masters.dk
Wed Jun 2 10:32:54 CEST 2010


Det vil er:

find class.tx_activitycal_pi1.php filen i extensionmappen i 
typo3conf/ext/activitycal/pi1

Tilføje

case "nextEvent":
                 $content = $this->getNextEvent();
break;


Tilføje nedenstående et sted efter de andre funktioner

function getNextEvent($archived=0) {
         $templateFile = $this->conf["templateFile"];
         $this->templateCode = $this->cObj->fileResource($templateFile);

         $template = array();
         $template['list'] = 
$this->cObj->getSubpart($this->templateCode,'###LIST###');
         $template['row'] = 
$this->cObj->getSubpart($this->templateCode,'###LIST_ROW###');

         $archive_sql = " AND date < ". time();
         if ($archived == 0) {
             $archive_sql = " AND date > ".time();
         }

         $actrow = "";
         $storagefolder = $this->getStorageFolder();

         $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery("uid, subject, 
date, teaser, description", "tx_activitycal_event", 
"pid='$storagefolder' $archive_sql ", "", "date ASC", 1);
         while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {

             $p = array();
             $p['parameter'] = $this->conf["showEventPid"];
             $p['additionalParams'] = 
"&".$this->prefixId."[eventid]=".$row[uid];

             $link_url = $this->cObj->typoLink_URL($p);

             $dateformat = "d-m-Y";
             if ($this->conf["dateFormat"]) {
                 $dateformat = $this->conf["dateFormat"];
             }

             $markerArray = array();
             $markerArray["###DATE###"]          = date("$dateformat", 
$row[date]);
             $markerArray["###TEASER###"]        = $row[teaser];
             $markerArray["###SUBJECT###"]       = $row[subject];
             $markerArray["###DESCRIPTION###"]   = $row[description];
             $markerArray["###LINK_TEXT###"]     = 
$this->conf["showEventText"];
             $markerArray["###LINK_URL###"]      = $link_url;
             $actrow .= 
$this->cObj->substituteMarkerArrayCached($template['row'],$markerArray);
         }

         $markerArray = array();
         $markerArray["###LIST_ROW_INSERT###"] = $actrow;

         $content = 
$this->cObj->substituteMarkerArrayCached($template['list'],$markerArray);

         return $content;
     }


i flexform_ds.xml tilføjes

<numIndex index="3" type="array">
   <numIndex index="0">Show Next Event</numIndex>
   <numIndex index="1">nextEvent</numIndex>
</numIndex>


Det kan være, at sql delen i funtionen skal tilrettes lidt, men ellers 
burde det virke.

MVH
jeppe


Den 02-06-2010 10:23, Peder Høy Kristensen skrev:
> Det er lige præcis sådan noget, jeg har gjort i et andet csm-system, men jeg
> er endnu ikke så fortrolig med TYPO3, at jeg også kan gøre det her. Derfor
> spurgte jeg om hjælp i dette forum.
> Lidt mere konkrete anvisninger på, hvordan man gør den slags i TYPO3, ville
> jeg hilse meget velkomne.
>
> Venlig hilsen
> Peder Høy Kristensen
>
> -----Oprindelig meddelelse-----
> Fra: typo3-ug-denmark-bounces at lists.typo3.org
> [mailto:typo3-ug-denmark-bounces at lists.typo3.org] På vegne af Jeppe Donslund
> Sendt: 2. juni 2010 09:55
> Til: typo3-ug-denmark at lists.typo3.org
> Emne: Re: [TYPO3-UG Denmark] Activity Calendar
>
> Den 02-06-2010 09:17, Peder Høy Kristensen skrev:
>> Hej.
>>
>>
>>
>> Jeg anvender den lille extension ’Activity Calendar’  (activitycal) på et
>> website. Jeg bruger den til at vise en simpel liste over kommende
>> arrangementer. Det fungerer fint.
>>
>> Nu er der imidlertid opstået behov for alene at vise førstkommende
>> arrangement et andet sted på samme website. Det er ikke en option i den
>> almindelige opsætning, så hvordan gør jeg det? Kan jeg evt. sætte en kode
>> ind i et sideelement med ren html, som gør det? Alternativt: Findes der en
>> anden lige så enkel extension, der har det med som en mulighed? (Jeg har
>> søgt efter et alternativ, men ikke fundet det.)
>>
>>
>>
>> Venlig hilsen
>>
>> Peder Høy Kristensen
>>
>>
>>
> Er det ikke en mulighed at udvide extensionen med en ekstra funktion,
> der henter næstkommende aktivitet? Det kræver lidt php og mysql viden,
> men umiddelbart burde det kunne lade sig gøre.
>
> Jeg ville så, via en pi_flexform, gøre det muligt at vælge mellem enkelt
> aktivitet og liste der hvor man sætter pluginnet ind.
>
> MVH
> Jeppe Donslund
> _______________________________________________
> TYPO3-UG-Denmark mailing list
> TYPO3-UG-Denmark at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-ug-denmark
>



More information about the TYPO3-UG-Denmark mailing list