Example #1
0
 public function remove_stage_confirmation($order_id)
 {
     $stage = new Event();
     $products = SiteHelper::product_stage_relation();
     $order_fields = $this->addition_fields_list();
     // $course_id       = db::getEntryMeta($order_id, $order_fields['course'])[0];
     $course_id = db::getEntryMeta($order_id, $order_fields['course'])[0];
     $order = new \WC_Order($order_id);
     $user_id = $order->user_id;
     $order_items = $order->get_items();
     $items_id = array();
     $itmes = array();
     $stage_fields = Event::addition_fields_list();
     $confirmed_field = '_' . $stage_fields['confirmed'];
     foreach ($order_items as $item) {
         $item_id = $item['item_meta']['_product_id'][0];
         array_push($items_id, $item_id);
     }
     foreach ($items_id as $item_id) {
         if ($item_name = array_search($item_id, $products)) {
             $stage_id = $stage->getIDByParentID($course_id, $item_name);
             #file_put_contents( dirname( __FILE__) . '\remove_stage_confirmation.log', 'Course3 ID = ' . $course_id . 'Item Name =  ' . $item_name . ' Stage =  ' . $stage_id  );
             if ($stage_id) {
                 $confirmed_count = db::getEntryMeta($stage_id, $confirmed_field)[0];
                 User::deleteMeta($user_id, $stage_fields['name'] . $item_name, $stage_id);
                 db::updateEntryMeta($stage_id, $confirmed_field, --$confirmed_count);
             }
         }
     }
 }