예제 #1
0
		$paramkey='AGENDA_EXT_COLOR'.$i;
		$colorcal = $conf->global->$paramkey;
		if ($url && $namecal) $listofextcals[]=array('src'=>$url,'name'=>$namecal,'color'=>$colorcal);
	}
}

if (sizeof($listofextcals))
{
    require_once(DOL_DOCUMENT_ROOT."/comm/action/class/ical.class.php");
    foreach($listofextcals as $extcal)
    {
        $url=$extcal['src'];
        $namecal = $extcal['name'];
        $colorcal = $extcal['color'];
        //print "url=".$url." namecal=".$namecal." colorcal=".$colorcal;
        $ical=new ical();
        $ical->parse($url);
        $icalevents=array();
        if (is_array($ical->get_event_list())) $icalevents=array_merge($icalevents,$ical->get_event_list());
        if (is_array($ical->get_freebusy_list())) $icalevents=array_merge($icalevents,$ical->get_freebusy_list());

        if(count($icalevents)>0)
        {
            foreach($icalevents as $icalevent)
            {
                // Create a new object action
                $event=new ActionComm($db);
                $addevent = false;
                if($icalevent['DTSTART;VALUE=DATE']) //fullday event
                {
                    // For full day events, date are also GMT but they wont but converted using tz during output
예제 #2
0
파일: ical.php 프로젝트: Jacquesvw/phpBMS
<?php 
        }
        //endforeach
    }
    //end method
    function showCalendar()
    {
        $this->_sendHeaders();
        $this->_startCal();
        $this->_showEvents();
        $this->_endCal();
    }
    function _endCal()
    {
        ?>
END:VCALENDAR
<?php 
    }
}
//end class
//==============================================================================================================
if (isset($_GET["u"]) && isset($_GET["h"]) && !isset($dontProcess)) {
    $loginNoKick = true;
    $loginNoDisplayError = true;
    include "../../include/session.php";
    $theCal = new ical($db, $_GET["u"]);
    if ($theCal->verifyUser($_GET["h"])) {
        $theCal->addEvents(strtotime("-1 month", mktime(0, 0, 0)));
    }
    $theCal->showCalendar();
}
예제 #3
0
  Usage : {{cal src="http://mon.domai.ne/path/fichier.ics"}}

  **************************************************************************/
//on appele le fichier sans passer par wikini (pour l'appel ajax)
if (!defined("WIKINI_VERSION")) {
    $params['url'] = urldecode($_GET["url"]);
    $params['color'] = urldecode($_GET["color"]);
    $params['class'] = urldecode($_GET["class"]);
    $params['link'] = urldecode($_GET["link"]);
    include_once '../libs/ical.php';
    include_once '../libs/functions.ical.php';
} else {
    $params['url'] = $this->GetParameter("url");
    $params['color'] = $this->GetParameter("color");
    $params['class'] = $this->GetParameter("class");
    $params['link'] = $this->GetParameter("link");
    include_once 'tools/wikical/libs/ical.php';
    include_once 'tools/wikical/libs/functions.ical.php';
}
$cal = new ical();
$cal->parse($params['url']);
$data = $cal->get_event_list();
if (isset($_GET['timestamp'])) {
    $daytime = $_GET['timestamp'];
} else {
    $daytime = time();
}
$data = filterEvents(getMonthStartTS($daytime), getMonthEndTS($daytime), $data);
$data = makeMonth($daytime, $data);
printMonthCal($daytime, $data, $params);
예제 #4
0
<?php

// Librairie du parser d'iCal
require 'class.iCalReader.php';
setlocale(LC_ALL, 'fr_FR');
$ical = new ical('http://127.0.0.1/BdxCalendar/calendar.php?semester=IN601&group=2&filters=J1IN6014,J1IN6016,J1INPM01,N1MA6W31&anglais=450&groupBD=1&groupAlgo=0&groupAS=4');
$nb_events = $ical->event_count;
$events = $ical->events();
if (!isset($_GET['semaine'])) {
    $_GET['semaine'] = 0;
}
$current_date = strtotime('+' . $_GET['semaine'] . ' week', time());
$current_day = strtotime('last monday', strtotime('+3 day', $current_date));
$timestamp_ics = strftime('%Y%m%d', $current_day);
$last_day = strftime('%Y%m%d', strtotime('+4 days', $current_day));
$i = 0;
while (intval(substr($events[$i]['DTSTART'], 0, -8)) < intval($timestamp_ics)) {
    unset($events[$i]);
    $i++;
}
$i = $nb_events - 1;
while (intval(substr($events[$i]['DTSTART'], 0, -8)) > intval($last_day)) {
    unset($events[$i]);
    $i--;
}
$days = array();
foreach ($events as $event) {
}
$events = array_values($events);
echo strftime('Semaine %V', $current_date);
?>
예제 #5
0
<?php

// Librairie du parser d'iCal
require 'class.iCalReader.php';
// URL du calendrier d'HackJack
$url = 'http://www.hackjack.info/et/' . $_POST["semester"] . '_A/ical';
// Vérification de la validité du semestre séléctionné
if (get_headers($url)[0] != 'HTTP/1.1 200 OK') {
    echo 'error';
} else {
    $ical = new ical($url);
    $modules = array();
    $sub = array("Cours", "cours", "/", "TD", "td", "TP", "tp", "Machine");
    // Liste des modules
    foreach ($ical->events() as $event) {
        $modules[substr($event["SUMMARY"], -9, -1)] = ltrim(str_replace($sub, "", substr($event["SUMMARY"], 0, -11)));
    }
    ksort($modules);
    // Retour des modules sous forme de tableau JSON
    echo json_encode($modules);
}
 function getData()
 {
     global $mainframe, $option;
     $mainframe =& JFactory::getApplication();
     $document =& JFactory::getDocument();
     $lang = JFactory::getLanguage();
     if ($this->debug_info) {
         $this->pane =& JPane::getInstance('sliders');
         echo $this->pane->startPane('pane');
     }
     // die einstellungen der user holen
     $option = JRequest::getCmd('option');
     $params = JComponentHelper::getParams($option);
     $jlxmlfile = JPATH_ADMINISTRATOR . DS . 'components' . DS . $option . DS . 'config.xml';
     $jRegistry = new JRegistry();
     $jRegistry->loadString($params->toString('ini'), 'ini');
     //   echo 'Die aktuelle Sprache lautet: ' . $lang->getName() . '<br>';
     $teile = explode("-", $lang->getTag());
     $country = Countries::convertIso2to3($teile[1]);
     //   echo 'Das aktuelle Land lautet: ' . $country . '<br>';
     $option = JRequest::getCmd('option');
     $project = $mainframe->getUserState($option . 'project', 0);
     $lmoimportuseteams = $mainframe->getUserState($option . 'lmoimportuseteams');
     $whichfile = $mainframe->getUserState($option . 'whichfile');
     $mainframe->enqueueMessage(JText::_('welches land ? ' . $country), '');
     $mainframe->enqueueMessage(JText::_('welche art der datei ? ' . $whichfile), '');
     $delimiter = $mainframe->getUserState($option . 'delimiter');
     $post = JRequest::get('post');
     $this->_league_new_country = $country;
     $exportpositioneventtype = array();
     $exportplayer = array();
     $exportpersons = array();
     $exportpersonstemp = array();
     $exportclubs = array();
     $exportclubsstandardplayground = array();
     $exportplaygroundclubib = array();
     $exportteams = array();
     $exportteamstemp = array();
     $exportteamplayer = array();
     $exportprojectteam = array();
     $exportprojectteams = array();
     $exportreferee = array();
     $exportprojectposition = array();
     $exportposition = array();
     $exportparentposition = array();
     $exportplayground = array();
     $exportplaygroundtemp = array();
     $exportteamplaygroundtemp = array();
     $exportround = array();
     $exportmatch = array();
     $exportmatchplayer = array();
     $exportmatchevent = array();
     $exportevent = array();
     $exportpositiontemp = array();
     $exportposition = array();
     $exportparentposition = array();
     $exportprojectposition = array();
     $exportmatchreferee = array();
     $exportmatchplan = array();
     $temp_match_number = array();
     $startline = 0;
     // echo 'post <br>';
     // echo '<pre>';
     // print_r($post[projects]);
     // echo '</pre>';
     if (isset($post['projects'])) {
         $this->_project_id = $post['projects'];
     }
     $file = JPATH_SITE . DS . 'tmp' . DS . 'joomleague_import.csv';
     $mainframe->enqueueMessage(JText::_('datei = ' . $file), '');
     //$mainframe->enqueueMessage(JText::_('csv result<br><pre>'.print_r($csvdata->data,true).'</pre>'   ),'');
     if ($whichfile == 'playerfile') {
         $startline = 9;
     } elseif ($whichfile == 'matchfile') {
         $startline = 1;
     } elseif ($whichfile == 'icsfile') {
         // kalender file vom bfv anfang
         $ical = new ical();
         $ical->parse($file);
         $icsfile = $ical->get_all_data();
         if ($this->debug_info) {
             echo $this->pane->startPanel('icsfile', 'icsfile');
             $this->dump_header("icsfile");
             $this->dump_variable("icsfile", $icsfile);
             echo $this->pane->endPanel();
             echo $this->pane->startPanel('icsfile termine', 'icsfile termine');
             $this->dump_header("icsfile termine");
             $this->dump_variable("icsfile termine", $icsfile['VEVENT']);
             echo $this->pane->endPanel();
             //echo 'icsfile -> <br /><pre>~'.print_r($icsfile,true).'~</pre><br />';
             //echo 'icsfile termine -> <br /><pre>~'.print_r($icsfile['VEVENT'],true).'~</pre><br />';
         }
         //
         $lfdnumber = 0;
         $lfdnumberteam = 1;
         $lfdnumbermatch = 1;
         $lfdnumberplayground = 1;
         for ($a = 0; $a < sizeof($icsfile['VEVENT']); $a++) {
             $icsfile['VEVENT'][$a]['UID'] = $lfdnumbermatch;
             $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['match_date'] = date('Y-m-d', $icsfile['VEVENT'][$a]['DTSTART']) . " " . date('H:i', $icsfile['VEVENT'][$a]['DTSTART']);
             // paarung
             $teile = explode("\\,", $icsfile['VEVENT'][$a]['SUMMARY']);
             $teile2 = explode("-", $teile[0]);
             if (empty($lfdnumber)) {
                 $projectname = trim($teile[1]);
             }
             $text = $teile[0];
             $anzahltrenner = substr_count($text, '-');
             //echo 'ich habe -> '.$anzahltrenner.' trennzeichen <br>';
             if ($anzahltrenner > 1) {
                 $convert = array('-SV' => ':SV', '-SVO' => ':SVO', '-FC' => ':FC', '-TSV' => ':TSV', '-JFG' => ':JFG', '-TV' => ':TV', '-ASV' => ':ASV', '-SSV' => ':SSV', '-(SG)' => ':(SG)', '-SpVgg' => ':SpVgg', '-VfB' => ':VfB', '-FSV' => ':FSV', '-BSK' => ':BSK');
                 if (preg_match("/-SV/i", $teile[0]) || preg_match("/-SVO/i", $teile[0]) || preg_match("/-TSV/i", $teile[0]) || preg_match("/-JFG/i", $teile[0]) || preg_match("/-TV/i", $teile[0]) || preg_match("/-ASV/i", $teile[0]) || preg_match("/-SSV/i", $teile[0]) || preg_match("/-(SG)/i", $teile[0]) || preg_match("/-SpVgg/i", $teile[0]) || preg_match("/-VfB/i", $teile[0]) || preg_match("/-FSV/i", $teile[0]) || preg_match("/-BSK/i", $teile[0]) || preg_match("/-FC/i", $teile[0])) {
                     $teile[0] = str_replace(array_keys($convert), array_values($convert), $teile[0]);
                     $teile2 = explode(":", $teile[0]);
                 } else {
                     $pos = strrpos($teile[0], "-");
                     //echo 'letzte position -> '.$pos.' trennzeichen <br>';
                     $teile2[0] = substr($teile[0], 0, $pos);
                     $teile2[1] = substr($teile[0], $pos + 1, 100);
                 }
             }
             $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['heim'] = trim($teile2[0]);
             $valueheim = trim($teile2[0]);
             //$exportteamplaygroundtemp[$valueheim] = $valueplayground;
             $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['gast'] = trim($teile2[1]);
             $valuegast = trim($teile2[1]);
             // heimmannschaft
             if (array_key_exists($valueheim, $exportteamstemp)) {
             } else {
                 $exportteamstemp[$valueheim] = $lfdnumberteam;
                 $lfdnumberteam++;
             }
             // gastmannschaft
             if (array_key_exists($valuegast, $exportteamstemp)) {
             } else {
                 $exportteamstemp[$valuegast] = $lfdnumberteam;
                 $lfdnumberteam++;
             }
             if (isset($icsfile['VEVENT'][$a]['LOCATION'])) {
                 // sportanlage neu
                 $teile = explode("\\,", $icsfile['VEVENT'][$a]['LOCATION']);
                 if (sizeof($teile) === 4) {
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground'] = trim($teile[0]);
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_strasse'] = trim($teile[1]);
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_plz'] = trim($teile[2]);
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_ort'] = trim($teile[3]);
                     $valueplayground = trim($teile[0]);
                     $address = trim($teile[1]);
                     $zipcode = trim($teile[2]);
                     $city = trim($teile[3]);
                 } else {
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground'] = '';
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_strasse'] = trim($teile[0]);
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_plz'] = trim($teile[1]);
                     $exportmatchplan[$icsfile['VEVENT'][$a]['UID']]['playground_ort'] = trim($teile[2]);
                     $valueplayground = $valueheim;
                     $address = trim($teile[0]);
                     $zipcode = trim($teile[1]);
                     $city = trim($teile[2]);
                 }
             }
             if ($valueplayground) {
                 $exportteamplaygroundtemp[$valueheim] = $valueplayground;
                 if (array_key_exists($valueplayground, $exportplaygroundtemp)) {
                 } else {
                     $exportplaygroundtemp[$valueplayground] = $lfdnumberplayground;
                     $temp = new stdClass();
                     $temp->id = $lfdnumberplayground;
                     $temp->name = $valueplayground;
                     $temp->short_name = $valueplayground;
                     $temp->alias = $valueplayground;
                     $temp->club_id = $exportteamstemp[$valueheim];
                     $temp->address = $address;
                     $temp->zipcode = $zipcode;
                     $temp->city = $city;
                     $temp->country = $country;
                     $temp->max_visitors = 0;
                     $exportplayground[] = $temp;
                     $lfdnumberplayground++;
                 }
             }
             if (empty($lfdnumber)) {
                 $temp = new stdClass();
                 $temp->name = $projectname;
                 $temp->exportRoutine = '2010-09-19 23:00:00';
                 $this->_datas['exportversion'] = $temp;
                 $temp = new stdClass();
                 $temp->name = '';
                 $this->_datas['season'] = $temp;
                 $temp = new stdClass();
                 $temp->name = $projectname;
                 $temp->alias = $projectname;
                 $temp->short_name = $projectname;
                 $temp->middle_name = $projectname;
                 $temp->country = $country;
                 $this->_datas['league'] = $temp;
                 $temp = new stdClass();
                 $temp->name = $projectname;
                 $temp->serveroffset = 0;
                 $temp->project_type = 'SIMPLE_LEAGUE';
                 $this->_datas['project'] = $temp;
             }
             $lfdnumber++;
             $lfdnumbermatch++;
         }
         ksort($exportmatchplan);
         if ($this->debug_info) {
             echo $this->pane->startPanel('icsfile exportmatchplan', 'icsfile exportmatchplan');
             $this->dump_header("icsfile exportmatchplan");
             $this->dump_variable("icsfile exportmatchplan", $exportmatchplan);
             echo $this->pane->endPanel();
             echo $this->pane->startPanel('icsfile exportteamstemp', 'icsfile exportteamstemp');
             $this->dump_header("icsfile exportteamstemp");
             $this->dump_variable("icsfile exportteamstemp", $exportteamstemp);
             echo $this->pane->endPanel();
             //echo 'icsfile exportmatchplan -> <br /><pre>~'.print_r($exportmatchplan,true).'~</pre><br />';
             //echo 'icsfile exportteamstemp -> <br /><pre>~'.print_r($exportteamstemp,true).'~</pre><br />';
         }
         // teams verarbeiten
         foreach ($exportteamstemp as $key => $value) {
             // team
             $temp = new stdClass();
             $temp->id = $value;
             $temp->club_id = $value;
             $temp->name = $key;
             $temp->middle_name = $key;
             $temp->short_name = $key;
             $temp->info = '';
             $temp->extended = '';
             $exportteams[] = $temp;
             $standard_playground = $exportteamplaygroundtemp[$key];
             $standard_playground_nummer = $exportplaygroundtemp[$standard_playground];
             // club
             $temp = new stdClass();
             $temp->id = $value;
             $temp->name = $key;
             $temp->country = $country;
             $temp->extended = '';
             $temp->standard_playground = $standard_playground_nummer;
             $exportclubs[] = $temp;
             // projektteam
             $temp = new stdClass();
             $temp->id = $value;
             $temp->team_id = $value;
             $temp->project_team_id = $value;
             $temp->is_in_score = 1;
             $temp->standard_playground = $standard_playground_nummer;
             $exportprojectteams[] = $temp;
         }
         $anzahlteams = sizeof($exportteamstemp);
         $mainframe->enqueueMessage(JText::_('wir haben ' . $anzahlteams . ' teams f&uuml;r die berechnung der spieltage und paarungen pro spieltag'), '');
         if ($anzahlteams % 2 == 0) {
             $anzahltage = ($anzahlteams - 1) * 2;
             $anzahlpaarungen = $anzahlteams / 2;
         } else {
             $anzahltage = ($anzahlteams - 1) * 2;
             $anzahlpaarungen = ($anzahlteams - 1) / 2;
         }
         $mainframe->enqueueMessage(JText::_('wir haben ' . $anzahltage . ' spieltage'), '');
         $mainframe->enqueueMessage(JText::_('wir haben ' . $anzahlpaarungen . ' paarungen pro spieltag'), '');
         // echo "icsfile exportplaygroundtemp<pre>";
         // print_r($exportplaygroundtemp);
         // echo "</pre>";
         // so jetzt die runden erstellen
         for ($a = 1; $a <= $anzahltage; $a++) {
             $temp = new stdClass();
             $temp->id = $a;
             $temp->roundcode = $a;
             $temp->name = $a . '- Spieltag';
             $temp->alias = $a . '-spieltag';
             $temp->round_date_first = '';
             $temp->round_date_last = '';
             $exportround[$a] = $temp;
         }
         // so jetzt die spiele erstellen
         $lfdnumbermatch = 1;
         $lfdnumberpaarung = 1;
         $lfdnumberspieltag = 1;
         foreach ($exportmatchplan as $key => $value) {
             // echo "icsfile spiele erstellen<pre>";
             // print_r($value);
             // echo "</pre>";
             $tempmatch = new stdClass();
             $tempmatch->id = $lfdnumbermatch;
             $tempmatch->match_number = $lfdnumbermatch;
             $tempmatch->published = 1;
             $tempmatch->count_result = 1;
             $tempmatch->show_report = 1;
             $tempmatch->team1_result = '';
             $tempmatch->team2_result = '';
             $tempmatch->summary = '';
             $tempmatch->match_date = $value['match_date'];
             if (isset($value['playground'])) {
                 if (array_key_exists($value['playground'], $exportplaygroundtemp)) {
                     $tempmatch->playground_id = $exportplaygroundtemp[$value['playground']];
                 }
             }
             $tempmatch->projectteam1_id = $exportteamstemp[$value['heim']];
             $tempmatch->projectteam2_id = $exportteamstemp[$value['gast']];
             $tempmatch->round_id = $lfdnumberspieltag;
             $exportmatch[] = $tempmatch;
             if ($lfdnumberpaarung == $anzahlpaarungen) {
                 $lfdnumberpaarung = 0;
                 $lfdnumberspieltag++;
             }
             $lfdnumbermatch++;
             $lfdnumberpaarung++;
         }
         // daten übergeben
         $this->_datas['round'] = array_merge($exportround);
         $this->_datas['match'] = array_merge($exportmatch);
         $this->_datas['team'] = array_merge($exportteams);
         $this->_datas['projectteam'] = array_merge($exportprojectteams);
         $this->_datas['club'] = array_merge($exportclubs);
         $this->_datas['playground'] = array_merge($exportplayground);
         /**
          * das ganze für den standardimport aufbereiten
          */
         $output = '<?xml version="1.0" encoding="utf-8"?>' . "\n";
         // open the project
         $output .= "<project>\n";
         // set the version of JoomLeague
         $output .= $this->_addToXml($this->_setJoomLeagueVersion());
         // set the project datas
         if (isset($this->_datas['project'])) {
             $output .= $this->_addToXml($this->_setProjectData($this->_datas['project']));
         }
         // set league data of project
         if (isset($this->_datas['league'])) {
             $output .= $this->_addToXml($this->_setLeagueData($this->_datas['league']));
         }
         // set season data of project
         if (isset($this->_datas['season'])) {
             $output .= $this->_addToXml($this->_setSeasonData($this->_datas['season']));
         }
         // set the rounds data
         if (isset($this->_datas['round'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['round'], 'Round'));
         }
         // set the teams data
         if (isset($this->_datas['team'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['team'], 'JL_Team'));
         }
         // set the clubs data
         if (isset($this->_datas['club'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['club'], 'Club'));
         }
         // set the matches data
         if (isset($this->_datas['match'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['match'], 'Match'));
         }
         // set the positions data
         if (isset($this->_datas['position'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['position'], 'Position'));
         }
         // set the positions parent data
         if (isset($this->_datas['parentposition'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['parentposition'], 'ParentPosition'));
         }
         // set position data of project
         if (isset($this->_datas['projectposition'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectposition'], 'ProjectPosition'));
         }
         // set the matchreferee data
         if (isset($this->_datas['matchreferee'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['matchreferee'], 'MatchReferee'));
         }
         // set the person data
         if (isset($this->_datas['person'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['person'], 'Person'));
         }
         // set the projectreferee data
         if (isset($this->_datas['projectreferee'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectreferee'], 'ProjectReferee'));
         }
         // set the projectteam data
         if (isset($this->_datas['projectteam'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectteam'], 'ProjectTeam'));
         }
         // set playground data of project
         if (isset($this->_datas['playground'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['playground'], 'Playground'));
         }
         // close the project
         $output .= '</project>';
         // mal als test
         $xmlfile = $output;
         $file = JPATH_SITE . DS . 'tmp' . DS . 'joomleague_import.jlg';
         JFile::write($file, $xmlfile);
     }
     // kalender file vom bfv ende
     $teamid = 1;
     $this->fileName = JFile::read($file);
     $this->lines = file($file);
     if ($this->lines) {
         $row = 0;
         if ($whichfile == 'playerfile') {
             // test
             // spielplan anfang
             # tab delimited, and encoding conversion
             $csv = new parseCSV();
             $csv->encoding('UTF-16', 'UTF-8');
             //$csv->delimiter = "\t";
             switch ($delimiter) {
                 case ";":
                     $csv->delimiter = ";";
                     break;
                 case ",":
                     $csv->delimiter = ",";
                     break;
                 default:
                     $csv->delimiter = "\t";
                     break;
             }
             $startrow = $jRegistry->get('cfg_dfbnet_player_startrow') - 2;
             $csv->parse($file, $startrow);
             //$mainframe->enqueueMessage(JText::_('result<br><pre>'.print_r($csv->data,true).'</pre>'   ),'');
             // anfang schleife csv file
             for ($a = 0; $a < sizeof($csv->data); $a++) {
                 $temp = new stdClass();
                 $temp->id = 0;
                 $temp->knvbnr = $csv->data[$a][$jRegistry->get('cfg_dfbnet_player_passnummer')];
                 $temp->lastname = $csv->data[$a][$jRegistry->get('cfg_dfbnet_player_firstname')];
                 $temp->firstname = $csv->data[$a][$jRegistry->get('cfg_dfbnet_player_lastname')];
                 $temp->info = $csv->data[$a][$jRegistry->get('cfg_dfbnet_player_info')];
                 $datetime = strtotime($csv->data[$a][$jRegistry->get('cfg_dfbnet_player_birthday')]);
                 $temp->birthday = date('Y-m-d', $datetime);
                 $temp->country = $country;
                 $temp->nickname = '';
                 $temp->position_id = '';
                 //$temp->lastname = utf8_encode ($temp->lastname);
                 //$temp->firstname = utf8_encode ($temp->firstname);
                 $exportplayer[] = $temp;
             }
             // spielerdatei
             $temp = new stdClass();
             $temp->name = 'playerfile';
             $temp->exportRoutine = '2010-09-19 23:00:00';
             $this->_datas['exportversion'] = $temp;
             $this->_datas['person'] = array_merge($exportplayer);
         } elseif ($whichfile == 'matchfile') {
             // spielplan anfang
             # tab delimited, and encoding conversion
             $csv = new parseCSV();
             $csv->encoding('UTF-16', 'UTF-8');
             //$csv->delimiter = "\t";
             switch ($delimiter) {
                 case ";":
                     $csv->delimiter = ";";
                     break;
                 case ",":
                     $csv->delimiter = ",";
                     break;
                 default:
                     $csv->delimiter = "\t";
                     break;
             }
             $csv->parse($file);
             if (sizeof($csv->data) == 0) {
                 $mainframe->enqueueMessage(JText::_('falsches Dateiformat'), 'Error');
                 $importcsv = false;
             } else {
                 //$mainframe->enqueueMessage(JText::_('result<br><pre>'.print_r($csv->data[0],true).'</pre>'   ),'');
                 //$mainframe->enqueueMessage(JText::_('result<br><pre>'.print_r($csv->data,true).'</pre>'   ),'');
                 $importcsv = true;
             }
             $lfdnumber = 0;
             $lfdnumberteam = 1;
             $lfdnumbermatch = 1;
             $lfdnumberplayground = 1;
             $lfdnumberperson = 1;
             $lfdnumbermatchreferee = 1;
             // anfang schleife csv file
             for ($a = 0; $a < sizeof($csv->data); $a++) {
                 if (empty($lfdnumber)) {
                     $temp = new stdClass();
                     $temp->name = $csv->data[$a][$jRegistry->get('cfg_dfbnet_verband_name')];
                     $temp->exportRoutine = '2010-09-19 23:00:00';
                     $this->_datas['exportversion'] = $temp;
                     $temp = new stdClass();
                     $temp->name = $csv->data[$a][$jRegistry->get('cfg_dfbnet_season_name')];
                     $this->_datas['season'] = $temp;
                     $temp = new stdClass();
                     $temp->name = $csv->data[$a][$jRegistry->get('cfg_dfbnet_league_name')] . ' ' . $csv->data[$a][$jRegistry->get('cfg_dfbnet_staffel_number')];
                     $temp->country = $country;
                     $this->_datas['league'] = $temp;
                     $temp = new stdClass();
                     $temp->id = 1;
                     $temp->name = 'COM_JOOMLEAGUE_ST_SOCCER';
                     $this->_datas['sportstype'] = $temp;
                     $temp = new stdClass();
                     $temp->name = $csv->data[$a][$jRegistry->get('cfg_dfbnet_league_name')] . ' ' . $csv->data[$a][$jRegistry->get('cfg_dfbnet_season_name')];
                     $temp->serveroffset = 0;
                     $temp->start_time = '15:30';
                     $temp->start_date = '0000-00-00';
                     $temp->sports_type_id = 1;
                     $temp->project_type = 'SIMPLE_LEAGUE';
                     $temp->staffel_id = $csv->data[$a][$jRegistry->get('cfg_dfbnet_staffel_name')];
                     $this->_datas['project'] = $temp;
                 }
                 if (empty($csv->data[$a][$jRegistry->get('cfg_dfbnet_weekday_changed')])) {
                     $valuematchday = $csv->data[$a][$jRegistry->get('cfg_dfbnet_round_name')];
                     if (isset($exportround[$valuematchday])) {
                     } else {
                         $temp = new stdClass();
                         $temp->id = $valuematchday;
                         $temp->roundcode = $valuematchday;
                         $temp->name = $valuematchday . '.Spieltag';
                         $temp->alias = $valuematchday . '.Spieltag';
                         $temp->round_date_first = '';
                         $temp->round_date_last = '';
                         $exportround[$valuematchday] = $temp;
                     }
                     // dfbnet heimmannschaft
                     $valueheim = $csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')];
                     if ($valueheim != 'Spielfrei') {
                         if (in_array($valueheim, $exportteamstemp)) {
                             // echo $valueheim." <- enthalten<br>";
                             $exportclubsstandardplayground[$valueheim] = $csv->data[$a][$jRegistry->get('cfg_dfbnet_playground_name')];
                             $exportplaygroundclubib[$csv->data[$a][$jRegistry->get('cfg_dfbnet_playground_name')]] = $valueheim;
                         } else {
                             // echo $valueheim." <- nicht enthalten<br>";
                             $exportclubsstandardplayground[$valueheim] = $csv->data[$a][$jRegistry->get('cfg_dfbnet_playground_name')];
                             $exportplaygroundclubib[$csv->data[$a][$jRegistry->get('cfg_dfbnet_playground_name')]] = $valueheim;
                             $exportteamstemp[] = $valueheim;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $temp->club_id = $lfdnumberteam;
                             $temp->name = $valueheim;
                             $temp->middle_name = $valueheim;
                             $temp->short_name = $valueheim;
                             $temp->info = $csv->data[$a][$jRegistry->get('cfg_dfbnet_teamart_name')];
                             $temp->extended = '';
                             $exportteams[] = $temp;
                             $mainframe->setUserState($option . "teamart", $temp->info);
                             // der clubname muss um die mannschaftsnummer verkürzt werden
                             if (substr($valueheim, -4, 4) == ' III') {
                                 $convert = array(' III' => '');
                                 $valueheim = str_replace(array_keys($convert), array_values($convert), $valueheim);
                             }
                             if (substr($valueheim, -3, 3) == ' II') {
                                 $convert = array(' II' => '');
                                 $valueheim = str_replace(array_keys($convert), array_values($convert), $valueheim);
                             }
                             if (substr($valueheim, -2, 2) == ' I') {
                                 $convert = array(' I' => '');
                                 $valueheim = str_replace(array_keys($convert), array_values($convert), $valueheim);
                             }
                             if (substr($valueheim, -2, 2) == ' 3') {
                                 $convert = array(' 3' => '');
                                 $valueheim = str_replace(array_keys($convert), array_values($convert), $valueheim);
                             }
                             if (substr($valueheim, -2, 2) == ' 2') {
                                 $convert = array(' 2' => '');
                                 $valueheim = str_replace(array_keys($convert), array_values($convert), $valueheim);
                             }
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $club_id = $lfdnumberteam;
                             $temp->name = $valueheim;
                             $temp->country = $country;
                             $temp->extended = '';
                             $temp->standard_playground = $lfdnumberplayground;
                             $exportclubs[] = $temp;
                             //$mainframe->enqueueMessage(JText::_('heim verein -> '.$valueheim ),'Notice');
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $temp->team_id = $lfdnumberteam;
                             $temp->project_team_id = $lfdnumberteam;
                             $temp->is_in_score = 1;
                             $temp->division_id = 0;
                             $temp->start_points = 0;
                             $temp->points_finally = 0;
                             $temp->neg_points_finally = 0;
                             $temp->matches_finally = 0;
                             $temp->won_finally = 0;
                             $temp->draws_finally = 0;
                             $temp->lost_finally = 0;
                             $temp->homegoals_finally = 0;
                             $temp->guestgoals_finally = 0;
                             $temp->diffgoals_finally = 0;
                             $temp->standard_playground = $lfdnumberplayground;
                             $exportprojectteams[] = $temp;
                             $lfdnumberteam++;
                         }
                     }
                     // dfbnet gastmannschaft
                     $valuegast = $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')];
                     if ($valuegast != 'Spielfrei') {
                         if (in_array($valuegast, $exportteamstemp)) {
                             // echo $valuegast." <- enthalten<br>";
                         } else {
                             // echo $valuegast." <- nicht enthalten<br>";
                             $exportteamstemp[] = $valuegast;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $temp->club_id = $lfdnumberteam;
                             $temp->name = $valuegast;
                             $temp->middle_name = $valuegast;
                             $temp->short_name = $valuegast;
                             $temp->info = $csv->data[$a][$jRegistry->get('cfg_dfbnet_teamart_name')];
                             $temp->extended = '';
                             $exportteams[] = $temp;
                             // der clubname muss um die mannschaftsnummer verkürzt werden
                             if (substr($valuegast, -4, 4) == ' III') {
                                 $convert = array(' III' => '');
                                 $valuegast = str_replace(array_keys($convert), array_values($convert), $valuegast);
                             }
                             if (substr($valuegast, -3, 3) == ' II') {
                                 $convert = array(' II' => '');
                                 $valuegast = str_replace(array_keys($convert), array_values($convert), $valuegast);
                             }
                             if (substr($valuegast, -2, 2) == ' I') {
                                 $convert = array(' I' => '');
                                 $valuegast = str_replace(array_keys($convert), array_values($convert), $valuegast);
                             }
                             if (substr($valuegast, -2, 2) == ' 3') {
                                 $convert = array(' 3' => '');
                                 $valuegast = str_replace(array_keys($convert), array_values($convert), $valuegast);
                             }
                             if (substr($valuegast, -2, 2) == ' 2') {
                                 $convert = array(' 2' => '');
                                 $valuegast = str_replace(array_keys($convert), array_values($convert), $valuegast);
                             }
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $temp->name = $valuegast;
                             $temp->standard_playground = 0;
                             $temp->country = $country;
                             $temp->extended = '';
                             $exportclubs[] = $temp;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberteam;
                             $temp->team_id = $lfdnumberteam;
                             $temp->project_team_id = $lfdnumberteam;
                             $temp->is_in_score = 1;
                             $temp->division_id = 0;
                             $temp->start_points = 0;
                             $temp->points_finally = 0;
                             $temp->neg_points_finally = 0;
                             $temp->matches_finally = 0;
                             $temp->won_finally = 0;
                             $temp->draws_finally = 0;
                             $temp->lost_finally = 0;
                             $temp->homegoals_finally = 0;
                             $temp->guestgoals_finally = 0;
                             $temp->diffgoals_finally = 0;
                             $temp->standard_playground = 0;
                             $exportprojectteams[] = $temp;
                             $lfdnumberteam++;
                         }
                     }
                     // dfbnet spielstaette
                     $valueplayground = $csv->data[$a][$jRegistry->get('cfg_dfbnet_playground_name')];
                     if ($valueplayground) {
                         if (array_key_exists($valueplayground, $exportplaygroundtemp)) {
                             // echo $valueplayground." <- enthalten<br>";
                         } else {
                             // echo $valueplayground." <- nicht enthalten<br>";
                             $exportplaygroundtemp[$valueplayground] = $lfdnumberplayground;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberplayground;
                             $matchnumberplayground = $lfdnumberplayground;
                             $temp->name = $valueplayground;
                             $temp->short_name = $valueplayground;
                             $temp->country = $country;
                             $temp->max_visitors = 0;
                             $valueheimsuchen = $exportplaygroundclubib[$valueplayground];
                             foreach ($exportteamstemp as $key => $value) {
                                 if ($value == $valueheimsuchen) {
                                     $club_id = $key + 1;
                                 }
                             }
                             $temp->club_id = $club_id;
                             $exportplayground[] = $temp;
                             //$mainframe->enqueueMessage(JText::_('playground -> '.$valueplayground ),'Notice');
                             //$mainframe->enqueueMessage(JText::_('heimmannschaft suchen -> '.$valueheimsuchen ),'Notice');
                             //$mainframe->enqueueMessage(JText::_('heimmannschaft club-id -> '.$club_id ),'Notice');
                             $lfdnumberplayground++;
                         }
                     }
                     $valueperson = $csv->data[$a][$jRegistry->get('cfg_dfbnet_spielleitung_name')];
                     $valueperson1 = $csv->data[$a][$jRegistry->get('cfg_dfbnet_assistent1_name')];
                     $valueperson2 = $csv->data[$a][$jRegistry->get('cfg_dfbnet_assistent2_name')];
                     //if (in_array($valueperson, $exportpersonstemp))
                     if (array_key_exists($valueperson, $exportpersonstemp)) {
                         if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                             // nichts machen
                         } else {
                             $tempmatchreferee = new stdClass();
                             $tempmatchreferee->id = $lfdnumbermatchreferee;
                             $tempmatchreferee->match_id = $lfdnumbermatch;
                             $tempmatchreferee->project_referee_id = $exportpersonstemp[$valueperson];
                             $tempmatchreferee->project_position_id = 1000;
                             $exportmatchreferee[] = $tempmatchreferee;
                             $lfdnumbermatchreferee++;
                         }
                     } else {
                         if (strlen($valueperson) > 6 && $valueperson) {
                             // echo $valueperson." <- nicht enthalten<br>";
                             $exportpersonstemp[$valueperson] = $lfdnumberperson;
                             // nach- und vorname richtig setzen
                             $teile = explode(",", $valueperson);
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->person_id = $lfdnumberperson;
                             $temp->project_position_id = 1000;
                             $exportreferee[] = $temp;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->lastname = trim($teile[0]);
                             $temp->firstname = trim($teile[1]);
                             $temp->nickname = '';
                             $temp->knvbnr = '';
                             $temp->location = '';
                             $temp->birthday = '0000-00-00';
                             $temp->country = $country;
                             $temp->position_id = 1000;
                             $temp->info = 'Schiri';
                             $exportpersons[] = $temp;
                             if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                                 // nichts machen
                             } else {
                                 $tempmatchreferee = new stdClass();
                                 $tempmatchreferee->id = $lfdnumbermatchreferee;
                                 $tempmatchreferee->match_id = $lfdnumbermatch;
                                 $tempmatchreferee->project_referee_id = $lfdnumberperson;
                                 $tempmatchreferee->project_position_id = 1000;
                                 $exportmatchreferee[] = $tempmatchreferee;
                                 $lfdnumbermatchreferee++;
                             }
                             $lfdnumberperson++;
                         }
                     }
                     // 1.assistent
                     if (array_key_exists($valueperson1, $exportpersonstemp)) {
                         if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                             // nichts machen
                         } else {
                             $tempmatchreferee = new stdClass();
                             $tempmatchreferee->id = $lfdnumbermatchreferee;
                             $tempmatchreferee->match_id = $lfdnumbermatch;
                             $tempmatchreferee->project_referee_id = $exportpersonstemp[$valueperson1];
                             $tempmatchreferee->project_position_id = 1001;
                             $exportmatchreferee[] = $tempmatchreferee;
                             $lfdnumbermatchreferee++;
                         }
                     } else {
                         if (strlen($valueperson1) > 6 && $valueperson1) {
                             // echo $valueperson." <- nicht enthalten<br>";
                             $exportpersonstemp[$valueperson1] = $lfdnumberperson;
                             // nach- und vorname richtig setzen
                             $teile = explode(",", $valueperson1);
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->person_id = $lfdnumberperson;
                             $temp->project_position_id = 1001;
                             $exportreferee[] = $temp;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->lastname = trim($teile[0]);
                             $temp->firstname = trim($teile[1]);
                             $temp->nickname = '';
                             $temp->knvbnr = '';
                             $temp->location = '';
                             $temp->birthday = '0000-00-00';
                             $temp->country = $country;
                             $temp->position_id = 1001;
                             $temp->info = 'Schiri';
                             $exportpersons[] = $temp;
                             if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                                 // nichts machen
                             } else {
                                 $tempmatchreferee = new stdClass();
                                 $tempmatchreferee->id = $lfdnumbermatchreferee;
                                 $tempmatchreferee->match_id = $lfdnumbermatch;
                                 $tempmatchreferee->project_referee_id = $lfdnumberperson;
                                 $tempmatchreferee->project_position_id = 1001;
                                 $exportmatchreferee[] = $tempmatchreferee;
                                 $lfdnumbermatchreferee++;
                             }
                             $lfdnumberperson++;
                         }
                     }
                     // 2.assistent
                     if (array_key_exists($valueperson2, $exportpersonstemp)) {
                         if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                             // nichts machen
                         } else {
                             $tempmatchreferee = new stdClass();
                             $tempmatchreferee->id = $lfdnumbermatchreferee;
                             $tempmatchreferee->match_id = $lfdnumbermatch;
                             $tempmatchreferee->project_referee_id = $exportpersonstemp[$valueperson2];
                             $tempmatchreferee->project_position_id = 1002;
                             $exportmatchreferee[] = $tempmatchreferee;
                             $lfdnumbermatchreferee++;
                         }
                     } else {
                         if (strlen($valueperson2) > 6 && $valueperson2) {
                             // echo $valueperson." <- nicht enthalten<br>";
                             $exportpersonstemp[$valueperson2] = $lfdnumberperson;
                             // nach- und vorname richtig setzen
                             $teile = explode(",", $valueperson2);
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->person_id = $lfdnumberperson;
                             $temp->project_position_id = 1002;
                             $exportreferee[] = $temp;
                             $temp = new stdClass();
                             $temp->id = $lfdnumberperson;
                             $temp->lastname = trim($teile[0]);
                             $temp->firstname = trim($teile[1]);
                             $temp->nickname = '';
                             $temp->knvbnr = '';
                             $temp->location = '';
                             $temp->birthday = '0000-00-00';
                             $temp->country = $country;
                             $temp->position_id = 1002;
                             $temp->info = 'Schiri';
                             $exportpersons[] = $temp;
                             if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                                 // nichts machen
                             } else {
                                 $tempmatchreferee = new stdClass();
                                 $tempmatchreferee->id = $lfdnumbermatchreferee;
                                 $tempmatchreferee->match_id = $lfdnumbermatch;
                                 $tempmatchreferee->project_referee_id = $lfdnumberperson;
                                 $tempmatchreferee->project_position_id = 1002;
                                 $exportmatchreferee[] = $tempmatchreferee;
                                 $lfdnumbermatchreferee++;
                             }
                             $lfdnumberperson++;
                         }
                     }
                     //   echo 'paarung -> '.$csv->data[$a]['Heim Mannschaft']." <-> ".$csv->data[$a]['Gast Mannschaft'].'<br>';
                     if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')] == 'Spielfrei' || $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')] == 'Spielfrei') {
                         // nichts machen
                     } else {
                         $round_id = $csv->data[$a][$jRegistry->get('cfg_dfbnet_round_name')];
                         $tempmatch = new stdClass();
                         $tempmatch->id = $lfdnumbermatch;
                         $tempmatch->round_id = $round_id;
                         $datetime = strtotime($csv->data[$a][$jRegistry->get('cfg_dfbnet_date')]);
                         $tempmatch->match_date = date('Y-m-d', $datetime) . " " . $csv->data[$a][$jRegistry->get('cfg_dfbnet_time')];
                         if ($csv->data[$a][$jRegistry->get('cfg_dfbnet_date_changed')]) {
                             $datetime = strtotime($csv->data[$a][$jRegistry->get('cfg_dfbnet_date_changed')]);
                             $tempmatch->match_date_verlegt = date('Y-m-d', $datetime) . " " . $csv->data[$a][$jRegistry->get('cfg_dfbnet_time_changed')];
                         } else {
                             $tempmatch->match_date_verlegt = '';
                         }
                         // datum im spieltag setzen
                         if (!$exportround[$round_id]->round_date_first && !$exportround[$round_id]->round_date_last) {
                             $exportround[$round_id]->round_date_first = date('Y-m-d', $datetime);
                             $exportround[$round_id]->round_date_last = date('Y-m-d', $datetime);
                         }
                         if ($exportround[$round_id]->round_date_first && $exportround[$round_id]->round_date_last) {
                             $datetime_first = strtotime($exportround[$round_id]->round_date_first);
                             $datetime_last = strtotime($exportround[$round_id]->round_date_last);
                             if ($datetime_first > $datetime) {
                                 $exportround[$round_id]->round_date_first = date('Y-m-d', $datetime);
                             }
                             if ($datetime_last < $datetime) {
                                 $exportround[$round_id]->round_date_last = date('Y-m-d', $datetime);
                             }
                         }
                         //$tempmatch->match_number = $csv->data[$a]['Spielkennung'];
                         //$tempmatch->match_number = $lfdnumbermatch;
                         $tempmatch->match_number = $csv->data[$a][$jRegistry->get('cfg_dfbnet_game_id')];
                         $tempmatch->published = 1;
                         $tempmatch->count_result = 1;
                         $tempmatch->show_report = 1;
                         $tempmatch->projectteam1_id = 0;
                         $tempmatch->projectteam2_id = 0;
                         $tempmatch->projectteam1_dfbnet = $csv->data[$a][$jRegistry->get('cfg_dfbnet_home_name')];
                         $tempmatch->projectteam2_dfbnet = $csv->data[$a][$jRegistry->get('cfg_dfbnet_away_name')];
                         $tempmatch->team1_result = '';
                         $tempmatch->team2_result = '';
                         $tempmatch->summary = '';
                         if (array_key_exists($valueplayground, $exportplaygroundtemp)) {
                             $tempmatch->playground_id = $exportplaygroundtemp[$valueplayground];
                         }
                         //if ( empty($csv->data[$a]['Spalte28']) )
                         //  {
                         if (array_key_exists($tempmatch->match_number, $temp_match_number)) {
                             $exportmatch[] = $tempmatch;
                         } else {
                             $temp_match_number[$tempmatch->match_number] = $tempmatch->match_number;
                             $exportmatch[] = $tempmatch;
                         }
                         //}
                         $lfdnumbermatch++;
                         $lfdnumber++;
                     }
                 }
             }
             // ende schleife csv file
             foreach ($exportmatch as $rowmatch) {
                 foreach ($exportteams as $rowteam) {
                     if ($rowmatch->projectteam1_dfbnet == $rowteam->name) {
                         $rowmatch->projectteam1_id = $rowteam->id;
                     }
                     if ($rowmatch->projectteam2_dfbnet == $rowteam->name) {
                         $rowmatch->projectteam2_id = $rowteam->id;
                     }
                 }
             }
             if ($importcsv && sizeof($exportreferee) > 0) {
                 $temp = new stdClass();
                 $temp->id = 1;
                 $temp->name = 'Schiedsrichter';
                 $temp->alias = 'Schiedsrichter';
                 $temp->published = 1;
                 $exportparentposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1000;
                 $temp->name = 'Spielleitung';
                 $temp->alias = 'Spielleitung';
                 $temp->parent_id = 1;
                 $temp->published = 1;
                 $temp->persontype = 3;
                 $exportposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1001;
                 $temp->name = '1.Assistent';
                 $temp->alias = '1.Assistent';
                 $temp->parent_id = 1;
                 $temp->published = 1;
                 $temp->persontype = 3;
                 $exportposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1002;
                 $temp->name = '2.Assistent';
                 $temp->alias = '2.Assistent';
                 $temp->parent_id = 1;
                 $temp->published = 1;
                 $temp->persontype = 3;
                 $exportposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1000;
                 $temp->position_id = 1000;
                 $exportprojectposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1001;
                 $temp->position_id = 1001;
                 $exportprojectposition[] = $temp;
                 $temp = new stdClass();
                 $temp->id = 1002;
                 $temp->position_id = 1002;
                 $exportprojectposition[] = $temp;
             }
             foreach ($exportteams as $rowteam) {
                 $play_ground = $exportclubsstandardplayground[$rowteam->name];
                 $club_id = $rowteam->club_id;
                 //echo 'club_id -> '.$club_id.'<br>';
                 //echo 'play_ground -> '.$play_ground.'<br>';
                 foreach ($exportplayground as $rowground) {
                     if ($play_ground == $rowground->name) {
                         $play_ground_id = $rowground->id;
                         //echo 'play_ground_id -> '.$play_ground_id.'<br>';
                         foreach ($exportclubs as $rowclubs) {
                             if ($club_id == $rowclubs->id) {
                                 $rowclubs->standard_playground = $play_ground_id;
                             }
                         }
                     }
                 }
             }
             $this->_datas['position'] = array_merge($exportposition);
             $this->_datas['projectposition'] = array_merge($exportprojectposition);
             $this->_datas['parentposition'] = array_merge($exportparentposition);
             $this->_datas['person'] = array_merge($exportpersons);
             $this->_datas['projectreferee'] = array_merge($exportreferee);
             $this->_datas['team'] = array_merge($exportteams);
             $this->_datas['projectteam'] = array_merge($exportprojectteams);
             $this->_datas['club'] = array_merge($exportclubs);
             $this->_datas['playground'] = array_merge($exportplayground);
             // damit die spieltage in der richtigen reihenfolge angelegt werden
             ksort($exportround);
             $this->_datas['round'] = array_merge($exportround);
             $this->_datas['match'] = array_merge($exportmatch);
             $this->_datas['matchreferee'] = array_merge($exportmatchreferee);
         }
     }
     //  echo '<pre>';
     //  print_r($this->_datas);
     //  echo '</pre>';
     if ($whichfile == 'playerfile') {
         /**
          * das ganze für den standardimport aufbereiten
          */
         $output = '<?xml version="1.0" encoding="utf-8"?>' . "\n";
         // open the project
         $output .= "<project>\n";
         // set the version of JoomLeague
         $output .= $this->_addToXml($this->_setJoomLeagueVersion());
         // set the person data
         if (isset($this->_datas['person'])) {
             $mainframe->enqueueMessage(JText::_('personen daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['person'], 'Person'));
         }
         // close the project
         $output .= '</project>';
         // mal als test
         $xmlfile = $output;
         $file = JPATH_SITE . DS . 'tmp' . DS . 'joomleague_import.jlg';
         JFile::write($file, $xmlfile);
         $this->import_version = 'NEW';
     } else {
         /**
          * das ganze für den standardimport aufbereiten
          */
         $output = '<?xml version="1.0" encoding="utf-8"?>' . "\n";
         // open the project
         $output .= "<project>\n";
         // set the version of JoomLeague
         $output .= $this->_addToXml($this->_setJoomLeagueVersion());
         // set the project datas
         if (isset($this->_datas['project'])) {
             $mainframe->enqueueMessage(JText::_('project daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setProjectData($this->_datas['project']));
         }
         // set the rounds sportstype
         if (isset($this->_datas['sportstype'])) {
             $mainframe->enqueueMessage(JText::_('sportstype daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setSportsType($this->_datas['sportstype']));
         }
         // set league data of project
         if (isset($this->_datas['league'])) {
             $mainframe->enqueueMessage(JText::_('league daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setLeagueData($this->_datas['league']));
         }
         // set season data of project
         if (isset($this->_datas['season'])) {
             $mainframe->enqueueMessage(JText::_('season daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setSeasonData($this->_datas['season']));
         }
         // set the rounds data
         if (isset($this->_datas['round'])) {
             $mainframe->enqueueMessage(JText::_('round daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['round'], 'Round'));
         }
         // set the teams data
         if (isset($this->_datas['team'])) {
             $mainframe->enqueueMessage(JText::_('team daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['team'], 'JL_Team'));
         }
         // set the clubs data
         if (isset($this->_datas['club'])) {
             $mainframe->enqueueMessage(JText::_('club daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['club'], 'Club'));
         }
         // set the matches data
         if (isset($this->_datas['match'])) {
             $mainframe->enqueueMessage(JText::_('match daten ' . 'generiert'), '');
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['match'], 'Match'));
         }
         // set the positions data
         if (isset($this->_datas['position'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['position'], 'Position'));
         }
         // set the positions parent data
         if (isset($this->_datas['parentposition'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['parentposition'], 'ParentPosition'));
         }
         // set position data of project
         if (isset($this->_datas['projectposition'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectposition'], 'ProjectPosition'));
         }
         // set the matchreferee data
         if (isset($this->_datas['matchreferee'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['matchreferee'], 'MatchReferee'));
         }
         // set the person data
         if (isset($this->_datas['person'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['person'], 'Person'));
         }
         // set the projectreferee data
         if (isset($this->_datas['projectreferee'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectreferee'], 'ProjectReferee'));
         }
         // set the projectteam data
         if (isset($this->_datas['projectteam'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['projectteam'], 'ProjectTeam'));
         }
         // set playground data of project
         if (isset($this->_datas['playground'])) {
             $output .= $this->_addToXml($this->_setXMLData($this->_datas['playground'], 'Playground'));
         }
         // close the project
         $output .= '</project>';
         // mal als test
         $xmlfile = $output;
         $file = JPATH_SITE . DS . 'tmp' . DS . 'joomleague_import.jlg';
         JFile::write($file, $xmlfile);
     }
     $this->import_version = 'NEW';
     if ($this->debug_info) {
         echo $this->pane->endPane();
     }
     //$mainframe->setUserState('com_joomleague'.'_datas',$this->_datas);
     return $this->_datas;
 }
예제 #7
0
 function rrule($sn = '', $recurrence = '', $allDay = null)
 {
     global $xoopsDB, $xoopsUser;
     include_once XOOPS_ROOT_PATH . "/modules/tad_cal/class/rrule.php";
     include_once XOOPS_ROOT_PATH . "/modules/tad_cal/class/ical.php";
     if (empty($sn) or empty($recurrence)) {
         return;
     }
     // die($recurrence);
     $ical = new ical();
     $ical->parse($recurrence);
     $rrule_array = $ical->get_all_data();
     // die('[rrule_array]' . var_export($rrule_array));
     foreach ($rrule_array['']['RRULE'] as $key => $val) {
         $all[] = "{$key}={$val}";
     }
     $rrule = 'RRULE:' . implode(";", $all);
     // die($rrule_array['']['DTSTART']['unixtime']);
     $start = substr(str_replace(":", "", str_replace("-", "", date("c", $rrule_array['']['DTSTART']['unixtime']))), 0, 15);
     $endTime = $rrule_array['']['DTEND']['unixtime'] - $rrule_array['']['DTSTART']['unixtime'];
     // die($start . "====" . $rrule);
     // echo "<p>start= $start</p>";
     // echo "<p>rrule= $rrule</p>";
     $rule = new RRule($start, $rrule);
     $i = 0;
     while ($date = $rule->GetNext()) {
         if ($i > 300) {
             break;
         }
         $new_date = $date->Render();
         // echo "<p>new_date= $new_date</p>";
         if (empty($new_date)) {
             continue;
         }
         $end = date("Y-m-d H:i", strtotime($new_date) + $endTime);
         $allday = is_null($allDay) ? isAllDay($new_date, $end) : $allDay;
         $allDate[] = "('{$sn}','{$new_date}','{$end}','{$allday}')";
         $i++;
     }
     // exit;
     $sql_data = implode(",", $allDate);
     if (empty($sql_data)) {
         return;
     }
     $sql = "delete from " . $xoopsDB->prefix("tad_cal_repeat") . " where `sn`='{$sn}'";
     $xoopsDB->queryF($sql) or web_error($sql);
     $sql = "insert into " . $xoopsDB->prefix("tad_cal_repeat") . "\n        (`sn` , `start` , `end` , `allday`)\n        values{$sql_data}";
     // echo "<p>$sql</p>";
     $xoopsDB->queryF($sql) or web_error($sql);
 }
예제 #8
0
        die('User invalid');
    }
}
$freebusy = new freebusy();
$freebusy->getFreeBusy($uid);
header("Content-Type: text/calendar; charset=UTF-8");
echo "BEGIN:VCALENDAR\n";
echo "VERSION:2.0\n";
echo "PRODID:-//FHCOMPLETE//EN\n";
echo "METHOD:PUBLISH\n";
echo 'ORGANIZER;CN=', $bn->vorname, ' ', $bn->nachname, ':mailto:', $uid, '@', DOMAIN, "\n";
echo 'DTSTAMP;TZID=Europe/Vienna:', date('Ymd', mktime(date('H'), date('i'), date('s'), date('m'), date('d') - 5, date('Y'))), 'T', date('Hms'), "\n";
echo 'DTSTART;TZID=Europe/Vienna:', date('Ymd', mktime(0, 0, 0, date('m'), date('d') - 5, date('Y'))), "T000000\n";
echo 'DTEND;TZID=Europe/Vienna:', date('Ymd', mktime(0, 0, 0, date('m'), date('d') + 30, date('Y'))), "T000000\n";
echo 'URL:', APP_ROOT, 'cis/public/freebusy.php/', $uid, "\n";
$ical = new ical();
foreach ($freebusy->result as $row) {
    if ($row->aktiv) {
        $fp = fopen($row->url, 'r');
        if (!$fp) {
            echo "{$errstr} ({$errno})<br />\n";
        } else {
            $doc = '';
            while (!feof($fp)) {
                $line = fgets($fp);
                $doc .= $line;
            }
            fclose($fp);
            $ical->importFreeBusy($doc, $row->freebusytyp_kurzbz);
        }
    }
예제 #9
0
    if ($command->num_rows === 1) {
        $userrow = $command->fetch_assoc();
        if ($row['value'] < $userrow['lastupdate']) {
            $row['value'] = $userrow['lastupdate'];
        }
    }
}
// Cachecontroll (um keinen sinnlosen Traffic zu erzeugen)
if (\filter_has_var(INPUT_SERVER, 'HTTP_IF_NONE_MATCH') and \trim(\filter_input(INPUT_SERVER, 'HTTP_IF_NONE_MATCH')) == md5(gmdate("D, d M Y H:i:s", $row['value']) . " GMT")) {
    header("HTTP/1.1 304 Not Modified");
    exit;
} elseif (\filter_has_var(INPUT_SERVER, 'HTTP_IF_MODIFIED_SINCE') and \trim(\filter_input(INPUT_SERVER, 'HTTP_IF_MODIFIED_SINCE')) == $row['value']) {
    header("HTTP/1.1 304 Not Modified");
    exit;
}
$ical = new ical();
$ical->setLastMod($row['value']);
if (\filter_has_var(INPUT_GET, 'Studiengang') and \filter_has_var(INPUT_GET, 'Semester')) {
    $command = "SELECT `id` FROM `vlv_entry2stud` WHERE `studiengang` = '" . $db->real_escape_string($_GET['Studiengang']) . "' AND `semester` = '" . $db->real_escape_string($_GET['Semester']) . "'";
    if (isset($_GET['Gruppe'])) {
        $command .= " AND `seminargruppe` = '" . $db->real_escape_string($_GET['Gruppe']) . "'";
        $ical->setName($_GET['Studiengang'] . "-" . $_GET['Semester'] . "-" . $_GET['Gruppe']);
    } else {
        $ical->setName($_GET['Studiengang'] . "-" . $_GET['Semester']);
    }
    $result = $db->query($command);
    $TerminIDs = array();
    while ($row = $result->fetch_assoc()) {
        $TerminIDs[] = $row;
    }
    $TerminIDsArray = array();
예제 #10
0
        }
        break;
    case 'Person':
        //FreeBusy Information holen
        $fp = fopen(APP_ROOT . 'cis/public/freebusy.php/' . $id, 'r');
        if (!$fp) {
            echo "{$errstr} ({$errno})<br />\n";
        } else {
            $doc = '';
            while (!feof($fp)) {
                $line = fgets($fp);
                $doc .= $line;
            }
            fclose($fp);
            //FreeBusy Parsen
            $ical = new ical();
            $ical->parseFreeBusy($doc);
            foreach ($ical->dtresult as $row) {
                $item['id'] = $id . $row['dtstart'] . $row['dtend'];
                $item['title'] = $id;
                $item['start'] = fixDate($row['dtstart']);
                $item['end'] = fixDate($row['dtend']);
                $item['allDay'] = false;
                $item['editable'] = false;
                $events[] = $item;
            }
        }
        break;
    default:
        break;
}