function GoogleCallsUsers(&$bean, $event, $arguments) { global $sugar_config, $dbconfig, $beanList, $beanFiles, $app_strings, $app_list_strings, $current_user, $db; if (isset($_REQUEST['entryPoint'])) { if ($_REQUEST['entryPoint'] == "acceptDecline") { if ($_REQUEST['user_id'] != "") { if ($_REQUEST['accept_status'] == "accept" or $_REQUEST['accept_status'] == "tentative") { //decline if (!isset($_REQUEST['allready_retrieved_user_acceptDecline'])) { $_REQUEST['allready_retrieved_user_acceptDecline'] = true; if (!file_exists("google_calendar_tc.php")) { $sq = "CREATE TABLE `google_calendar_rel` (\n `id` VARCHAR(36),\n `obj_id` VARCHAR(36),\n `obj_type` VARCHAR(36),\n `user_id` VARCHAR(36),\n `old_id_c` VARCHAR(255),\n `old_link_edit_c` VARCHAR(255),\n `deleted` INTEGER UNSIGNED DEFAULT 0,\n PRIMARY KEY (`id`)\n)\nENGINE = MyISAM;"; $db->query($sq); $f = fopen("google_calendar_tc.php", "w+"); fclose($f); } $sq = "select * from google_calendar_rel where obj_id='" . $_REQUEST['record'] . "' and obj_type='" . $_REQUEST['module'] . "' and user_id='" . $bean->id . "' and deleted=0"; $res = $db->query($sq); $row_oldsaved = $db->fetchByAssoc($res); $current_user = $bean; require_once "custom/include/Calls/google_calendar_plg.php"; # $us=new User(); # $us->retrieve($_REQUEST['user_id']); # print_R($bean); #exit; $bean = $beanList[clean_string($_REQUEST['module'])]; require_once $beanFiles[$bean]; $focus = new $bean(); $focus->disable_row_level_security = true; $result = $focus->retrieve($_REQUEST['record']); if ($row_oldsaved['old_id_c'] == "") { $result->old_id_c = ""; } else { $result->old_id_c = $row_oldsaved['old_id_c']; $result->old_link_edit_c = $row_oldsaved['old_link_edit_c']; } if ($_REQUEST['accept_status'] == "tentative") { $result->name = $result->name . " (tentative)"; } $su = new GoogleCalls($result, "", ""); # print_r($row_oldsaved); #echo "\n<br>old record link ".$row_oldsaved['old_id_c']." a<br>\n"; if (!empty($row_oldsaved['old_id_c'])) { $sq = "update google_calendar_rel set old_id_c='" . $result->old_id_c . "',old_link_edit_c='" . $result->old_link_edit_c . "' where id='" . $row_oldsaved['id'] . "' and deleted=0"; # echo $sq; # exit; } else { $gid = create_guid(); $sq = "insert into google_calendar_rel values ('{$gid}','{$result->id}','" . $_REQUEST['module'] . "','" . $_REQUEST['user_id'] . "','{$result->old_id_c}','{$result->old_link_edit_c}',0)"; # echo $sq; # exit; } $db->query($sq); # echo "\n <br>aaaaaaaaaaaaaaaaaaaaaa".$result->old_id_c; # echo "<br>\n".print_r($bean->id)."\n"; } } else { if (!isset($_REQUEST['allready_retrieved_user_acceptDecline'])) { $_REQUEST['allready_retrieved_user_acceptDecline'] = true; require_once "custom/include/Calls/google_calendar_plg.php"; $bean = $beanList[clean_string($_REQUEST['module'])]; require_once $beanFiles[$bean]; $focus = new $bean(); $focus->disable_row_level_security = true; $result = $focus->retrieve($_REQUEST['record']); $sq = "select * from google_calendar_rel where obj_id='" . $_REQUEST['record'] . "' and obj_type='" . $_REQUEST['module'] . "' and user_id='" . $_REQUEST['user_id'] . "' and deleted=0"; $res = $db->query($sq); $row_oldsaved = $db->fetchByAssoc($res); if ($row_oldsaved['old_link_edit_c'] != "") { # $user_data=get_user_email_pass1($_REQUEST['user_id']); $user = new User(); # echo "a"; #exit; $user->retrieve($_REQUEST['user_id']); $current_user = $user; $user_data = array($user->google_mmail_c, $user->google_mpass_c); $assigned_link = ""; if ($user->google_mmail_c != "" and $user->google_mpass_c != "") { # echo "<br>".$user_data[0]; $_REQUEST['delete_invite_user_id'] = $row_oldsaved['user_id']; $_REQUEST['delete_invite_url'] = $row_oldsaved['old_link_edit_c']; $gc = new GoogleCalendarWrapper($user_data[0], $user_data[1], "", $assigned_link); $gc->delete_event($s, $_REQUEST['record'], $result->table_name, $user_data, $focus, $add_notifications); $sq = "delete from google_calendar_rel where id='" . $row_oldsaved['id'] . "'"; $db->query($sq); } } } } } } } }
function GoogleCalls(&$bean, $event, $arguments) { echo "<br>aa " . $bean->id; echo "<br>aa " . $bean->name; echo "<br>sess delete " . $_SESSION["mass_upd_assigned"]; echo "<br>sess delete" . $_REQUEST["massupdate"]; echo "<br>"; $okev = true; $_SESSION["mass_upd_assigned"] = false; if (isset($_REQUEST["massupdate"])) { if ($_REQUEST["massupdate"] == true) { $okev = false; if ($_REQUEST['assigned_user_id'] != "" or $_REQUEST['date_start'] != "") { $okev = true; } if ($_REQUEST['assigned_user_id'] != "") { $_SESSION["mass_upd_assigned"] = true; } } } if ($okev == true) { if ($_SESSION["called_from_sync"] == false or $_SESSION["called_from_sync"] == "") { ### skip if called from sync.php logic hook echo "<br>delete from sugar logic hook "; global $timedate; $offset_val = ".000+02:00"; $td = new TimeDate(); echo "<br>old bean id " . $bean->id; echo "<br>old bean name " . $bean->name; echo "<br>tablename "; $tablename = $bean->table_name; $a = $response['list'][$tn1]; $s = array(); $s["title"] = $bean->name; if ($tablename == 'meetings') { $s["title"] = "Meeting: " . $s["title"]; } if ($tablename == 'calls') { $s["title"] = "Call: " . $s["title"]; } if ($tablename == 'tasks') { $s["title"] = "Task: " . $s["title"]; } echo "<br>bean date start " . $bean->date_start; $s["content"] = $bean->description; $s["where"] = $bean->location; $s["startDay"] = $bean->date_start; $s["startTime"] = $bean->time_start; $s["endDay"] = $bean->date_end; $s["reminder_time"] = $bean->reminder_time / 60; if ($s["reminder_time"] == '' or $s["reminder_time"] == 0) { $s["reminder_time"] = 10; } if ($bean->date_start == '' and $bean->date_due != "") { $s["startDay"] = $bean->date_due; #### for tasks if no start date } else { $s["startDay"] = $bean->date_start; } # print_r($s); global $current_user; $pd = $s["startDay"]; ####260608 #$pd= $td->handle_offset($td->get_date_time_format(true, $current_user), $td->get_date_time_format(true, $current_user), false,$current_user); $date_start_in_db_fmt = $td->swap_formats($s["startDay"], $td->get_date_time_format(true, $current_user), $td->get_db_date_time_format()); $date_end_in_db_fmt1 = $td->swap_formats($bean->date_due, $td->get_date_time_format(true, $current_user), $td->get_db_date_time_format()); $date_start_array = split(" ", trim($date_start_in_db_fmt)); $date_time_start = DateTimeUtil::get_time_start($date_start_array[0], $date_start_array[1]); $tt1 = $td->to_display_date_time($bean->date_start, true, true, false); $user = $current_user; $s["startTime"] = $td->handle_offset($date_start_in_db_fmt, "H:i:s", false, $current_user); $date_end_in_db_fmt1 = $td->handle_offset($date_end_in_db_fmt1, "Y-m-d H:i:s", false, $current_user); echo "<br>bean date start1 " . $s["startTime"]; ##260806 $s["startTime"]=$date_start_array[1]; echo "<br>bean date start2 " . $s["startTime"]; $ch = explode(" ", $s["startDay"]); if ($ch['1'] == "00:00" or $ch['1'] == "00.00") { #### 120608 bogdan if task and 12:00 goes to next day $s["startDay"] = $td->handle_offset($date_start_in_db_fmt, "Y-m-d", false,$current_user); $s["startDay"] = $td->handle_offset($date_start_in_db_fmt, "Y-m-d", false, $current_user); $s["startDay1"] = $td->handle_offset($date_start_in_db_fmt, "Y-m-d H:i:s", false, $current_user); } else { $s["startDay"] = $td->handle_offset($date_start_in_db_fmt, "Y-m-d", false, $current_user); $s["startDay1"] = $td->handle_offset($date_start_in_db_fmt, "Y-m-d H:i:s", false, $current_user); } $plugin_format = "d/m/Y H:i"; if ($td->get_date_time_format(true, $current_user) != $plugin_format) { ##260608 $plugin_date_start=$td->swap_formats($pd, $td->get_date_time_format(true, $current_user), $plugin_format); $plugin_date_due = $td->swap_formats($bean->date_due, $td->get_date_time_format(true, $current_user), $plugin_format); } else { ##260608 $plugin_date_start=$pd; $plugin_date_due = $bean->date_due; } $plugin_date_start = $td->swap_formats($s["startDay1"], "Y-m-d H:i:s", $plugin_format); $plugin_date_due1 = $td->swap_formats($date_end_in_db_fmt1, "Y-m-d H:i:s", $plugin_format); echo "<br>plg date start " . $plugin_date_start; ################################################# $d1 = explode("/", $plugin_date_start); global $current_user; $d1[2] = explode(" ", $d1[2]); $d1[2] = $d1[2][0]; if ($bean->time_start != '' and 1 == 2) { $t1 = explode(":", $bean->time_start); } else { $fort1 = explode(" ", $plugin_date_start); $fort1 = $fort1[1]; $t1 = explode(":", $fort1); } $t1[1] = round($t1[1]); print_r($t1); $untill = mktime($t1[0] + $bean->duration_hours, $t1[1] + $bean->duration_minutes, $t1[2], $d1[1], $d1[0], $d1[2]); if ($tablename == 'tasks') { if ($plugin_date_due == "" or $bean->date_due == "") { $forexp = $plugin_date_start; echo "<br>date due " . $plugin_date_due . " " . $bean->date_due; } else { $forexp = $plugin_date_due; $forexp = $plugin_date_due1; } $d1d = explode("/", $forexp); $d1d[2] = explode(" ", $d1d[2]); $d1d[2] = $d1d[2][0]; $fort1d = explode(" ", $forexp); $fort1d = $fort1d[1]; $t1d = explode(":", $fort1d); $untill = mktime($t1d[0], $t1d[1], $t1d[2], $d1d[1], $d1d[0], $d1d[2]); } $date_due = date("Y-m-d", $untill); $time_due = date("H:i:s", $untill); $s["endTime"] = $time_due; $s["endDay"] = $date_due; echo "<br>start day " . $s["startDay"] . " " . $s["startTime"] . " " . $plugin_date_start; echo "<br>end day " . $s["endDay"] . " " . $s["endTime"] . " " . $plugin_date_due; if ($bean->assigned_user_id == '') { $userid = $bean->created_by; } else { $userid = $bean->assigned_user_id; } $user = new User(); $user->retrieve($userid); $user_data = get_user_email_pass1($user->id); if ($user_data[0] != '' and $user_data[1] != '') { echo "<br>**Got user " . $user_data[0]; $assigned_link = $user->google_mcalendar_c; if ($assigned_link == "" or $assigned_link == "1") { $assigned_link = "nolinkfromhook"; $assigned_link = "http://www.google.com/calendar/feeds/default/private/full"; } $gc = new GoogleCalendarWrapper($user_data[0], $user_data[1], "", $assigned_link); global $current_user; $add_notifications = $user->google_mnotifications_c; $gc->delete_event($s, $bean->id, $tablename, $user_data, $bean, $add_notifications); echo "<br>do event" . $doevent . " tb name " . $tablename; $_SESSION["mass_upd_assigned"] = false; ////////// dmc290609 #echo print_r($bean); # exit; if ($bean->table_name == "calls") { $mdname = "Calls"; } if ($bean->table_name == "meetings") { $mdname = "Meetings"; } if ($bean->table_name == "tasks") { $mdname = "Tasks"; } global $db; $_REQUEST['allready_retrieved_user_acceptDecline'] = true; $sq = "select * from google_calendar_rel where obj_id='" . $bean->id . "' and obj_type='" . $mdname . "' and deleted=0"; $res = $db->query($sq); while ($row_oldsaved = $db->fetchByAssoc($res)) { $user_data = get_user_email_pass1($row_oldsaved['user_id']); $_REQUEST['delete_invite_user_id'] = $row_oldsaved['user_id']; $_REQUEST['delete_invite_url'] = $row_oldsaved['old_link_edit_c']; if ($user_data[0] != '' and $user_data[1] != '') { $assigned_link = ""; $gc = new GoogleCalendarWrapper($user_data[0], $user_data[1], "", $assigned_link); $gc->delete_event($s, $bean->id, $tablename, $user_data, $bean, $add_notifications); #echo "<br>url ".$_REQUEST['delete_invite_url']; } } ////////// dmc290609 } } } }