function login() { //080509 $this->fCookieFile = $this->email; debugg("new cookie" . $this->email); $post_data = array(); $post_data['Email'] = $this->email; $post_data['Passwd'] = $this->password; $post_data['source'] = "exampleCo-exampleApp-1"; $post_data['service'] = "cl"; $post_data['accountType'] = "HOSTED_OR_GOOGLE"; $this->getHeaders = true; $this->getContent = true; $response = $this->post_login("https://www.google.com/accounts/ClientLogin", $post_data, null, $http_code); if (200 == $http_code or $http_code = "HTTP/1.1 200 OK") { $this->fAuth = parent::get_parsed($response, "Auth="); $this->isLogged = true; return 1; } $this->isLogged = false; return 0; }
function sync_events($one_user = false, $sel_user = "") { global $beanList, $beanFiles, $path; $use_offset_time = true; $td = new TimeDate(); $arr_modules[] = "Meetings"; $arr_modules[] = "Calls"; $arr_modules[] = "Tasks"; global $timedate; global $beanList, $beanFiles, $path, $current_user; for ($tn = 0; $tn < count($arr_modules); $tn++) { ob_start(); $module_name = $arr_modules[$tn]; $class_name = $beanList[$module_name]; require_once $beanFiles[$class_name]; $seed = new $class_name(); $tbn = $seed->table_name; $tablename = $tbn; $cstmtbname2 = $tablename . "_cstm"; if ($one_user == true) { if ($_SESSION['authenticated_user_id'] == "" and 1 == 2) { } else { if ($sel_user != "") { $cu = $sel_user; } else { $cu = $_SESSION['authenticated_user_id']; } $tdus = new TimeDate(); $cus = new User(); $cus->retrieve($cu); ############## global $current_user; $current_user = $cus; ############## $calendar_priv_add = $cus->google_mcalendar_c; $crdatefilt = $cus->google_mafterdate_c; $crdatefilt = $tdus->swap_formats($crdatefilt, $td->get_date_format(true, $cus), "Y-m-d"); unset($cus); $sql_user = "******"; if ($crdatefilt != '') { $sql_user .= " and {$tbn}.date_entered>='{$crdatefilt}' "; } $query = $sql_user; } } $d1d = array(); $s = array(); $ch = array(); $fd = array(); $forexp = ""; $fort1d = ""; $t1d = ""; $nt = ""; $nt1 = ""; $cm = date("m"); $cy = date("Y"); unset($response); global $max_events_upload_google; $response = $seed->get_list($order_by, $query, $offset, 10000, $max_events_upload_google, false); if ($tablename == "calls") { } $newdoc = $response['list'][$tn1]; if (1 == 1) { $tablename = $tbn; echo "<br>****** Get events from {$tablename}"; require_once 'modules/Calendar/DateTimeUtil.php'; $cm = date("m"); $cy = date("Y"); for ($tn1 = 0; $tn1 < count($response['list']); $tn1++) { unset($a); unset($a1); unset($a2); unset($s); unset($current_user); unset($user); unset($td); $a1 = $response['list'][$tn1]; $current_user = new User(); $current_user->retrieve($a1->assigned_user_id); debugg("<br> current user for event " . $a1->assigned_user_id . " " . $current_user->name); $user = $current_user; $td = new TimeDate(); $user_google_mafterdate_c = $td->swap_formats($current_user->google_mafterdate_c, $td->get_date_format(true, $current_user), "Y-m-d"); $add_notifications = $current_user->google_mnotifications_c; unset($a2); if ($tablename == 'meetings') { $a2 = new Meeting(); } if ($tablename == 'calls') { $a2 = new Call(); } if ($tablename == 'tasks') { $a2 = new Task(); } unset($a); $a = $a2->retrieve($a1->id); if ($a->old_id_c == "" or 1 == 1) { global $calls_prefix; global $meetings_prefix; global $tasks_prefix; $s = array(); $s["title"] = $a->name; if ($tablename == 'meetings') { $s["title"] = $meetings_prefix . $s["title"]; } if ($tablename == 'calls') { $s["title"] = $calls_prefix . $s["title"]; } if ($tablename == 'tasks') { $s["title"] = $tasks_prefix . $s["title"]; } debugg("<br><br><br>**********Event ******* id={$a->id} ***** name={$a->name}" . " number " . $tn1 . " date " . $a->date_start); if ($a->name == "gmt+1 start 23:30 end 00:15" or $a->name == "gmt+3 + dst start 23:30 end 00:15") { } $sq = "select * from {$tablename} where id='" . $a2->id . "' and deleted='0'"; $result = $a2->db->query($sq); while ($row = $a2->db->fetchByAssoc($result)) { $ro = $row; } $start = $ro['date_start']; $end = $ro['date_due']; #260608 $start_offset = $td->handle_offset($start, "Y-m-d H:i:s", true,$current_user); #260608 $end_offset = $td->handle_offset($end, "Y-m-d H:i:s", true,$current_user); $start_offset = $start; $end_offset = $end; if ($tablename == 'tasks') { $a->date_start = $start; $a->date_due = $end; } $s["content"] = $a->description; $s["where"] = $a->location; $s["startDay"] = $start_offset; $s["startTime"] = $a->time_start; $s["endDay"] = $end_offset; $s["reminder_time"] = $a->reminder_time / 60; if ($s["reminder_time"] == '' or $s["reminder_time"] == 0) { $s["reminder_time"] = 10; } if ($tablename == 'tasks') { $s["startTime"] = ""; $a->time_start = ""; } if ($a->date_start == '' and $a->date_due != "") { $a->date_start = $end_offset; #### for tsaks if no start date } else { $a->date_start = $start_offset; } $date_start_in_db_fmt = $start_offset; $date_start_array = split(" ", trim($date_start_in_db_fmt)); $date_due_in_db_fmt = $end_offset; $arr_ds = explode(" ", $start_offset); $arr_de = explode(" ", $end_offset); debugg("<br>current user " . $current_user->name); $a->time_start = $arr_ds[1]; $a->time_due = $arr_de[1]; $s["startDay"] = $arr_ds[0]; $s["startTime"] = $a->time_start; $s["endDay"] = $arr_de[0]; $s["endTime"] = $arr_de[1]; if ($tablename == "tasks" and $s["startDay"] == "" and $s["endDay"] !== "") { $s["startDay"] = $s["endDay"]; $s["startTime"] = $s["endTime"]; $a->time_start = $s["endTime"]; } debugg("<br>dst00 " . $date_start_in_db_fmt . " a time start " . $a->time_start); $fd = explode("/", $s["startDay"]); if ($fd[2] == "") { $fd = explode("-", $s["startDay"]); } $plugin_date_start = $fd[2] . "/" . $fd[1] . "/" . $fd[0] . " " . $s["startTime"]; if ($tablename != 'tasks') { $plugin_date_due = $plugin_date_start; } else { $fd = explode("/", $s["endDay"]); if ($fd[2] == "") { $fd = explode("-", $s["endDay"]); } if ($fd[2] != "") { $plugin_date_due = $fd[2] . "/" . $fd[1] . "/" . $fd[0] . " " . $s["dueTime"]; } else { $plugin_date_due = $plugin_date_start; } } $plugin_format = "d/m/Y H:i"; ###################################### $d1 = explode("/", $plugin_date_start); global $current_user; $d1[2] = explode(" ", $d1[2]); $d1[2] = $d1[2][0]; $fort1 = explode(" ", $plugin_date_start); $fort1 = $fort1[1]; $t1 = explode(":", $fort1); $t1[1] = round($t1[1]); $untill = mktime($t1[0] + $a->duration_hours, $t1[1] + $a->duration_minutes, $t1[2], $d1[1], $d1[0], $d1[2]); if ($tablename == 'tasks') { if ($plugin_date_due == "" or $a->date_due == "") { $forexp = $plugin_date_start; } else { $forexp = $plugin_date_due; } } else { $forexp = $plugin_date_start; } $d1d = explode("/", $forexp); if ($d1d[2] == "") { $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] + $a->duration_hours, $t1d[1] + $a->duration_minutes, $t1d[2], $d1d[1], $d1d[0], $d1d[2]); if ($tablename == 'tasks' and $a->date_due != "") { $nt = explode(" ", $a->date_due); $nt1 = explode(":", $nt[1]); if ($nt[1] == "") { $nt1 = explode(".", $nt[1]); } print_r($nt); $untill = mktime($nt1[0], $nt1[1], 0, $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; if ($a->date_start == '') { $s["startTime"] = $s["endTime"]; $s["startDay"] = $s["endDay"]; } if ($a->assigned_user_id == '') { $user = $a->created_by; } else { $user = $a->assigned_user_id; } $user_data = get_user_email_pass1($user); if ($user_data[0] != '' and $user_data[1] != '') { debugg("<br>**Got user " . $user_data[0]); $gc = new GoogleCalendarWrapper($user_data[0], $user_data[1], $current_user->google_mcalendar_c); $_SESSION["called_from_sync"] = true; $settings["reminder_checked"] = $a->reminder_checked; if ($sel_user != "" and $calendar_priv_add != "" and $calendar_priv_add != "1") { $gc->feed_url = $calendar_priv_add; } if ($s["startDay"] >= $user_google_mafterdate_c) { $gc->add_event($s, $a->id, $tablename, $user_data, $add_notifications); } else { } $_SESSION["called_from_sync"] = false; } } } } } }
// lub po prostu java $yui = '/usr/share/yui-compressor/yui-compressor.jar'; // jeśli ścieżki nie są prawidłowe to podejmuję próbę ustalenia ścieżek automatycznie if (req(dirname(__FILE__) . '/../../../../../../app/getHost.php')) { if ($yml = req(dirname(__FILE__) . '/../../../../../../app/config/hosts/' . getHost() . '.yml')) { $yui = preg_replace('#^.*?assetic\\.filters\\.yui_js\\.jar\\s*:\\s*([^\\s]*).*$#is', '$1', $yml); $java = preg_replace('#^.*?assetic\\.java\\.bin\\s*:\\s*([^\\s]*).*$#is', '$1', $yml); } } if (isset($_POST['data'])) { //$file = dirname(__FILE__).'/'.substr(md5(uniqid()),0,10).'.tmp'; $file = tempnam(realpath(sys_get_temp_dir()), 'YUI-SERVICE-'); file_put_contents($file, $_POST['data']); if (empty($_GET['mode']) || !preg_match('#^(js|css)$#', $_GET['mode'])) { header('HTTP/1.0 404 Not Found'); debugg('mode is not valid'); } $cmd = "{$java} -jar {$yui} {$file} --type {$_GET['mode']} --charset utf-8"; // http://php.net/manual/en/function.proc-open.php $descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('file', '/tmp/error-output.txt', 'a')); $cwd = '/tmp'; $env = array('some_option' => 'aeiou'); $process = proc_open($cmd, $descriptorspec, $pipes, $cwd, $env); if (is_resource($process)) { proc_close($process); echo fread($pipes[0]); } unlink($file); exit; } ?>
function post_delete_onl($url, $post_data, $arr_headers = array(), &$http_code, $evid, $tablename, $_entry, $old_link_edit, $user_data, $old_id, $bean) { //$auth=getAuthCode($user_data[0],$user_data[1]); //190509 $this->login(); $auth = $this->fAuth; $header = array(); $header[] = "MIME-Version: 1.0"; $header[] = "Accept: text/xml"; $header[] = "Authorization: GoogleLogin auth=" . $auth; #$header[] = "Content-length: ".strlen($_entry); $header[] = "Content-type: application/atom+xml"; $header[] = "Cache-Control: no-cache"; $header[] = "Connection: close \r\n"; # $header[] = $_entry; # $link=$old_link_edit; ////////// dmc290609 if (!isset($_REQUEST['delete_invite_user_id'])) { $link = $old_link_edit; } else { $link = $_REQUEST['delete_invite_url']; } ////////// dmc290609 debugg("<br><br>link " . $link . "<br><br>"); $entry = curlToHost($link, 'DELETE', $header); }