<?php

namespace FOPRouter;

class Index {
  
  

  
  

    // --- Statische Methoden ---
  
  public static function aiURL($params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		
		return self::aiURL2($params);
	
    
  }

  public static function exportCFFURL($params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		
		return self::exportCFFURL2($params);
	
    
  }

  public static function indexURL($params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		
		return self::indexURL2($params);
	
    
  }

  public static function unregisterObserverURL($handle, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['handle'] = $handle;
		return self::unregisterObserverURL2($params);
	
    
  }

  public static function dataviewURL($data, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['data'] = $data;
		return self::dataviewURL2($params);
	
    
  }

  public static function setCFFOrderURL($form, $fids, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['form'] = $form;$params['fids'] = $fids;
		return self::setCFFOrderURL2($params);
	
    
  }

  public static function setCFFURL($form, $subid, $key, $value, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['form'] = $form;$params['subid'] = $subid;$params['key'] = $key;$params['value'] = $value;
		return self::setCFFURL2($params);
	
    
  }

  public static function favoritesURL($newValue, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['newValue'] = $newValue;
		return self::favoritesURL2($params);
	
    
  }

  public static function searchURLURL($q, $params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		$params['q'] = $q;
		return self::searchURLURL2($params);
	
    
  }

  public static function ImpressumURL($params = [] ) { 
    
    
    // --- BLOCK: main ---
    
		
		return self::ImpressumURL2($params);
	
    
  }

  public static function aiURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/ai';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function exportCFFURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/exportCFF';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function indexURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/index';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function unregisterObserverURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/unregisterObserver';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function dataviewURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/dataview';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function setCFFOrderURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/setCFFOrder';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function setCFFURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/setCFF';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function route($q) { 
    
    
    // --- BLOCK: main ---
    
	if (($q == 'ai')) {
		try {
			$result = \FOP\Index::aiAction();
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'exportCFF')) {
		try {
			$result = \FOP\Index::exportCFFAction();
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'index' || $q == '')) {
		try {
			$result = \FOP\Index::indexAction();
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'unregisterObserver') && isset($_GET['handle'])  ) {
		try {
			$result = \FOP\Index::unregisterObserverAction($_GET['handle']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'dataview') && isset($_GET['data'])  ) {
		try {
			$result = \FOP\Index::dataviewAction($_GET['data']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'favorites') && isset($_GET['newValue'])  ) {
		try {
			$result = \FOP\Index::favoritesAction($_GET['newValue']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'searchURL') && isset($_GET['q'])  ) {
		try {
			$result = \FOP\Index::searchURLAction($_GET['q']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'setCFFOrder') && isset($_GET['form'])   && isset($_GET['fids'])  ) {
		try {
			$result = \FOP\Index::setCFFOrderAction($_GET['form'], $_GET['fids']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'setCFF') && isset($_GET['form'])   && isset($_GET['subid'])   && isset($_GET['key'])   && isset($_GET['value'])  ) {
		try {
			$result = \FOP\Index::setCFFAction($_GET['form'], $_GET['subid'], $_GET['key'], $_GET['value']);
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}if (($q == 'Impressum')) {
		try {
			$result = \FOP\Index::ImpressumAction();
		} catch(\FOP\AccessDeniedException $e){
			\EasyEditor\Errors::render($e->getMessage() ?: 'accessdenied');
			die();
		}
		if (isset($result)) {
			header('Content-Type: application/json'); 
			die(json_encode($result));
		} else {
			die('');
		}
	}

	header('HTTP/1.0 404 Not found');
	\EasyEditor\Errors::render('Die angeforderte Funktion wurde nicht gefunden.');
	die();
    
  }

  public static function favoritesURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/favorites';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function searchURLURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/searchURL';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function ImpressumURL2($params) { 
    
    
    // --- BLOCK: main ---
    
		// Default-URL - kann durch rewrite-Regeln abgeändert werden
		
		if (!isset($url)) {
			$url = 'FOP/Index/Impressum';
			$isFirst = true;
		}
		foreach ($params AS $k => $v) {
			if (!is_null($v)) {
				$url .= ($isFirst ? '?' : '&') . urlencode($k) . '=' . \FOP\Util::urlencode($v);
				$isFirst = false;
			}
		}
		if (\FOP\Configuration::getFOPUtilEnableRewrite() == 'true' || \FOP\Configuration::getFOPUtilEnableRewrite() == 1) {
			return \FOP\Util::getCurrentBaseurl() . $url;
		} else {
			return \FOP\Util::getCurrentBaseurl() . 'fop-router.php?q=' . urlencode($url);
		}
	
    
  }

  public static function unregisterObserverAccess($handle) { 
    
    
    // --- BLOCK: access ---
    if(!(((\FOP\User::getIsLoggedIn())))) return false;
    // --- BLOCK: main ---
    return true;
    
  }

  public static function aiAccess() { 
    
    
    // --- BLOCK: access ---
    if(!(((\FOP\User::getIsLoggedIn())))) return false;
    // --- BLOCK: main ---
    return true;
    
  }

  public static function exportCFFAccess() { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function indexAccess() { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function dataviewAccess($data) { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function setCFFOrderAccess($form, $fids) { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function setCFFAccess($form, $subid, $key, $value) { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function favoritesAccess($newValue) { 
    
    
    // --- BLOCK: access ---
    if(!(((\FOP\User::getIsLoggedIn())))) return false;
    // --- BLOCK: main ---
    return true;
    
  }

  public static function searchURLAccess($q) { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }

  public static function ImpressumAccess() { 
    
    
    // --- BLOCK: access ---
    
    // --- BLOCK: main ---
    return true;
    
  }


  
  

  
  
}



