tiki-accounting_entry.php 2.82 KB
Newer Older
1
<?php
2
// (c) Copyright 2002-2011 by authors of the Tiki Wiki CMS Groupware Project
3 4 5
// 
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
6
// $Id$
7 8 9 10 11 12 13 14 15 16 17 18 19

$section = 'accounting';
require_once ('tiki-setup.php');
require_once ('lib/accounting/accountinglib.php');


// Feature available?
if ($prefs['feature_accounting'] !='y') {
	$smarty->assign('msg', tra("This feature is disabled") . ": feature_accounting");
	$smarty->display("error.tpl");
	die;
}

20 21 22 23 24
$globalperms = Perms::get();
$objectperms = Perms::get( array( 'type' => 'accounting book', 'object' => $bookId ) );

if (!($globalperms->acct_book or $objectperms->acct_book)) {
	$smarty->assign('msg', tra("You do not have the right to book"));
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
	$smarty->display("error.tpl");
	die;		
}

if (!isset($_REQUEST['bookId'])) {
	$smarty->assign('msg', tra("Missing book id"));
	$smarty->display("error.tpl");
	die;
}
$bookId=$_REQUEST['bookId'];
$smarty->assign('bookId',$bookId);

$book=$accountinglib->getBook($bookId);
$smarty->assign('book',$book);

$accounts=$accountinglib->getAccounts($bookId,$all=true);
$smarty->assign('accounts',$accounts);

if (isset($_REQUEST['book'])) {
	check_ticket('accounting');
	$result=$accountinglib->book($bookId, $_REQUEST['journalDate'], $_REQUEST['journalDescription'],
			$_REQUEST['debitAccount'], $_REQUEST['creditAccount'],
			$_REQUEST['debitAmount'], $_REQUEST['creditAmount'],
			$_REQUEST['debitText'],$_REQUEST['creditText']);
	if(is_numeric($result)) {
		if (isset($_REQUEST['statementId'])) {
			$accountinglib->updateStatement($bookId, $_REQUEST['statementId'],$result);		
		}
	}
} else {
	$result=0;
}
if (is_array($result)) {
	$smarty->assign('errors',$result);
    $smarty->assign('journalDate',$_REQUEST['journalDate']);
    $smarty->assign('journalDescription',$_REQUEST['journalDescription']);
    $smarty->assign('debitAccount',$_REQUEST['debitAccount']);
    $smarty->assign('creditAccount',$_REQUEST['creditAccount']);
    $smarty->assign('debitAmount',$_REQUEST['debitAmount']);
    $smarty->assign('creditAmount',$_REQUEST['creditAmount']);
    $smarty->assign('debitText',$_REQUEST['debitText']);
    $smarty->assign('creditText',$_REQUEST['creditText']);
    if (isset($_REQUEST['statementId'])) {
    	$smarty->assign('statementId',$_REQUEST['statementId']);
    }
} else {
	$smarty->assign('debitAccount',array(''));
	$smarty->assign('creditAccount',array(''));
	$smarty->assign('debitAmount',array(''));
	$smarty->assign('creditAmount',array(''));
	$smarty->assign('debitText',array(''));
	$smarty->assign('creditText',array(''));
}

ask_ticket('accounting');

$journal=$accountinglib->getJournal($bookId,'%','`journalId` DESC',5);
$smarty->assign('journal',$journal);

$smarty->assign('mid','tiki-accounting_entry.tpl');
85
$smarty->display("tiki.tpl");