function addEventDate($runat,$event_id,$event_date='',$start_time='',$end_time=''){ ob_start(); $this->event_id=$event_id; switch($runat) { case 'local': $FormName='FrmAddDate'; $ControlNames=array("event_date" =>array('event_date',"''","Please Select Event Date ","span_event_date") ); $ValidationFunctionName="CheckValidity"; $JsCodeForFormValidation=$this->validity->ShowJSFormValidationCode($FormName,$ControlNames,$ValidationFunctionName,$SameFields,$ErrorMsgForSameFields); echo $JsCodeForFormValidation; ?> <script type="text/javascript"> function checkTime(start_time,end_time){ var temp_start1 = new Array(); var temp_end1 = new Array(); var temp_start = new Array(); var temp_end = new Array() var flag=0; temp_start1 = start_time.split(" "); temp_end1 = end_time.split(" "); temp_start = temp_start1[0].split(":"); temp_end = temp_end1[0].split(":"); if(temp_start1[1]=='pm') { temp_start[0]=parseInt(temp_start[0])+12; } if(temp_end1[1]=='pm') { temp_end[0]=parseInt(temp_end[0])+12; } if(parseInt(temp_start[0]) > parseInt(temp_end[0])) { flag=1; } else if(parseInt(temp_start[0]) == parseInt(temp_end[0]) && parseInt(temp_start[1]) > parseInt(temp_end[1])) { flag=1; } if(flag==1) { alert('Start time is greater then end time !!'); return false; } else return true; } </script> <div class="prl"> </div> <div id="lightbox"> <div style="background-color:#ADC2EB;" align="left" class="ajax_heading"> <div id="TB_ajaxWindowTitle">Add Event Date</div> <div id="TB_closeAjaxWindow"><a href="javascript:void(0)" onclick="javascript: document.getElementById('div_event').style.display='none';jQuery.ptTimeSelect.closeCntr();"><img border="0" src="images/close.gif" alt="close" /></a></div> </div> <div class="white_content"> <div style="padding:20px;" class="form_main"> <ul id="error_list"> <li><span id="span_event_date"></span></li> </ul> <form name="<?php echo $FormName; ?>" method="post" action="" enctype="multipart/form-data" > <table class="table" width="100%"> <tr> <th>Event Date</th><td> <?php if($event_date=='') { $sql = "select * from ".EM_DATE." where event_id= ".$this->event_id." order by event_date desc limit 1"; $result = $this->db->query($sql,__FILE__,__lINE__); $row = $this->db->fetch_array($result); $d = explode("-",$row['event_date']); if($row['event_date']) $event_date= date("Y-m-d",mktime(0, 0, 0, $d[1], ($d[2]+1), $d[0])); else $event_date= date("Y-m-d"); } ?> <input name="event_date" type="text" id="event_date" value="<?php echo $event_date;?>" readonly="true"/> <script type="text/javascript"> function start_cal() { new Calendar({ inputField : "event_date", dateFormat : "%Y-%m-%d", trigger : "event_date", weekNumbers : true, bottomBar : true, selected : <?php echo $event_date;?>, onSelect : function() { this.hide(); document.<?php echo $FormName;?>.event_date.value=this.selection.print("%Y-%m-%d"); } }); } </script> <a href="javascript:void(0);" onclick="javascript: document.<?php echo $FormName;?>.event_date.value='';"><img src="images/trash.gif" border="0"/></a> </td> <th>Start Time</th> <td><input id='start_time' name="start_time" type='text' value="00:00 am" size="8" maxlength="8" ></td> </td> <th>End Time</th> <td><input id='end_time' name="end_time" type='text' value="00:00 pm" size="8" maxlength="8" ></td> <td><input type="button" name="submit" value="Add" id="submit" onClick="javascript: if(<?php echo $ValidationFunctionName; ?>()) { if(checkTime(this.form.start_time.value,this.form.end_time.value)) { evt.checkConflict(this.form.event_date.value,'<?php echo $event_id; ?>',{onUpdate: function(response,root){ res_arr = response.split('^'); if(res_arr[0]>0 || res_arr[1]>0){ if(confirm('you have conflict in '+res_arr[0]+' contact(s) <?php if(count($_SESSION[contact_conflict])>0){ echo "with contact id(s) "; for($k=0;$k<count($_SESSION[contact_conflict]);$k++) echo $_SESSION[contact_conflict][$k].","; } ?> and '+res_arr[1]+' equipment(s) <?php if(count($_SESSION[equipment_conflict])>0){ echo "with equipment id(s) "; for($k=0;$k<count($_SESSION[equipment_conflict]);$k++) echo $_SESSION[equipment_conflict][$k].","; } ?>.\nDo you wish to continue.')) { if(res_arr[0]>0){ evt.addTaskForContact('<?php echo $event_id; ?>',{preloader:'prl'}); } if(res_arr[1]>0){ evt.addTaskForEquipment('<?php echo $event_id; ?>',{preloader:'prl'}); } evt.addEventDate('server','<?php echo $event_id; ?>',document.getElementById('event_date').value,document.getElementById('start_time').value,document.getElementById('end_time').value,{target:'div_event', preloader: 'prl'}); } else { document.getElementById('div_event').style.display='none'; evt.ShowEventDate('<?php echo $event_id ?>',{target:'event_date',preloader: 'prl'}); } } else { evt.addEventDate('server','<?php echo $event_id; ?>',document.getElementById('event_date').value,document.getElementById('start_time').value,document.getElementById('end_time').value,{target:'div_event', preloader: 'prl'}); } }, preloader: 'prl'}); } } jQuery.ptTimeSelect.closeCntr();return false;" /></td> </tr> </table> </form> </div></div></div> <?php break; case 'server': $sql_date = "select event_date from ".EM_DATE." where event_id= '".$event_id."'"; $result_date = $this->db->query($sql_date,__FILE__,__LINE__); while($row_date = $this->db->fetch_array($result_date)) if($row_date['event_date']==$event_date) $flag=1; if($flag==1) { ?><script> alert("Select a new date!! This date is already exist!!"); evt.addEventDate('local','<?php echo $this->event_id;?>', { onUpdate: function(response,root){ document.getElementById('div_event').innerHTML=response; document.getElementById('div_event').style.display=''; start_cal(); }, preloader: 'prl' } ); </script> <?php } else { $insert_sql_array[event_date] = $event_date; $insert_sql_array[end_time] = $end_time; $insert_sql_array[start_time] = $start_time; $insert_sql_array[event_id] = $event_id; $this->db->insert(EM_DATE,$insert_sql_array); $con = new Event_Contacts(); $sql = "select * from ".EM_DATE." where event_id= '".$event_id."'"; $result = $this->db->query($sql,__FILE__,__LINE__); $sql_staff = "select * from ".EM_STAFFING." where event_id= '".$event_id."' and status='Staffed'"; $result_staff = $this->db->query($sql_staff,__FILE__,__LINE__); while($row_staff = $this->db->fetch_array($result_staff)) { if($row_staff[contact_id]){ while($row = $this->db->fetch_array($result)) { $con->Availability($row_staff[contact_id],$event_id,$row['event_date'],$row['start_time'],$row['end_time'],'Event Assigned'); } } } /********************************************/ $sql = "select * from ".EM_EVENT." where event_id= '".$event_id."'"; $result = $this->db->query($sql,__FILE__,__LINE__); $row = $this->db->fetch_array($result); if(count($_SESSION[equipment_conflict])>0){ $sql_eve = "select * from ".EM_EVENT_EQUIPMENT." where event_id= '".$event_id."'"; $result_eve = $this->db->query($sql_eve,__FILE__,__LINE__); while($row_eve = $this->db->fetch_array($result_eve)) { $sql_avail = "update ".EM_EQUIPMENT_AVAILABILITY." set `status`='".$row[group_event_id]."' where `event_id`= '".$event_id."' and `unavailability_date`='".$event_date."' and `equipment_id`='".$row_eve[equipment_id]."'"; ?><script type="text/javascript">alert('<?php echo $sql_avail; ?>')</script><? $this->db->query($sql_avail,__FILE__,__LINE__); } } else { $equipment = new Equipment(); $sql = "select * from ".EM_DATE." where event_id= '".$event_id."'"; $result = $this->db->query($sql,__FILE__,__LINE__); $sql_equip = "select * from ".EM_EVENT_EQUIPMENT." where event_id= '".$event_id."'"; $result_equip = $this->db->query($sql_equip,__FILE__,__LINE__); while($row_equip = $this->db->fetch_array($result_equip)) { while($row = $this->db->fetch_array($result)) { $equipment->assignEquipment($row_equip[equipment_id],$event_id); } } } } ?> <script type="text/javascript"> document.getElementById('div_event').innerHTML=''; evt.ShowEventDate('<?php echo $this->event_id ?>',{target:'event_date',preloader: 'prl'}); </script> <?php break; } $html = ob_get_contents(); ob_end_clean(); return $html; }
function assignStaff($event_id = '', $staffing_id = '', $contact_id = '') { ob_start(); $sql_staff = "select * from " . EM_STAFFING . " where staffing_id='" . $staffing_id . "'"; $result_staff = $this->db->query($sql_staff, __FILE__, __LINE__); $row = $this->db->fetch_array($result_staff); $event_id = $row['event_id']; if ($row['contact_id'] != '') { $this->deletePosition($staffing_id, $event_id, 'unstaff', 'false'); } $con = new Event_Contacts(); $update_sql_array = array(); $update_sql_array['contact_id'] = $contact_id; //$update_sql_array['status'] = 'Staffed'; $this->db->update(EM_STAFFING, $update_sql_array, 'staffing_id', $staffing_id); $sql = "select * from " . EM_DATE . " where event_id= '" . $event_id . "'"; $result = $this->db->query($sql, __FILE__, __LINE__); while ($row = $this->db->fetch_array($result)) { $con->Availability($contact_id, $event_id, $row['event_date'], $row['start_time'], $row['end_time'], 'Event Assigned'); } $html = ob_get_contents(); ob_end_clean(); return $html; }