slug) && $post->type != 'dienst') { $url .= "/" . $post->type . "/" . $post->slug; } else { switch($post->type) { case 'mitglied': $url .= "/mitglied/$post->department"; break; case 'dienst': $year = ''; $department = ''; $instance = ''; $slug = ''; if(isset($post->department)) { $year = $post->year; $department = $post->department; $instance = $post->instance; if(isset($post->next)) { $slug = '#'.$post->next->slug; } } else { $year = Carbon::parse($post->datetime)->format('Y'); $department = TagHelper::getTagNameByType($post, 'abteilung'); $instance = TagHelper::getTagNameByType($post, 'instanz'); $slug = '#'.$post->slug; } $url .= "/" . $post->type . "/" .$year. "/" .$department. "/". $instance; if(is_string($suffix)) { $url .= "/dienstplan.$suffix"; } $url .= $slug; break; } } } } if(is_string($suffix)) { if(strlen($url) > 1 && $post->type != 'dienst') { $url .= '/'.$suffix; } } if($withFilter) { $url = URLHelper::addFilter($url); } return $url; } static function isLocal() { if(config('app.url') == "http://localhost" || config('app.url') == "http://ffw") { return true; } else { return false; } } static function base() { return config('app.url'); } static function current() { $request = app('request'); return $request->url(); } static function createQuickLogin($hash) { $domain = config('app.url'); $url = "$domain/quicklogin/$hash"; return $url; } static function isAdminURL() { $path = app('request')->path(); if(strpos($path, 'admin') === 0) { return true; } else { return false; } } static function addFilter($url) { if(app('request')->isMethod('GET')) { $pars = app('request')->request->all(); if(count($pars)) { foreach($pars as $key => $value) { if($key != 'page') { reset($pars); if($key === key($pars)) { $url .= "?"; } $url .= "$key=$value"; end($pars); if($key !== key($pars)) { $url .= "&"; } } } } } return $url; } static function Facebook($model) { return "https://www.facebook.com/".$model->publication('facebook')->state; } static function Twitter($model) { return "https://twitter.com/FEppingen/status/".$model->publication('twitter')->state; } }