Location: PHPKode > projects > TEMS -Time and Expense Management System > tems/expensedetails/Create.php
<?php

/*********************************************************************************
 * TES is a Time and Expense Management program developed by
 * Initechs, LLC. Copyright (C) 2009 - 2010 Initechs LLC.
 *
 * This program is free software; you can redistribute it and/or modify it under
 * the terms of the GNU General Public License version 3 as published by the
 * Free Software Foundation with the addition of the following permission added
 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
 * IN WHICH THE COPYRIGHT IS OWNED BY INITECHS, INITECHS DISCLAIMS THE WARRANTY
 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
 *
 * This program 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
 * this program; if not, see http://www.gnu.org/licenses or write to the Free
 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301 USA.
 *
 * You can contact Initechs headquarters at 1841 Piedmont Road, Suite 301,
 * Marietta, GA, USA. or at email address hide@address.com
 *
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU General Public License version 3.
 *
 * In accordance with Section 7(b) of the GNU General Public License version 3,
 * these Appropriate Legal Notices must retain the display od the "Initechs" logo.
 * If the display of the logo is not reasonably feasible for technical reasons,
 * the Appropriate Legal Notices must display the words "Powered by Initechs".

 ********************************************************************************/

$basedir = dirname(__FILE__) . '/..';

require_once("$basedir/initialize.php");
require_once("$basedir/expensedetails/DbObj.php");
require_once("$basedir/baseclass/DataValidator.php");

class CreateProcess extends DataValidator
{

	protected function isValidPostData()
	{
		$ret_val = true;
			
		if (!$this->chkMandatory('users_id')) $ret_val = false;
		if (!$this->chkMandatory('projects_id')) $ret_val = false;
		if (!$this->chkMandatory('weekenddate')) $ret_val = false;
		if (!$this->chkMandatory('expensedate')) $ret_val = false;
		if (!$this->chkDate('expensedate')) $ret_val = false;
		if (!$this->chkMandatory('expensecategories_id')) $ret_val = false;
		if (!$this->chkMandatory('description')) $ret_val = false;
			
		if ($_POST['amount'] == 0) $_POST['amount'] = '';
		if ($_POST['mile'] == 0) $_POST['mile'] = '';
			
		if ($_POST['amount'] <> ''
		and $_POST['mile'] <> '')
		{
			$this->issueError('amount', 'er0030');
			$this->issueError('mile', 'er0030');
			$ret_val = false;
		}

		if (!$this->chkNumeric('amount', 2)) $ret_val = false;
		if (!$this->chkNumeric('mile', 0)) $ret_val = false;

		return $ret_val;
	}

	protected function processIncomingFormData()
	{
		global $goOnSuccess;
		$dateFormat = getUserDateFormat();

		try
		{
			$usid = trim($_POST['users_id']);
			$pjid = trim($_POST['projects_id']);
			$wedt = convertdate(trim($_POST['weekenddate']), $dateFormat, 'ymd');
			$esdt = convertdate(trim($_POST['expensedate']), $dateFormat, 'ymd');
			$catg = trim($_POST['expensecategories_id']);
			$desc = trim($_POST['description']);
			$amnt = trim($_POST['amount']);
			$mile = trim($_POST['mile']);
			$cmnt = trim($_POST['comment']);

			$Row = new ExpenseDetailData();
			$uid = $Row->createRow($usid, $pjid, $wedt, $esdt, $catg, $desc, $cmnt, $amnt, $mile);

			$goOnSuccess .= $uid;

			return true;
		}
		catch (iBLError $e)
		{
			$this->issueError("$e->errField", "$e->msgid", "$e->msgdta");
		}

		catch (iIDInUseException $e)
		{
			$this->issueError('nocategory', 'er0004', $e->getMessage());
		}

		catch (Exception $e)
		{
			$this->issueError('nocategory', "er9998", "$e");
		}
	}

}


if (!isset($_POST['uid']))
$_POST['uid'] = '';

$goOnSuccess = "../index.php?module={$_SESSION['module']}&action=Browse&uid=";
$goOnError = "../index.php?module={$_SESSION['module']}&action=Create&uid={$_POST['uid']}&load=No";

$Page = new CreateProcess();
$Page->processRequest();


?>
Return current item: TEMS -Time and Expense Management System