function getData($buildingid) { $this->building = Idp_Main::getBuildingBasicInfos($buildingid); if (!array_key_exists('id', $this->building)) { return false; } $this->main_image = wp_get_attachment_image_src($this->building['main_image'], 'large-thumbnail'); if ($this->main_image === false) { $this->main_image[0] = get_template_directory_uri() . "/images/spacer.png"; } $this->building_images = Idp_Main::getBuildingImages($buildingid); $this->images_total_count = count($this->building_images) > 18 ? 18 : count($this->building_images); $this->main_address = Idp_Main::getBuildingAddress($buildingid); if (!empty($this->building['submission_date'])) { $tmp_date = $this->building['submission_date']; } else { $tmp_date = $this->building['creation_date']; } $this->date = mysql2date('d.m.Y', $tmp_date); $user_info = get_userdata($this->building['creation_user']); $this->student = $user_info->last_name . ", " . $user_info->first_name; return true; }
$success = false; //form data is present if ($_SERVER["REQUEST_METHOD"] == "POST") { if (isset($_POST['delete_building_nonce']) && wp_verify_nonce($_POST['delete_building_nonce'], 'delete_building')) { $result = Idp_Main::deleteBuilding($buildingid); if ($result === false) { $message = __('Error deleting building.', 'idp-theme'); $error = true; } else { $message = __('Building deleted successfully.', 'idp-theme'); $success = true; } } } if (!$error && !$success) { $building = Idp_Main::getBuildingBasicInfos($buildingid); if (!array_key_exists('id', $building)) { global $wp_query; $wp_query->set_404(); status_header(404); get_template_part(404); exit; } $main_image = wp_get_attachment_image_src($building['main_image'], 'large'); $main_image_thumb = wp_get_attachment_image_src($building['main_image'], 'large-thumbnail'); if ($main_image === false) { $main_image[0] = get_template_directory_uri() . "/images/spacer.png"; $main_image_thumb[0] = $main_image[0]; } } ?>
/** * Delete Building and all its data from the database * * @author Christopher Siewert * @return success */ public static function deleteBuilding($building_id) { global $wpdb; $errors = 0; $images = Idp_Main::getBuildingImages($building_id); foreach ($images as $image) { $result = Idp_Main::deleteBuildingImage($building_id, $image); if ($result === false) { $errors++; } } $building = Idp_Main::getBuildingBasicInfos($building_id); $result = $wpdb->delete($wpdb->prefix . 'building_attribute', array('building' => $building_id), array('%d')); if ($result === false) { $errors++; } $result = $wpdb->delete($wpdb->prefix . 'bounds', array('coordinates' => $building['bounds']), array('%s')); if ($result === false) { $errors++; } $result = $wpdb->delete($wpdb->prefix . 'building', array('id' => $building_id), array('%d')); if ($result === false) { $errors++; } if ($errors > 0) { return false; } else { return true; } }