Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //check scheduled actions
- function scheduler() {
- $date = date("Y-m-d H:i:s");
- //echo $date;
- $last_run = get_option('last_run');
- //if one hour passed since last run
- if (strtotime($last_run)+ 3600 < strtotime($date)) {
- //echo "1 hour passed!";
- update_option('last_run', $date);
- $this->run_scheduled_actions();
- return true;
- }
- else {
- return false;
- }
- }
- //scheduled actions
- function run_scheduled_actions() {
- global $wpdb;
- //get all the books from the database
- $table_name = $wpdb->prefix . 'posts';
- $books = $wpdb->get_results("SELECT * FROM `$table_name` WHERE `post_type` = 'book';", ARRAY_A);
- foreach ($books as $book) {
- $book_id = $book['ID'];
- //echo $book_id;
- $user_id = $this->get_book_user_author($book_id);
- //get tracking ids
- $tracking_id_warehouse = get_post_meta($book_id, 'tracking_id_aftership', true);
- $tracking_id_seller = get_post_meta($book_id, 'seller_tracking_number', true);
- //get old valuss
- $tracking_status_warehouse = get_post_meta($book_id, 'tracking_status_warehouse', true);
- $tracking_status_seller = get_post_meta($book_id, 'tracking_status_seller', true);
- //get new values
- if (!empty($tracking_id_warehouse)) {
- $tracking_status_warehouse_new_full = $this->check_tracking_status($tracking_id_warehouse);
- $tracking_status_warehouse_new = $tracking_status_warehouse_new_full['data']['tracking']['tag'];
- //if tracking status changed, update it in the meta. same if it is first-run
- if ($tracking_status_warehouse != $tracking_status_warehouse_new) {
- update_post_meta($book_id, 'tracking_status_warehouse', $tracking_status_warehouse_new);
- $this->mail_on_track_update($user_id, $tracking_status_warehouse_new, $book_id);
- }
- }
- if (!empty($tracking_id_seller)) {
- $tracking_status_seller_new_full = $this->check_tracking_status($tracking_id_warehouse);
- $tracking_status_seller_new = $tracking_status_seller_new_full['data']['tracking']['tag'];
- if ($tracking_status_seller != $tracking_status_seller_new) {
- update_post_meta($book_id, 'tracking_status_seller', $tracking_status_seller_new);
- $this->mail_on_track_update($user_id, $tracking_status_seller_new, $book_id);
- }
- }
- //end with checks
- }
- //end with books loop
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement