Zum Inhalt springen

komischer Fehler mit JW Calendar

Erstellt am 29. September 2007 · 2 Antworten · letzte Antwort am 1. Oktober 2007

Tags: RealURL, Kalender & Termine, Frage

Billix ·

Hallo, habe JW Calendar installier und alles Funktionier soweit bist auf einen Fehler!

Wenn ich jetzt per Dropdown eine Kategorie auswähle dann bekomme ich einen falschen Pfad

http://www.domain.com/html/veranstaltungen/veranstaltungen/listenansicht/details/////Listenansicht/1190310240/1033.html?tx_jwcalendar_pi1%5Bcat%5D=2&cHash=d7e7d5b1c8

Wenn ich das veranstaltungen/ raus lösche funktioniert es.

Sonderbar ist dabei das dieser Fehler nur im IE auftritt und nicht im FF
das heißt das er im FF den richtigen Pfad hin schreibt.
komischt!

meine Realurl conf.

...
 'details' => array(
    array(
      'GETvar' => 'tx_jwcalendar_pi1[action]',
      'valueMap' => array(
        'Ereignis' => 'singleView',
        'Veranstalter' => 'organizerView',
        'Veranstaltungsort' => 'locationView',
        'Tagesansicht' => 'dayView',
      )
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[eventid]', 
      'lookUpTable' => array(
        'table' => 'tx_jwcalendar_events', 
        'id_field' => 'uid', 
        'alias_field' => 'teaser', 
        'addWhereClause' => ' AND NOT deleted', 
        'useUniqueCache' => 1, 
        'useUniqueCache_conf' => array(
          'strtolower' => 1, 
          'spaceCharacter' => '-',
        ),
      ),
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[orguid]', 
      'lookUpTable' => array(
        'table' => 'tx_jwcalendar_organizer', 
        'id_field' => 'uid', 
        'alias_field' => 'name', 
        'addWhereClause' => ' AND NOT deleted', 
        'useUniqueCache' => 1, 
        'useUniqueCache_conf' => array(
          'strtolower' => 1, 
          'spaceCharacter' => '-',
        ),
      ),
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[locuid]', 
      'lookUpTable' => array(
        'table' => 'tx_jwcalendar_location', 
        'id_field' => 'uid', 
        'alias_field' => 'location', 
        'addWhereClause' => ' AND NOT deleted', 
        'useUniqueCache' => 1, 
        'useUniqueCache_conf' => array( 
          'strtolower' => 1, 
          'spaceCharacter' => '-',
        ),
      ),
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[view]',
      'valueMap' => array(
        'Monatsansicht' => 'MONTH',
        'Listenansicht' => 'LIST',
        'Tagesansicht' => 'DAY',
      ),
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[time]',
    ),
    array(
      'GETvar' => 'tx_jwcalendar_pi1[uid]',
    ),
  ),
...

Sitzte schon Tage an diesem Problem, wäre dankbar für Hilfe.

LG Billix

Billix ·

Ok habe den Fehler gefunden, kenne mich leider jedoch mit php nicht so gut aus, vielleicht kann mir jemand helfen wie ich den code richtig schreiben muss.

nach langem probieren habe ich eine anderer veranstaltungs ext.(mjseventpro ) genommen.
jedoch war hier der gleiche dropdown fehler. nach langem suchen hatte ich die lösung

ich musste folgendens ändern:

von

		$opt[] = '<option value="'htmlentities($this->pi_linkTP_keepPIvars_url('', $this->allowCaching))
				.'">alle</option>';

zu

		$opt[] = '<option value="'.$GLOBALS['TSFE']->baseUrl.
				htmlentities($this->pi_linkTP_keepPIvars_url('', $this->allowCaching))
				.'">alle</option>';

also ich musste nur das .$GLOBALS['TSFE']->baseUrl. hinzufügen

ich denke mal das bei JW_CALENDER das gleich muss

die passende stelle aus der datei class.tx_jwcalendar_pi1_library.php

  function selectInputOnChange($name, $array, $selected="", $onChange="", $size=1, $emptyItem=false){
		$out .= "<select name=\"$name\" class=\"tx_jw_select\" onChange=\"$onChange\" size=\"$size\">\n";
   	if($emptyItem) $out .= "<option>--</option>\n";
    foreach($array as $value => $label){
      $sel = ((string)$label == (string)$selected)?" selected='true'":"";
    	$out .= "<option value=\"$value\" $sel>$label</option>\n";
    }
		$out .= "</select>\n";
    return $out;
  }

ich weiss jedoch leider nicht wie ich den syntax hier einbinden kann habe schon alles mir mögliche ausprobiert!

vielleicht kann mir jemand helfen.
LG Billix

Billix ·

hab die lösung gefunden!

in der datei
ext/jw_calendar/pi/class.tx_jwcalendar_pi1_library.php

diese zeile finden (gibt es 2 mal somit auch 2 mal erstetzten)

$out .= "<option value=\"$value\" $sel>$label</option>\n";

und mit dieser ersetzten

$out .= "<option value=".$GLOBALS['TSFE']->baseUrl."$value\" $sel>$label</option>\n";