<?php
/**
* This file is part of the Easy-CMS project.
* Easy-CMS is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* 
* Easy-CMS is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with Easy-CMS; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/
	
include_once('classes/core/parser/tags/Tag.class.php');

/**
* Tag element.
*
* @access   public
* @author	Cedric Francoys <cedric.francoys@easy-cms.org>
* @version	ValueTag.class, Mon Jan 03 23:02:27 CET 2005
* @package	Tags
*/
class ValueTag extends Tag{
	
	/**
	* Constructor
	* 
	* @access   public
 	* @param    string  The complete tag syntax (i.e. : <tagname attr1="value1" attr2="value2">, <br />, </a>, ...)
 	* @param    integer The position of the tag in the xml document
 	* @return   void  
	*/	 	
	function ValueTag($tagString, $name, $type, $offset, $length){
		parent::Tag($tagString, $name, $type, $offset, $length);
	}

	/**
	* Performs actions specific to the tag
	* 
	* @access   public
 	* @return   bool Returns true if the current user is logged in, false otherwise.
	*/
	function evaluate($langId){
		$type = $this->getAttribute("type");
		
		switch($type){
			case "username" :
				return $this->user->getUserLogin();
				break;
			case "logon" :
				return ($this->user->getUserId() > 0)?"logout":"login";
				break;
			case "mode" :
				return ($this->mode == EDIT_MODE)?"view":"edit";
				break;          
			case "page" :
				return "index.php?pid=".$this->page->getPageId();
				break;
			case "pageId" :
				return $this->page->getPageId();
				break;				
			case "pagename" :
				return $this->page->getPageName($langId);
				break;           
			default :
				return $this->tagString;
				break;
		}
		return "";
	}
	
} 

?>