You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
175 lines
5.8 KiB
175 lines
5.8 KiB
<?php
|
|
/*********************************************************************************
|
|
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
|
|
* ("License"); You may not use this file except in compliance with the
|
|
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
|
|
* Software distributed under the License is distributed on an "AS IS" basis,
|
|
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
|
|
* the specific language governing rights and limitations under the License.
|
|
* The Original Code is: SugarCRM Open Source
|
|
* The Initial Developer of the Original Code is SugarCRM, Inc.
|
|
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
|
|
* All Rights Reserved.
|
|
* Contributor(s): ______________________________________.
|
|
********************************************************************************/
|
|
/*********************************************************************************
|
|
* $Header: /cvsroot/vtigercrm/vtiger_crm/modules/Calendar/Save.php,v 1.4 2005/01/17 05:11:26 saraj Exp $
|
|
* Description: Saves an Account record and then redirects the browser to the
|
|
* defined return URL.
|
|
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
|
|
* All Rights Reserved.
|
|
* Contributor(s): ______________________________________..
|
|
********************************************************************************/
|
|
|
|
require_once('modules/Calendar/UserCalendar.php');
|
|
require_once('include/logging.php');
|
|
require_once('include/database/PearDatabase.php');
|
|
require_once('modules/Calendar/webelements.p3');
|
|
require_once('modules/Calendar/Date.pinc');
|
|
#require_once('database/DatabaseConnection.php');
|
|
|
|
//Added for Appointment Validation
|
|
global $callink,$mod_strings;
|
|
$callink = "index.php?module=Calendar&action=";
|
|
|
|
//$pref = new preference();
|
|
if ( ! isset($_REQUEST['gotourl']) ) {
|
|
$gotourl= $callink ."app_new";
|
|
} else {
|
|
$gotourl=$_REQUEST['gotourl'] ;
|
|
}
|
|
$msg = "";
|
|
if ( isset($_REQUEST['creator']) ) {
|
|
$gotourl= addUrlParameter($gotourl,"creator=".$_REQUEST['creator'],true);
|
|
}
|
|
if ( isset($_REQUEST['t_ignore']) ) {
|
|
$_REQUEST['t_ignore'] = 1;
|
|
} else {
|
|
$_REQUEST['t_ignore'] = 0;
|
|
}
|
|
|
|
$gotourl= addUrlParameter($gotourl,"t_ignore=".$_REQUEST['t_ignore'],true);
|
|
|
|
# Set the Start and End time
|
|
|
|
$start = new DateTime();
|
|
$start->setDateTimeF("start");
|
|
$start->getTimeStamp();
|
|
if ( ( !$start->checkDMY()) || (-1 == $start->getTimeStamp() ) ) {
|
|
$msg .= sprintf($mod_strings['LBL_APP_ERR001'],$mod_strings['LBL_APP_START_DATE']) ."<br>";
|
|
} else {
|
|
$gotourl= addUrlParameter($gotourl,"start=".$start->getYYYYMMDDHHMM(),true);
|
|
$_REQUEST['a_start'] = sprintf ("'%04d-%02d-%02d %02d:%02d:%02d'",$start->year,$start->month,$start->day,$start->hour,$start->min,$start->sec);
|
|
$start_ts = $start->getYYYYMMDDHHMM();
|
|
}
|
|
|
|
$end = new DateTime();
|
|
$end->setDateTimeF("end");
|
|
if ( ( !$end->checkDMY()) || (-1 == $end->getTimeStamp()) ) {
|
|
$msg .= sprintf($mod_strings['LBL_APP_ERR001'],$mod_strings['LBL_APP_END_DATE']) ."<br>";
|
|
} else {
|
|
$gotourl= addUrlParameter($gotourl,"end=".$end->getYYYYMMDDHHMM(),true);
|
|
$_REQUEST['a_end'] = sprintf ("'%04d-%02d-%02d %02d:%02d:%02d'",$end->year,$end->month,$end->day,$end->hour,$end->min,$end->sec);
|
|
$end_ts = $end->getYYYYMMDDHHMM();
|
|
}
|
|
|
|
#
|
|
# Checks
|
|
#
|
|
if ($start_ts > $end_ts) {
|
|
# Start after End
|
|
$msg .= $mod_strings['LBL_APP_ERR002'] ."<br>";
|
|
}
|
|
|
|
#
|
|
# Subject
|
|
#
|
|
if ( !isset($_REQUEST['subject']) || $_REQUEST['subject'] == "") {
|
|
$msg .= $mod_strings['LBL_APP_ERR004'] ."<br>";
|
|
}
|
|
else {
|
|
$gotourl= addUrlParameter($gotourl,"subject=".$_REQUEST['subject'],true);
|
|
}
|
|
#
|
|
# Contact
|
|
#
|
|
if ((!isset($_REQUEST['contact_name'])) || ($_REQUEST['contact_name'] == " ")) {
|
|
$msg .= $mod_strings['LBL_APP_ERR003']."<br>";
|
|
}
|
|
else
|
|
{
|
|
$gotourl= addUrlParameter($gotourl,"contact_name=".$_REQUEST['contact_name'],true);
|
|
$gotourl= addUrlParameter($gotourl,"contact_id=".$_REQUEST['contact_id'],true);
|
|
}
|
|
#
|
|
# OUTSIDE
|
|
#
|
|
if ( !isset($_REQUEST['outside']) ) {
|
|
$_REQUEST['outside'] = 0;
|
|
}
|
|
$gotourl= addUrlParameter($gotourl,"outside=".$_REQUEST['outside'],true);
|
|
#
|
|
# DESCRIPTION
|
|
#
|
|
$gotourl = addUrlParameter($gotourl,"descr=". UrlEncode($_REQUEST['descr']),true);
|
|
#
|
|
|
|
##################################################
|
|
# End of Checks
|
|
##################################################
|
|
if ( $msg == "" ) {
|
|
|
|
/* Save and Go back to calendar */
|
|
$local_log =& LoggerManager::getLogger('index');
|
|
|
|
$focus = new UserCalendar();
|
|
#$focus->retrieve($_REQUEST['creator']);
|
|
|
|
$update = isset($_REQUEST['id']);
|
|
|
|
foreach($focus->column_fields as $field)
|
|
{
|
|
if($update && $field=='creator')
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(isset($_REQUEST[$field]))
|
|
{
|
|
$value = $_REQUEST[$field];
|
|
$focus->$field = $value;
|
|
}
|
|
|
|
}
|
|
|
|
foreach($focus->additional_column_fields as $field)
|
|
{
|
|
if(isset($_REQUEST[$field]))
|
|
{
|
|
$value = $_REQUEST[$field];
|
|
$focus->$field = $value;
|
|
|
|
}
|
|
}
|
|
|
|
$focus->save();
|
|
$return_id = $focus->id;
|
|
|
|
if(isset($_REQUEST['return_module']) && $_REQUEST['return_module'] != "") $return_module = $_REQUEST['return_module'];
|
|
else $return_module = "Accounts";
|
|
if(isset($_REQUEST['return_action']) && $_REQUEST['return_action'] != "") $return_action = $_REQUEST['return_action'];
|
|
else $return_action = "DetailView";
|
|
if(isset($_REQUEST['return_id']) && $_REQUEST['return_id'] != "") $return_id = $_REQUEST['return_id'];
|
|
|
|
$local_log->debug("Saved record with id of ".$return_id);
|
|
|
|
$gotourl ="index.php?action=$return_action&module=$return_module&record=$return_id";
|
|
|
|
}
|
|
$gotourl = addMessage($gotourl,$msg,true);
|
|
$gotourl = addSessionKey($gotourl,true);
|
|
|
|
Header("Status: 302 Moved Temporarily");
|
|
Header("Location: " . $gotourl);
|
|
|
|
?>
|
|
|