<?
$pre   = '';
include  "common.php";
$title = "Calendar Submission";
$logo  = false;

$dp = '%(19|20)\d\d[-/.](0[1-9]|1[012])[-/.](0[1-9]|[12][0-9]|3[01])%';
$success = false;
$valid   = true;
$valid = ( $valid && (preg_match($dp,$_POST['start']) || empty($_POST['start'])) ) ? true : false;
$valid = ( $valid && (preg_match($dp,$_POST['end'])   || empty($_POST['end'])) )   ? true : false;

if($_POST['but'] == "Submit" && $valid){
   include "audit.php";
   $audit=audit();      
}

if($_POST['but'] == "Submit" && $valid && $audit){
   $data = $_POST;

   if(!empty($data['link_titles']))
      $data['link_titles'] = implode(DELIM,$data['link_titles']);
   if(!empty($data['links']))
      $data['links']       = implode(DELIM,$data['links']);

   // Format the date fields
   if(!empty($data['start'])){
      $data['start'] = preg_replace("/(\d{4})-(\d{2})-(\d{2})/","$1$2$3",$data['start']);
   }
   if(!empty($data['end'])){
      $data['end'] = preg_replace("/(\d{4})-(\d{2})-(\d{2})/","$1$2$3",$data['end']);
   }
   if(!empty($data['reg_deadline'])){
      $data['reg_deadline'] = preg_replace("/(\d{4})-(\d{2})-(\d{2})/","$1$2$3",$data['reg_deadline']);
   }
   
   $suf = ''; // compiles the SET statement
   foreach($data as $key => $value){
      if($key == "but" || $key == "num" || $key == "userdigit")
         $value = '';
      else
         $value = $data[$key];

      if(!empty($value))
         $suf .= $key . "='" . $value . "', ";
      if(empty($value) && $key != "but" && $key != "num" && $key != "userdigit")
         $suf .= $key . "=NULL, ";
   } // foreach($data as $key => $value)

   $suf = substr($suf, 0, -2); //cuts the last ", " off

   $tbname = TABLE_CALENDAR_PURG;
   $query  = "INSERT INTO $tbname SET $suf";
   //echo $query;
   $result = $db->sql_query($query);
   if(!$result){
      $indication = "unknown error please try again 1";
   }
   else{
      $event_id   = $db->sql_nextid($result);
      $indication = stripslashes($data['title']) . " Added Successfully!";
      $from       = "From: " . $data['req_email'];
      $message    = 'The Item "' . stripslashes($data['title']) . '" has been submitted for approval:' . "\n\n" .
         USGLOBEC . "admin/calendar.php?act=app&ind=" . $event_id;
      mail(DAVE,"Calendar Submission",$message,$from);
      $success    = true;
   }
}

if(isset($success) && $success){
   include HEAD;
?>
<h2><?=stripslashes($data['title'])?> has been submitted for approval and should appear on the events page soon. Thank you.</h2>
<?
   include FOOT;
   exit;
}

$data = $_POST;
$lt   = $data['link_titles'];
$l    = $data['links'];

if($data['but'] == "Preview"){
   $preview = display_event($data);
}

if(is_numeric($data['num']) && $data['num']<100){
   $num_safe=$data['num'];}
else{
   $num=count($l);
   if($num>3){
      $num_safe=$num;
   }
   else{
      $num_safe=3;
   }
}

include HEAD;
?>
<table width="60%">
<?=$preview?>
</table>
<hr>
<?
if(!$valid) echo '<h2><font color="red">Your start and/or end dates are invalid</font></h2>';
if($_POST['but'] == "Submit" && !$audit) echo '<h2><font color="red">You must enter to correct validation code</font></h2>';
echo $indication;
?>
<br />
<h1>Calendar Submission</h1>
<form name="mainform" method="post" action="<?=PUBLIC_CALENDAR?>">
<table>
<?
if(!empty($data['req_email']))
   $tmp=stripslashes($data['req_email']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">*Your Email Address: </font>
   </td>
   <td>
      <input type="text" name="req_email" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<?
if(!empty($data['title']))
   $tmp=stripslashes($data['title']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">Title: </font>
   </td>
   <td>
      <input type="text" name="title" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<?
if(!empty($data['start']))
   $tmp=stripslashes($data['start']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">Start Date: </font>
   </td>
   <td>
      <input type="text" name="start" value="<?=$tmp?>" size="11" maxlength="10" onkeypress="return noenter(this,event)" />
      (YYYY-MM-DD)
   </td>
</tr>
<?
if(!empty($data['end']))
   $tmp=stripslashes($data['end']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">End Date: </font>
   </td>
   <td>
      <input type="text" name="end" value="<?=$tmp?>" size="11" maxlength="10" onkeypress="return noenter(this,event)" />
      (YYYY-MM-DD)
   </td>
</tr>
<?
if(!empty($data['reg_deadline']))
   $tmp=stripslashes($data['reg_deadline']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">Registration Deadline: </font>
   </td>
   <td>
      <input type="text" name="reg_deadline" value="<?=$tmp?>" size="11" maxlength="10" onkeypress="return noenter(this,event)" />
      (YYYY-MM-DD)
   </td>
</tr>
<?
if(!empty($data['location']))
   $tmp=stripslashes($data['location']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">Location: </font>
   </td>
   <td>
      <textarea name="location" rows="2" cols="30"><?=$tmp?></textarea>
   </td>
</tr>
<?
if(!empty($data['description']))
   $tmp=stripslashes($data['description']);
else
   $tmp='';
?>
<tr>
   <td valign="top">
      <font class="NORMAL">Description: </font>
   </td>
   <td>
      <textarea name="description" rows="4" cols="30"><?=$tmp?></textarea>
   </td>
</tr>
<?
if(!empty($data['contact']))
   $tmp=stripslashes($data['contact']);
else
   $tmp='';
?>
<tr>
   <td>
      <font class="NORMAL">Contact: </font>
   </td>
   <td>
      <input type="text" name="contact" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<?
if(!empty($data['contact_email']))
   $tmp=stripslashes($data['contact_email']);
else
   $tmp='';
?>
<tr>
   <td>
      <font class="NORMAL">Contact Email: </font>
   </td>
   <td>
      <input type="text" name="contact_email" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<?
if(!empty($data['contact_location']))
   $tmp=stripslashes($data['contact_location']);
else
   $tmp='';
?>
<tr>
   <td>
      <font class="NORMAL">Contact Location: </font>
   </td>
   <td>
      <input type="text" name="contact_location" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<?
if(!empty($data['logo']))
   $tmp=stripslashes($data['logo']);
else
   $tmp='';
?>
<tr>
   <td>
      <font class="NORMAL">Logo Link: </font>
   </td>
   <td>
      <input type="text" name="logo" value="<?=$tmp?>" size="40" maxlength="255" onkeypress="return noenter(this,event)" />
   </td>
</tr>
<tr>
   <td colspan="2">
      How many links?
      <input type="text" name="num" value="<?=$num_safe?>" size="2" maxlength="2" /> 
      <input type="submit" name="but" value="Update" /><br />
   </td>
</tr>
<?
for($i=0;$i<$num_safe;$i++){
   $tmp1 = (!empty($lt[$i])) ? stripslashes($lt[$i]) : '';
   $tmp2 = (!empty($l[$i]))  ? stripslashes($l[$i])  : '';
   $tmp3 = $i+1;
   echo "<tr>\n   <td>\n      Link " . $tmp3 . " Title: \n   </td>\n";
   echo "   <td>\n      " . '<input name="link_titles[]" value="' . $tmp1 . '" size="40" />' . "\n   </td>\n</tr>\n";
   echo "<tr>\n   <td>\n      Link " . $tmp3 . ": \n   </td>\n";
   echo "   <td>\n      " . '<input name="links[]" value="' . $tmp2 . '" size="40" />' . "\n   </td>\n</tr>\n";
}
?>
<tr>
   <td>
      <font class="NORMAL">Authentication: </font>
   </td>
   <td>
      please enter the numbers you see in the image below.
      <img width="120" height="30" src="button.php" border="1">
      <br />
      <input maxlength="5" SIZE="5" name="userdigit" type="text" value="">
      <br />
   </td>
</tr>
<tr>
   <td>&nbsp;</td>
   <td>
      <input type="submit" name="but" value="Preview" /> <input type="submit" name="but" value="Submit" />
   </td>
</tr>
</table>
</form>
<hr />
<b>NOTES:</b><br />
*: This email address is only used to notify you when/if your calendar item has been added to the database.
<?
include FOOT;
?>
