Adding views
This commit is contained in:
parent
7d2b6e53b3
commit
0097514442
59
owark.php
59
owark.php
|
@ -76,8 +76,8 @@ if (!class_exists("Owark")) {
|
|||
private $broken_links = array();
|
||||
private $post_id = -1;
|
||||
private $post_type = "";
|
||||
private $version = '0.2';
|
||||
private $db_version = '0.2';
|
||||
private $version = '1.0';
|
||||
private $db_version = '1.0';
|
||||
private $notices = "";
|
||||
|
||||
/**
|
||||
|
@ -149,14 +149,22 @@ if (!class_exists("Owark")) {
|
|||
// Install or upgrade tables if needed
|
||||
|
||||
$installed_ver = get_option( "owark_db_version" );
|
||||
$update_required = ($installed_ver != $this->db_version);
|
||||
print_r_log("update_required: $update_required ($installed_ver vs {$this->db_version})");
|
||||
global $wpdb;
|
||||
$table = $wpdb->prefix."owark";
|
||||
if ($installed_ver == '0.1') {
|
||||
// In version 0.1 final URLs where used but the broken link checkers update these URLs when a link is detected broken
|
||||
$table_links = $wpdb->prefix."blc_links";
|
||||
$sql = "update $table as owark join $table_links as links on owark.url = links.final_url COLLATE latin1_swedish_ci set owark.url = links.url COLLATE latin1_swedish_ci";
|
||||
// Let's replace these URLS by raw URLs...
|
||||
$sql = "update
|
||||
{$wpdb->prefix}owark as owark
|
||||
join {$wpdb->prefix}blc_links as links on
|
||||
owark.url = links.final_url COLLATE latin1_swedish_ci
|
||||
join {$wpdb->prefix}blc_instances as instances on
|
||||
instances.link_id = links.link_id set
|
||||
owark.url = instances.raw_url ";
|
||||
$wpdb->query($sql);
|
||||
$installed_ver = '0.2';
|
||||
$installed_ver = '1.0';
|
||||
update_option( "owark_db_version", $installed_ver );
|
||||
}
|
||||
if ($installed_ver != $this->db_version) {
|
||||
|
@ -168,13 +176,50 @@ if (!class_exists("Owark")) {
|
|||
arc_date datetime,
|
||||
arc_location text,
|
||||
encoding varchar(10),
|
||||
PRIMARY KEY(`id`),
|
||||
KEY `url` (`url`(150)) )";
|
||||
PRIMARY KEY (id),
|
||||
KEY url (`url`(150)) )";
|
||||
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
||||
dbDelta($sql);
|
||||
update_option( "owark_db_version", $this->db_version );
|
||||
|
||||
}
|
||||
|
||||
if ($update_required) {
|
||||
$sql = "CREATE OR REPLACE VIEW {$wpdb->prefix}owark_broken_links AS
|
||||
SELECT
|
||||
owark.id as id,
|
||||
instances.raw_url as url,
|
||||
instances.container_id as container_id,
|
||||
instances.container_type as container_type,
|
||||
instances.container_field as container_field
|
||||
FROM
|
||||
{$wpdb->prefix}owark as owark,
|
||||
{$wpdb->prefix}blc_links as links,
|
||||
{$wpdb->prefix}blc_instances AS instances
|
||||
WHERE
|
||||
owark.url = instances.raw_url
|
||||
AND instances.link_id = links.link_id
|
||||
AND broken = 1
|
||||
AND last_check is not null
|
||||
AND instances.link_id = links.link_id";
|
||||
print_r_log("sql: $sql");
|
||||
$wpdb->query($sql);
|
||||
$sql = "CREATE OR REPLACE VIEW {$wpdb->prefix}owark_links_to_ckeck AS
|
||||
SELECT
|
||||
DISTINCT instances.raw_url as url
|
||||
FROM
|
||||
{$wpdb->prefix}blc_links as links,
|
||||
{$wpdb->prefix}blc_instances AS instances
|
||||
WHERE
|
||||
instances.link_id = links.link_id
|
||||
AND broken = 0
|
||||
AND instances.link_id = links.link_id
|
||||
AND url NOT IN (SELECT url FROM wp_owark)";
|
||||
print_r_log("sql: $sql");
|
||||
$wpdb->query($sql);
|
||||
|
||||
$this->notices = "<div class=\"updated fade\"><p><strong>The owark table has been installed or upgraded to version {$this->db_version}</strong></p></div>";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue