function eventGetContacts(EventControler $evtcl) { $plugType = 'email'; $provider_box = $evtcl->provider_box; $email_box = $evtcl->email_box; $password_box = $evtcl->password_box; $msg = ""; $contacts = ""; $ok = false; if (empty($email_box)) { $msg = "Email missing !"; } if (empty($password_box)) { $msg = "Password missing !"; } if (empty($provider_box)) { $msg = "Provider missing !"; } if ($msg == "") { $inviter = new OpenInviter(); $inviter->startPlugin($provider_box); $internal = $inviter->getInternalError(); if ($internal) { $msg = $internal; } elseif (!$inviter->login($email_box, $password_box)) { $internal = $inviter->getInternalError(); $msg = $internal ? $internal : "Login failed. Please check the email and password you have provided and try again later !"; } elseif (false === ($contacts = $inviter->getMyContacts())) { $msg = "Unable to get contacts !"; } else { $msg = "Contacts imported successfully."; $ok = true; //$_POST['oi_session_id']=$inviter->plugin->getSessionID(); } } if ($ok) { /*print_r($contacts); exit();*/ foreach ($contacts as $email => $name) { $do_contact = new Contact(); $do_contact->firstname = $name; $do_contact->iduser = $_SESSION['do_User']->iduser; $do_contact->add(); $lastInsertedContId = $do_contact->getPrimaryKeyValue(); $do_contact->addEmail($email, 'Home'); $do_contact->free(); //contact view $do_cv = new ContactView(); $do_cv->idcontact = $lastInsertedContId; $do_cv->firstname = $name; $do_cv->email_address = $email; $do_cv->add(); $do_cv->free(); } } $_SESSION['in_page_message'] = $msg; }
thisDiv.style.display = "none"; </script> <?php } $do_contact = new Contact(); $name = $_SESSION['do_ofuz_fb']->getFbUserName($friend); // will contain the firstand last name in facebook $affiliations = $_SESSION['do_ofuz_fb']->getFbUserAffiliations($friend); $work_history = $_SESSION['do_ofuz_fb']->getWorkHistory($friend); $profile_url = $_SESSION['do_ofuz_fb']->getProfileURL($friend); $profile_pic_with_logo = $_SESSION['do_ofuz_fb']->getProfilePicWithLogo($friend); $friends_data = array("fb_uid" => $friend, "name" => $name, "affiliations" => $affiliations, "work" => $work_history, "profile_url" => $profile_url, "pic_with_logo" => $profile_pic_with_logo, "listname" => $list_name_array); //print_r($friends_data); //echo '<br />'; $do_contact->importFacebookFriends($friends_data); $do_contact->free(); } //rebuilding the userXX_contact table /*$contact_view = new ContactView(); $contact_view->setUser($_SESSION['do_User']->iduser); $contact_view->rebuildContactUserTable();*/ if ($_SESSION["page_from"] == 'reg') { $message = 'Facebook contacts have been imported successfully'; ?> <script type="text/javascript"> window.location = "/welcome_to_ofuz.php?message=<?php echo $message; ?> "; </script> <?php
* A cron job script for sending the autoresponders. * Will get the autoresponders with the tags and will send the email to the contacts associated with the tag_name * @see class/Autoresponder.class.php */ include_once 'config.php'; $AutoResponder = new AutoResponder(); $AutoResponder->getAutoresponders(); if ($AutoResponder->getNumRows()) { while ($AutoResponder->next()) { $User = new User(); $User->getId($AutoResponder->iduser); $User->sessionPersistent('do_User', 'contacts.php', OFUZ_TTL); $email_template = new EmailTemplate(); $email_template->bodyhtml = nl2br(stripslashes($AutoResponder->bodyhtml)); $email_template->subject = $AutoResponder->subject; $email_template->senderemail = $User->email; $email_template->sendername = $User->firstname . ' ' . $User->lastname; $resp_name = $AutoResponder->resp_name; $Contact = new Contact(); $Contact->getContactsForAutoResponder($AutoResponder->iduser, $AutoResponder->tag_name, $AutoResponder->num_days_to_send); if ($Contact->getNumRows()) { while ($Contact->next()) { $values = array("idcontact" => $Contact->idcontact, "firstname" => $Contact->firstname, "lastname" => $Contact->lastname, "position" => $Contact->position, "company" => $Contact->company, "idtag" => $Contact->idtag, "resp_name" => $resp_name, "flag" => "unsubscribe_autoresponder"); $Contact->sendMessage($email_template, $values); echo '<br /> Email Sent to :' . $Contact->email_address; } } $Contact->free(); } $AutoResponder->free(); }
/** * The below function is to merge the contacts and related information * Need some better algorithm for that so as to avoid the repeated code * FIXME * @param $cont_array -- Array with idcontact */ function MergeContactsAutomated($cont_array) { if (is_array($cont_array)) { $this->mergeContactTags($cont_array); $this->mergeContactRelated($cont_array); $id_to_keep = $cont_array[0]; //take the first record from the contact array to keep $do_deleting_contact = new Contact(); $do_check_duplicate = new Contact(); $do_cont_sharing = new ContactSharing(); $facebook_id_updated = false; $facebook_image_updated = false; $twitter_id_updated = false; foreach ($cont_array as $contact_id_del) { if ($contact_id_del != $id_to_keep) { // facebook Related keep the image if facebook image is available from the merged $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); if (!$facebook_image_updated) { $q_master->query("select picture from contact where idcontact = " . $id_to_keep); $q_master->fetch(); $picture = $q_master->getData("picture"); if (!preg_match("/facebook.com/", $picture, $matches)) { $q_rel->query("select picture from contact where idcontact = " . $contact_id_del); $q_rel->fetch(); $r_picture = $q_rel->getData("picture"); if (preg_match("/facebook.com/", $r_picture, $matches)) { $q->query("update contact set picture = '" . $r_picture . "' where idcontact = " . $id_to_keep); $facebook_image_updated = true; } } else { $facebook_image_updated = true; } } // Facebook Related keep track of facebook id of contact $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); if (!$facebook_id_updated) { $q_master->query("select fb_userid from contact where idcontact = " . $id_to_keep); $q_master->fetch(); $fb_uid = $q_master->getData("fb_userid"); if ($fb_uid == 0 || empty($fb_uid) || $fb_uid == '') { $q_rel->query("select fb_userid from contact where idcontact = " . $contact_id_del); $q_rel->fetch(); $fb_userid = $q_rel->getData("fb_userid"); if ($fb_userid != 0 && !empty($fb_userid) && $fb_userid != '') { $q->query("update contact set fb_userid = " . $fb_userid . " where idcontact = " . $id_to_keep); $facebook_id_updated = true; } } else { $facebook_id_updated = true; } } // Twitter Related :: keep track of twitter id of the contact $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); if (!$twitter_id_updated) { $q_master->query("select tw_user_id from contact where idcontact = " . $id_to_keep); $q_master->fetch(); $tw_uid = $q_master->getData('tw_user_id'); if (empty($tw_uid) || $tw_uid == '') { $q_rel->query("select tw_user_id from contact where idcontact = " . $contact_id_del); $q_rel->fetch(); $tw_user_id = $q_rel->getData('tw_user_id'); if (!empty($tw_user_id) && $tw_user_id != '') { $q->query("update contact set tw_user_id = " . $tw_user_id . " where idcontact = " . $id_to_keep); $twitter_id_updated = true; } } else { $twitter_id_updated = true; } } //update the ContactPhone with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_phone where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_phone where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { if ($q_rel->getData("phone_number") == $q_master->getData("phone_number") && $q_rel->getData("phone_type") == $q_master->getData("phone_type")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_phone set idcontact = " . $id_to_keep . " where idcontact_phone = " . $q_rel->getData("idcontact_phone")); } } } } else { $q->query("update contact_phone set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } //Update the ContactEmail with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_email where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_email where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { $count = 0; while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { $count++; if ($q_rel->getData("email_address") == $q_master->getData("email_address") && $q_rel->getData("email_type") == $q_master->getData("email_type")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_email set idcontact = " . $id_to_keep . " where idcontact_email = " . $q_rel->getData("idcontact_email")); } } } } else { $q->query("update contact_email set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } //Update the ContactInstantMessage with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_instant_message where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_instant_message where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { if ($q_rel->getData("im_options") == $q_master->getData("im_options") && $q_rel->getData("im_type") == $q_master->getData("im_type") && $q_rel->getData("im_username") == $q_master->getData("im_username")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_instant_message set idcontact = " . $id_to_keep . " where idcontact_instant_message = " . $q_rel->getData("idcontact_instant_message")); } } } } else { $q->query("update contact_instant_message set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } //Update the ContactWebsite with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_website where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_website where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { if ($q_rel->getData("website") == $q_master->getData("website") && $q_rel->getData("website_type") == $q_master->getData("website_type")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_website set idcontact = " . $id_to_keep . " where idcontact_website = " . $q_rel->getData("idcontact_website")); } } } } else { $q->query("update contact_website set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } //Update the ContactAddress with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_address where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_address where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { if ($q_rel->getData("address") == $q_master->getData("address") && $q_rel->getData("address_type") == $q_master->getData("address_type") && $q_rel->getData("city") == $q_master->getData("city") && $q_rel->getData("country") == $q_master->getData("country") && $q_rel->getData("state") == $q_master->getData("state") && $q_rel->getData("street") == $q_master->getData("street") && $q_rel->getData("zipcode") == $q_master->getData("zipcode")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_address set idcontact = " . $id_to_keep . " where idcontact_address = " . $q_rel->getData("idcontact_address")); } } } } else { $q->query("update contact_address set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } //Update the ContactRssFeed with $id_to_keep $q = new sqlQuery($this->getDbCon()); $q_master = new sqlQuery($this->getDbCon()); $q_rel = new sqlQuery($this->getDbCon()); $q_master->query("select * from contact_rss_feed where idcontact = " . $id_to_keep); if ($q_master->getNumRows() > 0) { $update_ids_array = array(); $q_rel->query("select * from contact_rss_feed where idcontact = " . $contact_id_del); if ($q_rel->getNumRows()) { while ($q_rel->fetch()) { $found = true; while ($q_master->fetch()) { if ($q_rel->getData("feed_type") == $q_master->getData("feed_type") && $q_rel->getData("rss_feed_url") == $q_master->getData("rss_feed_url") && $q_rel->getData("username") == $q_master->getData("username")) { $found = true; break; } else { $found = false; } } if (!$found) { $q->query("update contact_rss_feed set idcontact = " . $id_to_keep . " where idcontact_rss_feed = " . $q_rel->getData("idcontact_rss_feed")); } } } } else { $q->query("update contact_rss_feed set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); } $q = new sqlQuery($this->getDbCon()); //Update the ContactNotes with $id_to_keep $q->query("update contact_note set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); //Update the Contacttasks with $id_to_keep $q->query("update task set idcontact = " . $id_to_keep . " where idcontact = " . $contact_id_del); //update the invoice with #id_to_keep and idcompany $idcompany = $this->getIdCompanyForContact($id_to_keep); $inv_addr = $this->ajaxGetInvoiceAddress($id_to_keep); $q->query("update invoice set idcontact = " . $id_to_keep . ",idcompany = {$idcompany},invoice_address='{$inv_addr}' where idcontact = " . $contact_id_del); //Update the google_contact_info with $id_to_keep //$q->query("update google_contact_info set idcontact = ".$id_to_keep. " where idcontact = ".$contact_id_del); // Update the shared contact $do_cont_sharing->resetContactSharingOnMerging($id_to_keep, $contact_id_del); // delete contact $do_deleting_contact->getId($contact_id_del); $do_deleting_contact->delete(); } } // For each ends here $do_deleting_contact->free(); //exit; //$rlog = new UpdateRecordLog(); //$rlog->setLastUpdate("contact", $id_to_keep); //$this->setActivity(); return $id_to_keep; } else { return false; } }
function eventImportAccount(EventControler $evtcl) { $msg = ""; $uploaded_file = $_FILES['fields']['name']['import_account']; $target_path = 'files/' . $uploaded_file; if (!move_uploaded_file($_FILES['fields']['tmp_name']['import_account'], $target_path)) { $msg = "There was an error uploading the file, please try again!"; } else { chmod($target_path, 0755); if (file_exists($target_path)) { //$xml = simplexml_load_file($_SERVER['DOCUMENT_ROOT']."/".$target_path); $str_xml = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/" . $target_path); $str_xml = preg_replace('/[^(\\x20-\\x7F)]*/', '', $str_xml); $xml = simplexml_load_string($str_xml); echo '<pre>'; print_r($xml); echo '</pre>'; die; if ($xml !== FALSE) { $c_cnt = count($xml->contact); if ($c_cnt) { for ($i = 0; $i < $c_cnt; $i++) { $do_contact = new Contact(); $contact = $xml->contact[$i]; $do_contact->firstname = $contact->firstname; $do_contact->lastname = $contact->lastname; $do_contact->position = $contact->position; $do_contact->company = $contact->company; $do_contact->idcompany = $contact->idcompany; $do_contact->iduser = $_SESSION['do_User']->iduser; $do_contact->picture = $contact->picture; $do_contact->summary = $contact->summary; $do_contact->birthday = $contact->birthday; $do_contact->portal_code = $contact->portal_code; $do_contact->fb_userid = $contact->fb_userid; $do_contact->tw_user_id = $contact->tw_user_id; $do_contact->email_optout = $contact->email_optout; $do_contact->add(); $lastInsertedContId = $do_contact->getPrimaryKeyValue(); /** *Contact Address */ $ca_cnt = count($contact->contact_address); if ($ca_cnt) { for ($ca_cnt_i = 0; $ca_cnt_i < $ca_cnt; $ca_cnt_i++) { $do_contact_address = new ContactAddress(); $contact_address = $contact->contact_address[$ca_cnt_i]; $do_contact_address->city = $contact_address->city; $do_contact_address->country = $contact_address->country; $do_contact_address->state = $contact_address->state; $do_contact_address->street = $contact_address->street; $do_contact_address->zipcode = $contact_address->zipcode; $do_contact_address->idcontact = $lastInsertedContId; $do_contact_address->address = $contact_address->address; $do_contact_address->address_type = $contact_address->address_type; $do_contact_address->add(); $do_contact_address->free(); } } /** *Contact Email */ $ce_cnt = count($contact->contact_email); if ($ce_cnt) { for ($ce_cnt_i = 0; $ce_cnt_i < $ce_cnt; $ce_cnt_i++) { $do_contact_email = new ContactEmail(); $contact_email = $contact->contact_email[$ce_cnt_i]; $do_contact_email->idcontact = $lastInsertedContId; $do_contact_email->email_address = $contact_email->email_address; $do_contact_email->email_type = $contact_email->email_type; $do_contact_email->email_isdefault = $contact_email->email_isdefault; $do_contact_email->add(); $do_contact_email->free(); } } /** *Contact Phone */ $cp_cnt = count($contact->contact_phone); if ($cp_cnt) { for ($cp_cnt_i = 0; $cp_cnt_i < $cp_cnt; $cp_cnt_i++) { $do_contact_phone = new ContactPhone(); $contact_phone = $contact->contact_phone[$cp_cnt_i]; $do_contact_phone->phone_number = $contact_phone->phone_number; $do_contact_phone->phone_type = $contact_phone->phone_type; $do_contact_phone->idcontact = $lastInsertedContId; $do_contact_phone->add(); $do_contact_phone->free(); } } /** *Contact Note */ $cn_cnt = count($contact->contact_note); if ($cn_cnt) { for ($cn_cnt_i = 0; $cn_cnt_i < $cn_cnt; $cn_cnt_i++) { $do_contact_note = new ContactNotes(); $contact_note = $contact->contact_note[$cn_cnt_i]; $do_contact_note->idcontact = $lastInsertedContId; $do_contact_note->note = $contact_note->note; $do_contact_note->date_added = $contact_note->date_added; $do_contact_note->document = $contact_note->document; $do_contact_note->idcompany = $contact_note->idcompany; $do_contact_note->iduser = $_SESSION['do_User']->iduser; $do_contact_note->priority = $contact_note->priority; $do_contact_note->send_email = $contact_note->send_email; $do_contact_note->hours_work = $contact_note->hours_work; $do_contact_note->note_visibility = $contact_note->note_visibility; $do_contact_note->type = $contact_note->type; $do_contact_note->add(); $do_contact_note->free(); } } /** *Contact Tag */ $ctag_cnt = count($contact->contact_tag); if ($ctag_cnt) { for ($ctag_cnt_i = 0; $ctag_cnt_i < $ctag_cnt; $ctag_cnt_i++) { $do_tag = new Tag(); $contact_tag = $contact->contact_tag[$ctag_cnt_i]; $do_tag->tag_name = $contact_tag->tag_name; $do_tag->iduser = $_SESSION['do_User']->iduser; $do_tag->reference_type = $contact_tag->reference_type; $do_tag->idreference = $lastInsertedContId; $do_tag->date_added = $contact_tag->date_added; $do_tag->add(); $do_tag->free(); } } /** *Contact tasks which are not associated with Project */ //Contact tasks which are not associated with Project $ctwop_cnt = count($contact->contact_task_without_project); if ($ctwop_cnt) { for ($ctwop_cnt_i = 0; $ctwop_cnt_i < $ctwop_cnt; $ctwop_cnt_i++) { $do_task = new Task(); $contact_task_wo_p = $contact->contact_task_without_project[$ctwop_cnt_i]; $do_task->task_description = $contact_task_wo_p->task_description; $do_task->due_date = $contact_task_wo_p->due_date; $do_task->category = $contact_task_wo_p->category; $do_task->iduser = $_SESSION['do_User']->iduser; $do_task->due_date_dateformat = $contact_task_wo_p->due_date_dateformat; $do_task->status = $contact_task_wo_p->status; $do_task->date_completed = $contact_task_wo_p->date_completed; $do_task->idcontact = $lastInsertedContId; $do_task->from_note = $contact_task_wo_p->from_note; $do_task->is_sp_date_set = $contact_task_wo_p->is_sp_date_set; $do_task->task_category = $contact_task_wo_p->task_category; $do_task->add(); $do_task->free(); } } /** *Contact tasks which are associated with Project */ $arr_prj = array(); $cont_task_with_prj_cnt = count($contact->contact_task_with_project); if ($cont_task_with_prj_cnt) { for ($i = 0; $i < $cont_task_with_prj_cnt; $i++) { $do_project = new Project(); $project = $contact->contact_task_with_project[$i]; $do_project->iduser = $_SESSION['do_User']->iduser; $do_project->name = $project->name; $do_project->end_date_dateformat = $project->end_date_dateformat; $do_project->idcompany = $project->idcompany; $do_project->status = $project->status; $do_project->effort_estimated_hrs = $project->effort_estimated_hrs; $do_project->is_public = $project->is_public; $do_project->add(); $lastInsertedPrjId = $do_project->getPrimaryKeyValue(); //$arr_prj[$lastInsertedPrjId] = $project->idproject; $pt_cnt = count($project->project_task); if ($pt_cnt) { for ($pt_cnt_i = 0; $pt_cnt_i < $pt_cnt; $pt_cnt_i++) { $do_task = new Task(); $project_task = $project->project_task[$pt_cnt_i]; $do_task->task_description = $project_task->task_description; $do_task->due_date = $project_task->due_date; $do_task->category = $project_task->category; $do_task->iduser = $_SESSION['do_User']->iduser; $do_task->due_date_dateformat = $project_task->due_date_dateformat; $do_task->status = $project_task->status; $do_task->date_completed = $project_task->date_completed; $do_task->idcontact = $lastInsertedContId; $do_task->from_note = $project_task->from_note; $do_task->is_sp_date_set = $project_task->is_sp_date_set; $do_task->task_category = $project_task->task_category; $do_task->add(); $lastInsertedTaskId = $do_task->getPrimaryKeyValue(); $do_project_task = new ProjectTask(); $do_project_task->idtask = $lastInsertedTaskId; $do_project_task->idproject = $lastInsertedPrjId; $do_project_task->progress = $project_task->progress; $do_project_task->drop_box_code = $project_task->drop_box_code; $do_project_task->priority = $project_task->priority; $do_project_task->hrs_work_expected = $project_task->hrs_work_expected; $do_project_task->add(); $lastInsertedPrjTaskId = $do_project_task->getPrimaryKeyValue(); $pd_cnt = count($project_task->project_discuss); if ($pd_cnt) { for ($i = 0; $i < $pd_cnt; $i++) { $do_project_discuss = new ProjectDiscuss(); $project_discuss = $project_task->project_discuss[$i]; $do_project_discuss->idproject_task = $lastInsertedPrjTaskId; $do_project_discuss->idtask = $lastInsertedTaskId; $do_project_discuss->idproject = $lastInsertedPrjId; $do_project_discuss->discuss = $project_discuss->discuss; $do_project_discuss->date_added = $project_discuss->date_added; $do_project_discuss->document = $project_discuss->document; $do_project_discuss->iduser = $_SESSION['do_User']->iduser; $do_project_discuss->drop_box_sender = $project_discuss->drop_box_sender; $do_project_discuss->priority = $project_discuss->priority; $do_project_discuss->hours_work = $project_discuss->hours_work; $do_project_discuss->discuss_edit_access = $project_discuss->discuss_edit_access; $do_project_discuss->type = $project_discuss->type; $do_project_discuss->add(); $do_project_discuss->free(); } } $do_project_task->free(); $do_task->free(); } } $do_project->free(); } } /** *Invoice import */ $msg_inv = ""; $inv_cnt = count($contact->invoice); if ($inv_cnt) { for ($inv_cnt_i = 0; $inv_cnt_i < $inv_cnt; $inv_cnt_i++) { $do_invoice = new Invoice(); $invoice = $contact->invoice[$inv_cnt_i]; $do_invoice->num = $invoice->num; $do_invoice->iduser = $_SESSION['do_User']->iduser; $do_invoice->description = $invoice->description; $do_invoice->amount = $invoice->amount; $do_invoice->datepaid = $invoice->datepaid; $do_invoice->datecreated = $invoice->datecreated; $do_invoice->status = $invoice->status; $do_invoice->discount = $invoice->discount; $do_invoice->idcontact = $lastInsertedContId; $do_invoice->due_date = $invoice->due_date; $do_invoice->invoice_address = $invoice->invoice_address; $do_invoice->invoice_term = $invoice->invoice_term; $do_invoice->invoice_note = $invoice->invoice_note; $do_invoice->sub_total = $invoice->sub_total; $do_invoice->net_total = $invoice->net_total; $do_invoice->amt_due = $invoice->amt_due; $do_invoice->idcompany = $invoice->idcompany; $do_invoice->tax = $invoice->tax; $do_invoice->set_delete = $invoice->set_delete; $do_invoice->total_discounted_amt = $invoice->total_discounted_amt; $do_invoice->total_taxed_amount = $invoice->total_taxed_amount; $do_invoice->add(); $lastInsertedInvoiceId = $do_invoice->getPrimaryKeyValue(); $invline_cnt = count($invoice->invoiceline); if ($invline_cnt) { for ($invline_cnt_i = 0; $invline_cnt_i < $invline_cnt; $invline_cnt_i++) { $do_invoiceline = new InvoiceLine(); $invoiceline = $invoice->invoiceline[$invline_cnt_i]; $do_invoiceline->idinvoice = $lastInsertedInvoiceId; $do_invoiceline->description = $invoiceline->description; $do_invoiceline->price = $invoiceline->price; $do_invoiceline->qty = $invoiceline->qty; $do_invoiceline->total = $invoiceline->total; $do_invoiceline->item = $invoiceline->item; $do_invoiceline->line_tax = $invoiceline->line_tax; $do_invoiceline->discounted_amount = $invoiceline->discounted_amount; $do_invoiceline->taxed_amount = $invoiceline->taxed_amount; $do_invoiceline->add(); $do_invoiceline->free(); } } //invoiceline import ends // recurrentinvoice $recinv_cnt = count($invoice->recurrentinvoice); if ($recinv_cnt) { for ($recinv_cnt_i = 0; $recinv_cnt_i < $recinv_cnt; $recinv_cnt_i++) { $do_recurrentinvoice = new RecurrentInvoice(); $recurrentinvoice = $invoice->recurrentinvoice[$recinv_cnt_i]; $do_recurrentinvoice->iduser = $_SESSION['do_User']->iduser; $do_recurrentinvoice->idinvoice = $lastInsertedInvoiceId; $do_recurrentinvoice->nextdate = $recurrentinvoice->nextdate; $do_recurrentinvoice->recurrence = $recurrentinvoice->recurrence; $do_recurrentinvoice->recurrencetype = $recurrentinvoice->recurrencetype; $do_recurrentinvoice->add(); $do_recurrentinvoice->free(); } } //recurrentinvoice import ends // Payment Log import $paymentlog_cnt = count($invoice->paymentlog); if ($paymentlog_cnt) { for ($paymentlog_cnt_i = 0; $paymentlog_cnt_i < $paymentlog_cnt; $paymentlog_cnt_i++) { $do_paymentlog = new PaymentLog(); $paymentlog = $invoice->paymentlog[$paymentlog_cnt_i]; $do_paymentlog->timestamp = $paymentlog->timestamp; $do_paymentlog->idinvoice = $lastInsertedInvoiceId; $do_paymentlog->amount = $paymentlog->amount; $do_paymentlog->payment_type = $paymentlog->payment_type; $do_paymentlog->ref_num = $paymentlog->ref_num; $do_paymentlog->date_added = $paymentlog->date_added; $do_paymentlog->add(); $lastInsertedPaymentLogId = $do_paymentlog->getPrimaryKeyValue(); //payment_invoice : Payment Invoice import $paymentinv_cnt = count($paymentlog->payment_invoice); if ($paymentinv_cnt) { for ($paymentinv_cnt_i = 0; $paymentinv_cnt_i < $paymentinv_cnt; $paymentinv_cnt_i++) { $do_payment_invoice = new PaymentInvoice(); $paymentinvoice = $paymentlog->payment_invoice[$paymentinv_cnt_i]; $do_payment_invoice->idpayment = $lastInsertedPaymentLogId; $do_payment_invoice->idinvoice = $lastInsertedInvoiceId; $do_payment_invoice->amount = $paymentinvoice->amount; $do_payment_invoice->add(); $do_payment_invoice->free(); } } // payment_invoice import ends //paymentlog_extra_amount import $paymentlog_ext_amt_cnt = count($paymentlog->paymentlog_extra_amount); if ($paymentlog_ext_amt_cnt) { for ($paymentlog_ext_amt_cnt_i = 0; $paymentlog_ext_amt_cnt_i < $paymentlog_ext_amt_cnt; $paymentlog_ext_amt_cnt_i++) { $paymentlog_extra_amount = $paymentlog->paymentlog_extra_amount[$paymentlog_ext_amt_cnt_i]; $q = new sqlQuery($GLOBALS['conx']); $query = "INSERT INTO paymentlog_extra_amount (`idpaymentlog`,`extra_amt`,`iduser`)\n VALUES (" . $lastInsertedPaymentLogId . "," . $paymentlog_extra_amount->extra_amt . "," . $_SESSION['do_User']->iduser . ")\n "; $q->query($query); $q->free(); } } // paymentlog_extra_amount import ends $do_paymentlog->free(); } } //Payment Log import ends $msg_inv = ", Invoices"; $do_invoice->free(); } } // Invoice import ends /************************************************************************************************************************/ $do_contact->free(); } $msg = "Your Contacts" . $msg_inv; } /** *Company insert */ $compani_id = array(); $lastInsertedCompani_id = array(); $companies_cnt = count($xml->companies); if ($companies_cnt) { for ($i = 0; $i < $companies_cnt; $i++) { $do_company = new Company(); $company = $xml->companies[$i]; array_push($compani_id, "{$company->idcompany}"); // $do_company->idcompany=$company->idcompany; $do_company->name = $company->name; $do_company->iduser = $_SESSION['do_User']->iduser; $do_company->add(); array_push($lastInsertedCompani_id, $do_company->getPrimaryKeyValue()); $do_company->free(); } } //tasks which are neither associated with Contact nor with project $task_wop_cnt = count($xml->task_without_project); if ($task_wop_cnt) { for ($i = 0; $i < $task_wop_cnt; $i++) { $do_task = new Task(); $task_wop = $xml->task_without_project[$i]; $do_task->task_description = $task_wop->task_description; $do_task->due_date = $task_wop->due_date; $do_task->category = $task_wop->category; $do_task->iduser = $_SESSION['do_User']->iduser; $do_task->due_date_dateformat = $task_wop->due_date_dateformat; $do_task->status = $task_wop->status; $do_task->date_completed = $task_wop->date_completed; $do_task->idcontact = $task_wop->idcontact; //it would be 0 since not associated with contact. $do_task->from_note = $task_wop->from_note; $do_task->is_sp_date_set = $task_wop->is_sp_date_set; $do_task->task_category = $task_wop->task_category; $do_task->add(); $do_task->free(); } $msg .= ", Tasks"; } //tasks which are associated with Project $prj_cnt = count($xml->project); if ($prj_cnt) { for ($i = 0; $i < $prj_cnt; $i++) { $do_project = new Project(); $project = $xml->project[$i]; $do_project->iduser = $_SESSION['do_User']->iduser; $do_project->name = $project->name; $do_project->end_date_dateformat = $project->end_date_dateformat; $do_project->idcompany = $project->idcompany; $do_project->status = $project->status; $do_project->effort_estimated_hrs = $project->effort_estimated_hrs; $do_project->is_public = $project->is_public; $do_project->add(); $lastInsertedPrjId = $do_project->getPrimaryKeyValue(); $pt_cnt = count($project->project_task); if ($pt_cnt) { for ($pt_cnt_i = 0; $pt_cnt_i < $pt_cnt; $pt_cnt_i++) { $do_task = new Task(); $project_task = $project->project_task[$pt_cnt_i]; $do_task->task_description = $project_task->task_description; $do_task->due_date = $project_task->due_date; $do_task->category = $project_task->category; $do_task->iduser = $_SESSION['do_User']->iduser; $do_task->due_date_dateformat = $project_task->due_date_dateformat; $do_task->status = $project_task->status; $do_task->date_completed = $project_task->date_completed; $do_task->idcontact = $project_task->idcontact; $do_task->from_note = $project_task->from_note; $do_task->is_sp_date_set = $project_task->is_sp_date_set; $do_task->task_category = $project_task->task_category; $do_task->add(); $lastInsertedTskId = $do_task->getPrimaryKeyValue(); $q = new sqlQuery($GLOBALS['conx']); if ($project_task->progress == '') { $project_task_progress = 0; } else { $project_task_progress = $project_task->progress; } $sql = "INSERT INTO \n\t\t\tproject_task (idtask, idproject, progress,drop_box_code,priority,hrs_work_expected) \n\t\t\tVALUES ({$lastInsertedTskId},{$lastInsertedPrjId},{$project_task_progress},{$project_task->drop_box_code},{$project_task->priority},{$project_task->hrs_work_expected})"; echo $sql; echo "<br>"; $q->query($sql); $lastInsertedPrjTaskId = $q->getInsertId('project_task', 'idproject_task'); $pd_cnt = count($project_task->project_discuss); if ($pd_cnt) { for ($pd_cnt_i = 0; $pd_cnt_i < $pd_cnt; $pd_cnt_i++) { $do_project_discuss = new ProjectDiscuss(); $project_discuss = $project_task->project_discuss[$pd_cnt_i]; $do_project_discuss->idproject_task = $lastInsertedPrjTaskId; $do_project_discuss->idtask = $lastInsertedTskId; $do_project_discuss->idproject = $lastInsertedPrjId; $do_project_discuss->discuss = $project_discuss->discuss; $do_project_discuss->date_added = $project_discuss->date_added; $do_project_discuss->document = $project_discuss->document; $do_project_discuss->iduser = $_SESSION['do_User']->iduser; $do_project_discuss->drop_box_sender = $project_discuss->drop_box_sender; $do_project_discuss->priority = $project_discuss->priority; $do_project_discuss->hours_work = $project_discuss->hours_work; $do_project_discuss->discuss_edit_access = $project_discuss->discuss_edit_access; $do_project_discuss->type = $project_discuss->type; $do_project_discuss->add(); $do_project_discuss->free(); } } // $do_project_task->free(); $do_task->free(); } } $do_project->free(); } $compani_id_cnt = count($compani_id); if ($compani_id_cnt) { $j = 0; foreach ($compani_id as $cmp_id) { $q = new sqlQuery($GLOBALS['conx']); $sql = "UPDATE contact SET idcompany ={$lastInsertedCompani_id[$j]} WHERE iduser={$_SESSION['do_User']->iduser} AND idcompany ={$cmp_id}"; $q->query($sql); $sql1 = "UPDATE invoice SET idcompany ={$lastInsertedCompani_id[$j]} WHERE iduser={$_SESSION['do_User']->iduser} AND idcompany ={$cmp_id}"; $q->query($sql1); $sql2 = "UPDATE project SET idcompany ={$lastInsertedCompani_id[$j]} WHERE iduser={$_SESSION['do_User']->iduser} AND idcompany ={$cmp_id}"; $q->query($sql2); $q->free(); $j++; } } $do_create_usrtbl = new ContactView(); $do_create_usrtbl->rebuildContactUserTable($_SESSION['do_User']->iduser); $msg .= " and Projects have been imported successfully."; } } else { $msg = "Sorry! The data could not be imported."; } } else { $msg = "Sorry! Could not find the uploaded file."; } } $_SESSION['in_page_message'] = $msg; }
/** * Method to import the facebook friends using the queue * @param object $job * @see Contact::importFacebookFriends(); */ public function jobqueue_fb_friend_import($job) { include_once 'facebook_client/facebook.php'; include_once 'class/OfuzFacebook.class.php'; //$qry = new sqlQuery($this->getDbCon()); //$qry_d = new sqlQuery($this->getDbCon()); $data = $job->obj_data; $iduser = $job->iduser; $obj = unserialize($data); if (is_object($obj)) { try { @($friends = $obj->getFbFriends()); // will contain the fbid of friends } catch (Exception $e) { echo 'Friends Not Found !!'; } $list = $obj->getFriendsList(); $count = count(@$friends); $i = 1; $j = 0; foreach (@$friends as $friend) { $frnd_list = array(); $frnd_list = $list; $list_name_array = array(); if (is_array($frnd_list)) { foreach ($frnd_list as $frnd_list) { $list_id = $frnd_list['flid']; $frnds_in_list = $obj->getFriendsInList($list_id); if (@in_array($friend, $frnds_in_list)) { $list_name_array[] = $frnd_list['name']; } } } $j++; //echo '11'; $do_contact = new Contact(); $name = $obj->getFbUserName($friend); // will contain the firstand last name in facebook $affiliations = $obj->getFbUserAffiliations($friend); $work_history = $obj->getWorkHistory($friend); $profile_url = $obj->getProfileURL($friend); $profile_pic_with_logo = $obj->getProfilePicWithLogo($friend); $friends_data = array("fb_uid" => $friend, "name" => $name, "affiliations" => $affiliations, "work" => $work_history, "profile_url" => $profile_url, "pic_with_logo" => $profile_pic_with_logo, "listname" => $list_name_array); $do_contact->importFacebookFriends($friends_data, $iduser); $do_contact->free(); } echo '<h2>Friends have been imported for Userid ' . $iduser . '</h2> '; } }