/**
  * Store the values selected in the Metaboxes
  *
  * @since    0.1.0
  */
 public function rb_store_mb_values($post_id)
 {
     $post = get_post($post_id);
     // Verify the nonce
     if (!isset($_POST[self::NONCE_NAME]) || !wp_verify_nonce($_POST[self::NONCE_NAME], basename(__FILE__))) {
         return $post_id;
     }
     // Get the post type
     $post_type = get_post_type_object($post->post_type);
     // Check current user permission
     if (!current_user_can($post_type->cap->edit_post, $post_id)) {
         return $post_id;
     }
     $fields = array(Resource_Booking_Res_Mb::$resource_type, Resource_Booking_Res_Mb::$resource_page_description_id, Resource_Booking_Res_Mb::$resource_open_from, Resource_Booking_Res_Mb::$resource_open_till, Resource_Booking_Res_Mb::$resource_works_overnight, Resource_Booking_Res_Mb::$resource_works_holidays, Resource_Booking_Res_Mb::$resource_slot_min, Resource_Booking_Res_Mb::$resource_slot_max, Resource_Booking_Res_Mb::$resource_slot_length);
     $fields_db_value = array();
     foreach ($fields as $field) {
         $fields_db_value[$field["const"]] = get_post_meta($post->ID, $field["const"], true);
     }
     $fields_post_value = array();
     foreach ($fields as $field) {
         $fields_post_value[$field["const"]] = isset($_REQUEST[$field["id"]]) ? $_REQUEST[$field["id"]] : $field["default"];
     }
     // Validate the values
     $fields = array(Resource_Booking_Res_Mb::$resource_type);
     foreach ($fields as $field) {
         $fields_post_value[$field["const"]] = sanitize_text_field($fields_post_value[$field["const"]]);
     }
     $fields = array(Resource_Booking_Res_Mb::$resource_page_description_id);
     foreach ($fields as $field) {
         $fields_post_value[$field["const"]] = is_numeric($fields_post_value[$field["const"]]) ? $fields_post_value[$field["const"]] : $field["default"];
     }
     $fields = array(Resource_Booking_Res_Mb::$resource_open_from, Resource_Booking_Res_Mb::$resource_open_till, Resource_Booking_Res_Mb::$resource_slot_min, Resource_Booking_Res_Mb::$resource_slot_max, Resource_Booking_Res_Mb::$resource_slot_length);
     foreach ($fields as $field) {
         $fields_post_value[$field["const"]] = Resource_Booking_Res_Mb::check_if_valid_time_or_default($fields_post_value[$field["const"]], $field["default"]);
     }
     $fields = array(Resource_Booking_Res_Mb::$resource_works_overnight, Resource_Booking_Res_Mb::$resource_works_holidays);
     foreach ($fields as $field) {
         $fields_post_value[$field["const"]] = Resource_Booking_Res_Mb::check_if_valid_checkbox_or_default($fields_post_value[$field["const"]], $field["default"]);
     }
     $fields = array(Resource_Booking_Res_Mb::$resource_type, Resource_Booking_Res_Mb::$resource_page_description_id, Resource_Booking_Res_Mb::$resource_open_from, Resource_Booking_Res_Mb::$resource_open_till, Resource_Booking_Res_Mb::$resource_works_overnight, Resource_Booking_Res_Mb::$resource_works_holidays, Resource_Booking_Res_Mb::$resource_slot_min, Resource_Booking_Res_Mb::$resource_slot_max, Resource_Booking_Res_Mb::$resource_slot_length);
     foreach ($fields as $field) {
         if ($fields_post_value[$field["const"]] != $fields_db_value[$field["const"]]) {
             update_post_meta($post_id, $field["const"], $fields_post_value[$field["const"]]);
         }
     }
     $rb_db = new Resource_Booking_DB();
     $resource_name = $post->post_title;
     $resource_type = $fields_post_value[self::RESOURCE_TYPE];
     $rb_db->insert_update_resources_table($post_id, $resource_name, $resource_type);
     return $post_id;
 }