<?php
App::uses('AppController', 'Controller');
/**
 * Connectors Controller
 *
 * @property Connector $Connector
 * @property PaginatorComponent $Paginator
 * @property SessionComponent $Session
 */
class ModelosController extends AppController {
		
/**
 * Components
 *
 * @var array
 */
	public $components = array();	
	
/**
 * beforeFilter
 *
 * @return void
 */
	public function beforeFilter() {
		parent::beforeFilter();
		$this->autoLayout = false;
	}

/**
 * index close
 *
 * @return void
 */
	public function admin_manipular_date() {
	
		/**
		 * Carácter	Descrição
		 
			d	Dia do mês (2 dígitos)
			D	Dia do mês (Representação textual, Mon até Sun)
			m	Mês (2 dígitos)
			M	Mês (Representação textual, Jan até Dec)
			y	Ano (2 dígitos)
			Y	Ano (4 dígitos)
			l	Dia do mês (Representação textual, Sunday até Saturday)
			h	Hora (12 horas)
			H	Hora (24 horas)
			i	Minutos (2 dígitos)
			s	Segundos (2 dígitos)
			a	am ou pm
			A	AM ou PM
			
		 */	
		
		/**
		 * Primeiro e ultimo dia do mes
		 */
		$primeiroDiaDoMes = date("Y-m-1");
		$ultimoDiaDoMes = date("Y-m-t");
		
		/**
		 * subtraindo datas
		 */
		$Date = strtotime("now");
		$out = date('d/m/Y', strtotime('+2 year, +5 month, +1 days', $Date));
		
		//Pegar a hora agora
		echo strtotime("now");
		
		//Usando uma data textual
		echo strtotime("10 September 2000");
		
		//Adicionar um dia
		echo strtotime("+1 day");
		
		//Adicionar uma semana
		echo strtotime("+1 week");
		
		//Adicionar uma semana, dois dias, quatro horas e dois segundos
		echo strtotime("+1 week 2 days 4 hours 2 seconds");
		
		//Buscar por dia da semana, próxima quinta
		echo strtotime("next Thursday");
		
		//Buscar por dia da semana, última segunda
		echo strtotime("last Monday");
		
		//Pegar data de hoje e adicionar 10 dias
		$now = strtotime("now");
		echo strtotime("+10 day",$now);
		
		/**
		 * pegando o primeiro e ultimo dia da semana
		 */
		$out = date('d/m/Y', strtotime('-0 weeks sunday'));
		$out = date('d/m/Y', strtotime('-0 weeks saturday'));
		$out = date('m/d/y', strtotime('first day')); # 02/01/10
		$out = date('m/d/y', strtotime('last day')); # 02/28/10
		$out = date('m/d/y', strtotime('last day next month')); # 03/31/10
		$out = date('m/d/y', strtotime('last day last month')); # 01/31/10
		$out = date('m/d/y', strtotime('2009-12 last day')); # 12/31/09 - this doesn't work if you reverse the order of the year and month
		$out = date('m/d/y', strtotime('2009-03 last day')); # 03/31/09
		$out = date('m/d/y', strtotime('2009-03')); # 03/01/09
		$out = date('m/d/y', strtotime('last day of march 2009')); # 03/31/09
		$out = date('m/d/y', strtotime('last day of march')); # 03/31/10
		
		return $this->redirect(array('action' => 'notify', $out));
	}	
		
/**
 * notify envia para a view
 */	
	public function notify($message) {
		$this->set('title_for_layout', 'BmConnector');
		$this->set('notify', $message);
	}
	
	public function clean($value) {
		return str_replace("=D5", "/", $value);
	}

}
