Code Search for Developers
 
 
  

Location.php from ECP (EliteCore Project) at Krugle


Show Location.php syntax highlighted

<?php
class Location {
	public static function getURI() {
		if (isset ($_SERVER['REQUEST_URI'])) {
			$uri = $_SERVER['REQUEST_URI'];
		} else {
			if (isset ($_SERVER['argv'])) {
				$uri = $_SERVER['PHP_SELF'] . '?' . $_SERVER['argv'][0];
			} else {
				$uri = $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING'];
			}
		}

		return $uri;
	}
	/**
	 * @param string $delimiter URL delimiter (default is <code>&amp;</code>)
	 * @return string Returns current URL (eg. /index.php?module=my&amp;op=yes)
	 */
	public static function getURL($delimiter = "&") {
		global $true_op;
		if (isset ($true_op) && empty ($_GET['op']))
			$_GET['op'] = $true_op;
		$i = 0;
		$get_vars = "";
		foreach ($_GET as $key => $value) {
			$i++;
			if (!empty ($value) && $key != 'logout' && $key != '___moduleRewrite___') {
				if ($i > 1)
					$get_vars .= $delimiter;
				$get_vars .= $key . "=" . $value;
			}
		}
		if (!empty ($get_vars))
			$get_vars = "?" . $get_vars;
		$url = self :: currentScript() . $get_vars;
		if (isset ($true_op) && $_GET['op'] == $true_op)
			$_GET['op'] = "";
		$url = Rewrite :: RewriteURL($url);
		$url = Rewrite :: RepairURL($url, $delimiter);
		return $url;
	}
	public static function RewriteWithParentModule($url) {
		return self::Rewrite($url,Engine::getFlag('parentModule'));
	}
	public static function Rewrite($url,$currentModule=false) {
		$systemKeys = array (
			'module',
			'moduleNick',
			'secondModuleNick',
			'___moduleRewrite___',
			'SEO_file',
			'op',
			'output',
			'id'
		);


		$delimiter = '&amp;';

		$i = 0;
		$get_vars = "";
		/*foreach ($_GET as $key => $value) {
			$i++;
			if (!empty ($value) && $key != 'logout' && !in_array($key, $systemKeys)) {
				if ($i > 1)
					$get_vars .= $delimiter;
				$get_vars .= $key . "=" . $value;
			}
		}*/
		if (!is_module($currentModule)) {
			$currentModule = Engine :: getFlag('currentModule');
		}
		$currentModule=$currentModule->getInstance();
		$count = 0;
		$url = str_replace('?', '?' . "module=" . $currentModule . $delimiter, $url, $count);
		if (!$count)
			$get_vars .= "module=" . $currentModule;

		if (!empty ($get_vars))
			$get_vars = $delimiter . $get_vars;
		$url = $url . $get_vars;
		if (isset ($true_op) && $_GET['op'] == $true_op)
			$_GET['op'] = "";
		$url = Rewrite :: RewriteURL($url);
		$url = Rewrite :: RepairURL($url, $delimiter);
		return $url;
	}
	/**
	* This methods redirects {@link User} to specified $url or to PHP_SELF
	* (=reloads current page).
	*
	* @param string $uri
	* @param int $mode
	*/
	public static function Redirect($url = false) {
		global $Config;
		if (empty ($url) || $url === false) {
			if (isset ($_GET['file']) && !empty ($_GET['file'])) {
				$file = "&file=" . $_GET['file'];
			} else {
				$file = "";
			}
			if (!isset ($_GET['module'])) {
				$url = "index.php";
			} else {
				$url = "index.php?module=" . $_GET['module'] . $file;
			}
		}
		//$url = Rewrite :: RewriteURL($url);
		$url = str_replace("&amp;", "&", $url);
		//$url = Rewrite :: RepairURL($url, "&");
		Event :: Call("onDebugPrint");
		Event :: Call("onDisconnect");
		DB :: Close();
		if (strpos($url, "http://") === false)
			$server = $Config->getPath();
		else
			$server = "";
		header("Location: " . $server . $url);
		exit ('<a href="' . $server . $url . '">' . $server . $url . '</a>');
	}
	public static function importURL($link = false) {
		global $ECP;

		if (isset ($_GET['moduleNick'])) {
			foreach (ModulesManager :: getModules() as $Module) {
				if (String :: TEXT2URL($Module->getNick()) == $_GET['moduleNick'] || isset ($_GET['secondModuleNick']) && String :: TEXT2URL($Module->getNick()) == $_GET['secondModuleNick']) {
					$_GET['module'] = $Module->getInstance();
					break;
				}
			}
		}

		if ($link !== false) {
			$link = explode("?", $link);
			if (sizeof($link) == 2) {
				str_replace('&amp;', '&', $link[1]);
				$GET_IMPORT = explode('&amp;', $link[1]);
				foreach ($GET_IMPORT as $token) {
					$token = explode('=', $token);
					if (sizeof($token) == 2) {
						$_GET[$token[0]] = $token[1];
					}
				}
			}
		}

	}
	/**
	* Returns the name of current running script - eg. index.php
	*
	* @return string
	*/
	public static function currentScript() {
		$data = explode("/", $_SERVER['PHP_SELF']);
		return $data[sizeof($data) - 1];
	}
}
?>



See more files for this project here

ECP (EliteCore Project)

EliteCore Project is a PHP5.1/Javascript/AJAX/XHTML/CSS framework for creating WEB 2.0 applications and services.The basic open-source instalation can be also used as an interactive personal page or BLOG.This project uses the latest features available.

Project homepage: http://sourceforge.net/projects/elitecore
Programming language(s): JavaScript,PHP,XML
License: cpl

  debug/
    content.php
  exceptions/
    ajaxflush.php
    nomodule.php
    undefineddata.php
  interface/
    encryption.php
    form.php
    module_class.php
    session_interface.php
  renderers/
    default.php
  sql/
    mysql.php
    mysqli.php
  themes/
    ECP/
      accept.png
      add.png
      alt_star.gif
      anchor.png
      arrow_refresh.png
      asterisk_orange.png
      asterisk_yellow.png
      attach.png
      back.png
      cog_error.png
      cog_go.png
      comment.png
      comment_add.png
      comment_delete.png
      comment_edit.png
      comments.png
      comments_add.png
      comments_delete.png
      control_play_blue.png
      drive.png
      gnome-fs-directory.png
      gnome-mime-audio.png
      layers.png
      layout.png
      layout_add.png
      layout_content.png
      layout_delete.png
      layout_edit.png
      layout_error.png
      layout_header.png
      layout_link.png
      layout_sidebar.png
      lightbulb.png
      lightbulb_add.png
      lightbulb_delete.png
      lightbulb_off.png
      lightning.png
      lightning_add.png
      lightning_delete.png
      lightning_go.png
      link.png
      link_add.png
      link_break.png
      link_delete.png
      link_edit.png
      link_error.png
      link_go.png
      lock.png
      lock_add.png
      lock_break.png
      lock_delete.png
      lock_edit.png
      lock_go.png
      lock_open.png
      newspaper.png
      newspaper_add.png
      newspaper_delete.png
      newspaper_go.png
      newspaper_link.png
      note.gif
      note.png
      note_add.png
      note_delete.gif
      note_delete.png
      note_edit.png
      note_error.png
      note_go.png
      note_new.gif
      overlays.png
      package.png
      package_add.png
      package_delete.png
      package_go.png
      package_green.png
      package_link.png
      page.gif
      page.png
      page_add.png
      page_attach.png
      page_code.png
      page_copy.png
      page_delete.png
      page_edit.png
      page_error.png
      page_excel.png
      page_find.png
      page_gear.png
      page_go.png
      page_green.png
      page_key.png
      page_lightning.png
      page_link.png
      page_paintbrush.png
      page_paste.png
      page_red.png
      page_refresh.png
      page_save.png
      page_white.png
      pencil.png
      pencil_add.png
      pencil_delete.png
      pencil_go.png
      photo.png
      photo_add.png
      photo_delete.png
      photo_link.png
      photos.png
      picture.png
      picture_add.png
      picture_delete.png
      picture_edit.png
      picture_empty.png
      picture_error.png
      picture_go.png
      picture_key.png
      picture_link.png
      picture_save.png
      pictures.png
      plugin.png
      plugin_add.png
      plugin_delete.png
      plugin_disabled.png
      plugin_edit.png
      plugin_error.png
      plugin_go.png
      plugin_link.png
      report.png
      report_add.png
      report_delete.png
      report_disk.png
      report_edit.png
      report_go.png
      report_key.png
      report_link.png
      report_magnify.png
      report_picture.png
      report_user.png
      report_word.png
      script.png
      script_add.png
      script_code.png
      script_code_red.png
      script_delete.png
      script_edit.png
      script_error.png
      script_gear.png
      script_go.png
      script_key.png
      script_lightning.png
      script_link.png
      script_palette.png
      script_save.png
      star.png
      star_rating.gif
      stop.png
      style.png
      text_align_center.png
      text_align_justify.png
      text_align_left.png
      text_align_right.png
      text_allcaps.png
      text_bold.png
      text_columns.png
      text_dropcaps.png
      text_heading_1.png
      text_heading_2.png
      text_heading_3.png
      text_heading_4.png
      text_heading_5.png
      text_heading_6.png
      text_horizontalrule.png
      text_indent.png
      text_indent_remove.png
      text_italic.png
      text_kerning.png
      text_letter_omega.png
      text_letterspacing.png
      text_linespacing.png
      text_list_bullets.png
      text_list_numbers.png
      text_lowercase.png
      text_padding_bottom.png
      text_padding_left.png
      text_padding_right.png
      text_padding_top.png
      text_replace.png
      text_signature.png
      text_smallcaps.png
      text_strikethrough.png
      text_subscript.png
      text_superscript.png
      text_underline.png
      text_uppercase.png
      textfield.png
      textfield_add.png
      textfield_delete.png
      textfield_key.png
      textfield_rename.png
      tux.png
      vert_star.gif
    ECP.xml
  Icon.php
  Location.php
  Module.php
  ModulesManager.php
  MusicTags.php
  Page.php
  XHTMLParser.php
  XMLForms.php
  ajax.php
  author.html
  cache.php
  config.php
  date.php
  db.php
  debug.php
  ecp-full.php
  ecp-mini.php
  engine.php
  events.php
  filesystem.php
  footer.html
  i18n.php
  mailer.php
  main.css
  mcrypt.php
  mime.php
  mod_rewrite.php
  perspective.php
  rc4.php
  reflection.php
  session_passport.php
  storage.php
  string.php
  template.php
  texy.php
  user.php
  user_cache.php
  wysiwyg_texy.php
  xhtml_form.php
  xtea.php