function create($station, $track = '') { global $user; $prg = new sotf_Programme(); $prg->set('station', $station); $id = new sotf_Id($station, NULL, $track); $id->track = sotf_Programme::getNextTrackId($station, $id->date, $track); $prg->set('entry_date', $id->date); $prg->set('owner', $user->name); while (1) { $prg->set('track', $id->track); $prg->id = $id->toString(); if ($prg->save()) { // this will also create the required directories via setMetadataFile !! debug("created new programme", $prg->id); return $prg; } $id->track = sotf_Programme::getNextTrackId($station, $id->date, $id->track); } }