Version Description
Download this release
Release Info
| Developer | wpdprx |
| Plugin | |
| Version | 0.2.3 |
| Comparing to | |
| See all releases | |
Code changes from version 0.2.2 to 0.2.3
- backupwordpress.php +2 -39
- bkpwp-classes/manage_backups.php +50 -17
- bkpwp-classes/options.php +5 -1
- bkpwp-pages/bkpwp_options.php +3 -1
- bkpwp-pages/bkpwp_schedule.php +35 -3
- functions.php +1 -0
- readme.txt +40 -3
backupwordpress.php
CHANGED
|
@@ -4,47 +4,10 @@ Plugin Name: BackUpWordPress
|
|
| 4 |
Plugin URI: http://wordpress.designpraxis.at
|
| 5 |
Description: Manage <a href="admin.php?page=backupwordpress/backupwordpress.php">WordPress Backups</a>. Beta Release. Please help testing and give me feedback under the comments section of <a href="http://wordpress.designpraxis.at/plugins/backupwordpress/">the Plugin page</a>. Backup DB, Files & Folders, use .tar.gz, .zip, Exclude List, etc.
|
| 6 |
Author: Roland Rust
|
| 7 |
-
Version: 0.2.
|
| 8 |
Author URI: http://wordpress.designpraxis.at
|
| 9 |
*/
|
| 10 |
|
| 11 |
-
/*
|
| 12 |
-
Notes:
|
| 13 |
-
backupwordpress\Archive\Writer\Tar.php has been debugged around line 80 to handle long filenames according to http://pear.php.net/bugs/bug.php?id=10144&edit=3
|
| 14 |
-
|
| 15 |
-
Whishlist:
|
| 16 |
-
- custom schedules
|
| 17 |
-
*/
|
| 18 |
-
|
| 19 |
-
/*
|
| 20 |
-
|
| 21 |
-
Changelog:
|
| 22 |
-
|
| 23 |
-
Changes in 0.2.2:
|
| 24 |
-
- Manage Backups now display the type, either scheduled or manual for Advanced as well as EasyMode
|
| 25 |
-
- logfile prints out WordPress and BackUpWordPress version for easier posting at http://wpforum.designpraxis.at/
|
| 26 |
-
- BackUpWordPress displays "Your backup is being processed" instead of the actions links on the Manage Backups screen as long as archiving is not finished
|
| 27 |
-
|
| 28 |
-
Changes in 0.2.1:
|
| 29 |
-
- old Logfiles are deleted. 10 times the amount of the configured amount of backups to keep is kept.
|
| 30 |
-
- feature: backups are done in kind of a staggered process:
|
| 31 |
-
if BackUpWordPress runs into a server side time-out, BackUpWordPress tries to trigger an single scheduled event for finishing the task. Corresponding dialoques appear on the *Manage Backups* - screen.
|
| 32 |
-
|
| 33 |
-
Changes in 0.1.4:
|
| 34 |
-
- @set_time_limit(0) in functions.php line 277 supresses the 'Cannot set time limit in safe mode' warning
|
| 35 |
-
- dialoques streamlined: e.g. when you click "delete" on a backup archive, you just need to hit enter to delete it
|
| 36 |
-
|
| 37 |
-
Changes in 0.1.3:
|
| 38 |
-
- ajax problems fixed
|
| 39 |
-
- schedules last run timestamp fixed
|
| 40 |
-
|
| 41 |
-
Changes in 0.1.2:
|
| 42 |
-
- bug fixed: Backup-Now doesn't call Sajax
|
| 43 |
-
- bkpwp_delete_old() refactored
|
| 44 |
-
- bug fixed: table data is not dumped
|
| 45 |
-
|
| 46 |
-
*/
|
| 47 |
-
|
| 48 |
/* Copyright 2007 Roland Rust (email : wordpress@designpraxis.at)
|
| 49 |
|
| 50 |
This program is free software; you can redistribute it and/or modify
|
|
@@ -63,7 +26,7 @@ Changes in 0.1.2:
|
|
| 63 |
*/
|
| 64 |
//return;
|
| 65 |
$GLOBALS['bkpwp_plugin_path'] = ABSPATH."wp-content/plugins/backupwordpress/";
|
| 66 |
-
$GLOBALS['bkpwp_version'] = "0.2.
|
| 67 |
|
| 68 |
// get the functions
|
| 69 |
require_once($GLOBALS['bkpwp_plugin_path']."functions.php");
|
| 4 |
Plugin URI: http://wordpress.designpraxis.at
|
| 5 |
Description: Manage <a href="admin.php?page=backupwordpress/backupwordpress.php">WordPress Backups</a>. Beta Release. Please help testing and give me feedback under the comments section of <a href="http://wordpress.designpraxis.at/plugins/backupwordpress/">the Plugin page</a>. Backup DB, Files & Folders, use .tar.gz, .zip, Exclude List, etc.
|
| 6 |
Author: Roland Rust
|
| 7 |
+
Version: 0.2.3
|
| 8 |
Author URI: http://wordpress.designpraxis.at
|
| 9 |
*/
|
| 10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11 |
/* Copyright 2007 Roland Rust (email : wordpress@designpraxis.at)
|
| 12 |
|
| 13 |
This program is free software; you can redistribute it and/or modify
|
| 26 |
*/
|
| 27 |
//return;
|
| 28 |
$GLOBALS['bkpwp_plugin_path'] = ABSPATH."wp-content/plugins/backupwordpress/";
|
| 29 |
+
$GLOBALS['bkpwp_version'] = "0.2.3";
|
| 30 |
|
| 31 |
// get the functions
|
| 32 |
require_once($GLOBALS['bkpwp_plugin_path']."functions.php");
|
bkpwp-classes/manage_backups.php
CHANGED
|
@@ -377,10 +377,26 @@ class BKPWP_BACKUP {
|
|
| 377 |
}
|
| 378 |
|
| 379 |
function bkpwp_calculate($preset) {
|
| 380 |
-
|
| 381 |
-
|
| 382 |
-
|
| 383 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 384 |
$options = new BKPWP_OPTIONS();
|
| 385 |
clearstatcache(); //get rid of cached filesizes...
|
| 386 |
$dir = bkpwp_conform_dir(ABSPATH);
|
|
@@ -394,9 +410,9 @@ class BKPWP_BACKUP {
|
|
| 394 |
//echo $str.": ".bkpwp_size_readable($thisf)." (".bkpwp_size_readable($filesize).")\\n";
|
| 395 |
}
|
| 396 |
update_option("bkpwp_calculation",bkpwp_size_readable($filesize));
|
| 397 |
-
$ret
|
| 398 |
-
$ret .=
|
| 399 |
-
$ret .= "".__("
|
| 400 |
return $ret;
|
| 401 |
}
|
| 402 |
|
|
@@ -411,6 +427,7 @@ class BKPWP_BACKUP {
|
|
| 411 |
|
| 412 |
function bkpwp_do_backup($preset,$status="") {
|
| 413 |
$options = new BKPWP_OPTIONS();
|
|
|
|
| 414 |
$log = array();
|
| 415 |
// get the desired archive type from preset
|
| 416 |
if (!empty($status)) {
|
|
@@ -419,8 +436,7 @@ class BKPWP_BACKUP {
|
|
| 419 |
|
| 420 |
// load the full backup preset if none is set
|
| 421 |
if (empty($preset)) {
|
| 422 |
-
|
| 423 |
-
$preset = $presets->bkpwp_get_preset("full backup");
|
| 424 |
}
|
| 425 |
|
| 426 |
$type = $preset['bkpwp_preset_options']['bkpwp_archive_type'];
|
|
@@ -456,6 +472,8 @@ class BKPWP_BACKUP {
|
|
| 456 |
$log['schedule'] = __("manually","bkpwp");
|
| 457 |
} else {
|
| 458 |
$log['schedule'] = $preset['bkpwp_schedule'];
|
|
|
|
|
|
|
| 459 |
}
|
| 460 |
$time_start = microtime(true);
|
| 461 |
|
|
@@ -895,7 +913,7 @@ class BKPWP_MANAGE {
|
|
| 895 |
$presets= array();
|
| 896 |
foreach($apresets as $p) {
|
| 897 |
if ($p['bkpwp_preset_name'] != $name) {
|
| 898 |
-
|
| 899 |
} else {
|
| 900 |
if ($p['bkpwp_preset_options']['default'] == 1) {
|
| 901 |
return __("You can not delete this default preset.","bkpwp");
|
|
@@ -906,7 +924,20 @@ class BKPWP_MANAGE {
|
|
| 906 |
return "<div id=\"message\" class=\"updated fade\"><p>".__("Preset deleted.","bkpwp")."</p></div>";
|
| 907 |
}
|
| 908 |
|
| 909 |
-
function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 910 |
if (empty($name)) {
|
| 911 |
$name = "Preset".date("Y-m-d-H-i-s");
|
| 912 |
}
|
|
@@ -914,7 +945,7 @@ class BKPWP_MANAGE {
|
|
| 914 |
$presets= array();
|
| 915 |
foreach($apresets as $p) {
|
| 916 |
if ($p['bkpwp_preset_name'] != $name) {
|
| 917 |
-
|
| 918 |
} else {
|
| 919 |
if ($p['bkpwp_preset_options']['default'] == 1) {
|
| 920 |
return "<div id=\"message\" class=\"updated fade\"><p>".__("You can not overwrite this default preset. Please save changes with a new Preset Name.","bkpwp")."</p></div>";
|
|
@@ -924,7 +955,8 @@ class BKPWP_MANAGE {
|
|
| 924 |
|
| 925 |
$options = array("bkpwp_archive_type" => $archive_type,
|
| 926 |
"bkpwp_sql_only" => $sql_only,
|
| 927 |
-
"bkpwp_excludelist" => $excludelist
|
|
|
|
| 928 |
$presets[] = array("bkpwp_preset_name" => $name,
|
| 929 |
"bkpwp_preset_options" => $options);
|
| 930 |
|
|
@@ -1039,10 +1071,11 @@ function bkpwp_mail_now($file="", $bkpwpinfo="") {
|
|
| 1039 |
// Now you only need to add the necessary stuff
|
| 1040 |
|
| 1041 |
$email = get_option("bkpwp_automail_address");
|
| 1042 |
-
$
|
| 1043 |
-
|
| 1044 |
-
|
| 1045 |
-
|
|
|
|
| 1046 |
$mail->FromName = __("BackUpWordPress","bkpwp")." ".get_bloginfo("url");
|
| 1047 |
$mail->Subject = __("BackUpWordPress","bkpwp")." ".get_bloginfo("url");
|
| 1048 |
$mail->Body = "<html><body>";
|
| 377 |
}
|
| 378 |
|
| 379 |
function bkpwp_calculate($preset) {
|
| 380 |
+
$sql = 'SHOW TABLE STATUS FROM ' . DB_NAME;
|
| 381 |
+
$res = @$GLOBALS['wpdb']->get_results($sql, ARRAY_A);
|
| 382 |
+
$sum_free = 0;
|
| 383 |
+
$sum_data = 0;
|
| 384 |
+
foreach($res as $r) {
|
| 385 |
+
$sum_free = $sum_free + $r['Data_free'];
|
| 386 |
+
$sum_data = $sum_data + $r['Data_length'];
|
| 387 |
+
}
|
| 388 |
+
$ret = "<p>";
|
| 389 |
+
$ret .= __("Your Database holds.","bkpwp")." "
|
| 390 |
+
.bkpwp_size_readable($sum_data)." "
|
| 391 |
+
.__("of Data","dprx_opt").".<br />";
|
| 392 |
+
|
| 393 |
+
|
| 394 |
+
if ($preset['bkpwp_preset_options']['bkpwp_sql_only'] == 1) {
|
| 395 |
+
$ret .= __("The resulting Backup Archive will be about","dprx_opt")." <b> ".bkpwp_size_readable(($sum_data/2.5))."</b>.</p>";
|
| 396 |
+
$ret .= "<p>".__("Database Only Backup with this Preset. No Disk Files will be backed up.","bkpwp")."</p>";
|
| 397 |
+
return $ret;
|
| 398 |
+
}
|
| 399 |
+
|
| 400 |
$options = new BKPWP_OPTIONS();
|
| 401 |
clearstatcache(); //get rid of cached filesizes...
|
| 402 |
$dir = bkpwp_conform_dir(ABSPATH);
|
| 410 |
//echo $str.": ".bkpwp_size_readable($thisf)." (".bkpwp_size_readable($filesize).")\\n";
|
| 411 |
}
|
| 412 |
update_option("bkpwp_calculation",bkpwp_size_readable($filesize));
|
| 413 |
+
$ret .= __("Your Wordpress files in this backup use","bkpwp")." ";
|
| 414 |
+
$ret .= bkpwp_size_readable($filesize)." ".__("of disk space.","bkpwp")."<br />";
|
| 415 |
+
$ret .= "".__("Your Backup Archive filesize saved with preset","bkpwp")." <b>".$preset['bkpwp_preset_name']."</b> ".__("will be about","bkpwp")." <b>".bkpwp_size_readable((($sum_data+$filesize)/1.9))."</b>.</p>";
|
| 416 |
return $ret;
|
| 417 |
}
|
| 418 |
|
| 427 |
|
| 428 |
function bkpwp_do_backup($preset,$status="") {
|
| 429 |
$options = new BKPWP_OPTIONS();
|
| 430 |
+
$presets = new BKPWP_MANAGE();
|
| 431 |
$log = array();
|
| 432 |
// get the desired archive type from preset
|
| 433 |
if (!empty($status)) {
|
| 436 |
|
| 437 |
// load the full backup preset if none is set
|
| 438 |
if (empty($preset)) {
|
| 439 |
+
$preset = $presets->bkpwp_get_preset("full backup");
|
|
|
|
| 440 |
}
|
| 441 |
|
| 442 |
$type = $preset['bkpwp_preset_options']['bkpwp_archive_type'];
|
| 472 |
$log['schedule'] = __("manually","bkpwp");
|
| 473 |
} else {
|
| 474 |
$log['schedule'] = $preset['bkpwp_schedule'];
|
| 475 |
+
$preset['bkpwp_preset_options']['bkpwp_lastrun'] = time();
|
| 476 |
+
$presets->bkpwp_update_preset($preset);
|
| 477 |
}
|
| 478 |
$time_start = microtime(true);
|
| 479 |
|
| 913 |
$presets= array();
|
| 914 |
foreach($apresets as $p) {
|
| 915 |
if ($p['bkpwp_preset_name'] != $name) {
|
| 916 |
+
$presets[] = $p;
|
| 917 |
} else {
|
| 918 |
if ($p['bkpwp_preset_options']['default'] == 1) {
|
| 919 |
return __("You can not delete this default preset.","bkpwp");
|
| 924 |
return "<div id=\"message\" class=\"updated fade\"><p>".__("Preset deleted.","bkpwp")."</p></div>";
|
| 925 |
}
|
| 926 |
|
| 927 |
+
function bkpwp_update_preset($preset) {
|
| 928 |
+
$apresets = $this->bkpwp_get_presets();
|
| 929 |
+
$presets= array();
|
| 930 |
+
foreach($apresets as $p) {
|
| 931 |
+
if ($p['bkpwp_preset_name'] != $preset['bkpwp_preset_name']) {
|
| 932 |
+
$presets[] = $p;
|
| 933 |
+
} else {
|
| 934 |
+
$presets[] = $preset;
|
| 935 |
+
}
|
| 936 |
+
}
|
| 937 |
+
$this->bkpwp_update_presets($presets);
|
| 938 |
+
}
|
| 939 |
+
|
| 940 |
+
function bkpwp_save_preset($name="",$archive_type="",$excludelist="",$sql_only="", $lastrun="") {
|
| 941 |
if (empty($name)) {
|
| 942 |
$name = "Preset".date("Y-m-d-H-i-s");
|
| 943 |
}
|
| 945 |
$presets= array();
|
| 946 |
foreach($apresets as $p) {
|
| 947 |
if ($p['bkpwp_preset_name'] != $name) {
|
| 948 |
+
$presets[] = $p;
|
| 949 |
} else {
|
| 950 |
if ($p['bkpwp_preset_options']['default'] == 1) {
|
| 951 |
return "<div id=\"message\" class=\"updated fade\"><p>".__("You can not overwrite this default preset. Please save changes with a new Preset Name.","bkpwp")."</p></div>";
|
| 955 |
|
| 956 |
$options = array("bkpwp_archive_type" => $archive_type,
|
| 957 |
"bkpwp_sql_only" => $sql_only,
|
| 958 |
+
"bkpwp_excludelist" => $excludelist,
|
| 959 |
+
"bkpwp_lastrun" => $lastrun);
|
| 960 |
$presets[] = array("bkpwp_preset_name" => $name,
|
| 961 |
"bkpwp_preset_options" => $options);
|
| 962 |
|
| 1071 |
// Now you only need to add the necessary stuff
|
| 1072 |
|
| 1073 |
$email = get_option("bkpwp_automail_address");
|
| 1074 |
+
$em = explode (",",$email);
|
| 1075 |
+
foreach($em as $e) {
|
| 1076 |
+
$mail->AddAddress(trim($e), "Backup Admin");
|
| 1077 |
+
}
|
| 1078 |
+
$mail->From = get_option("bkpwp_automail_from");
|
| 1079 |
$mail->FromName = __("BackUpWordPress","bkpwp")." ".get_bloginfo("url");
|
| 1080 |
$mail->Subject = __("BackUpWordPress","bkpwp")." ".get_bloginfo("url");
|
| 1081 |
$mail->Body = "<html><body>";
|
bkpwp-classes/options.php
CHANGED
|
@@ -117,7 +117,11 @@ class BKPWP_OPTIONS {
|
|
| 117 |
if (!empty($_REQUEST['bkpwp_automailsettings'])) {
|
| 118 |
if (!empty($_REQUEST['bkpwp_automail'])) {
|
| 119 |
$this->bkpwp_update_option("bkpwp_automail",$_REQUEST['bkpwp_automail']);
|
| 120 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
| 121 |
$this->bkpwp_update_option("bkpwp_automail_receiver",$GLOBALS['userdata']->user_nicename);
|
| 122 |
if (!empty($_REQUEST['bkpwp_automail_maxsize'])) {
|
| 123 |
$this->bkpwp_update_option("bkpwp_automail_maxsize",$_REQUEST['bkpwp_automail_maxsize']);
|
| 117 |
if (!empty($_REQUEST['bkpwp_automailsettings'])) {
|
| 118 |
if (!empty($_REQUEST['bkpwp_automail'])) {
|
| 119 |
$this->bkpwp_update_option("bkpwp_automail",$_REQUEST['bkpwp_automail']);
|
| 120 |
+
if (empty($_REQUEST['bkpwp_automail_address'])) {
|
| 121 |
+
$_REQUEST['bkpwp_automail_address'] = $GLOBALS['userdata']->user_email;
|
| 122 |
+
}
|
| 123 |
+
$this->bkpwp_update_option("bkpwp_automail_address",$_REQUEST['bkpwp_automail_address']);
|
| 124 |
+
$this->bkpwp_update_option("bkpwp_automail_from",$GLOBALS['userdata']->user_email);
|
| 125 |
$this->bkpwp_update_option("bkpwp_automail_receiver",$GLOBALS['userdata']->user_nicename);
|
| 126 |
if (!empty($_REQUEST['bkpwp_automail_maxsize'])) {
|
| 127 |
$this->bkpwp_update_option("bkpwp_automail_maxsize",$_REQUEST['bkpwp_automail_maxsize']);
|
bkpwp-pages/bkpwp_options.php
CHANGED
|
@@ -87,6 +87,7 @@ $bkpwppath = get_option("bkpwppath");
|
|
| 87 |
<?php
|
| 88 |
$options->bkpwp_handle_backup_automail();
|
| 89 |
$bkpwp_automail = get_option("bkpwp_automail");
|
|
|
|
| 90 |
?>
|
| 91 |
<h2><?php _e("Mail Setup","bkpwp"); ?></h2>
|
| 92 |
<p>
|
|
@@ -94,7 +95,8 @@ $bkpwppath = get_option("bkpwppath");
|
|
| 94 |
<form name="form1" method="post" action="admin.php?page=<?php echo $_REQUEST['page']; ?>">
|
| 95 |
<fieldset>
|
| 96 |
<?php if ($options->bkpwp_easy_mode()) { } ?>
|
| 97 |
-
<p><?php _e("Mail to:","bkpwp"); ?><b> <?php
|
|
|
|
| 98 |
<p><input type="checkbox" size="50" value="1" name="bkpwp_automail" <?php if(!empty($bkpwp_automail)) { echo " checked"; } ?> />
|
| 99 |
<?php _e("Yes, send me my backups","bkpwp"); ?></p>
|
| 100 |
<p><?php _e("as long as they are smaller than","bkpwp"); ?>
|
| 87 |
<?php
|
| 88 |
$options->bkpwp_handle_backup_automail();
|
| 89 |
$bkpwp_automail = get_option("bkpwp_automail");
|
| 90 |
+
$bkpwp_automail_address = get_option("bkpwp_automail_address");
|
| 91 |
?>
|
| 92 |
<h2><?php _e("Mail Setup","bkpwp"); ?></h2>
|
| 93 |
<p>
|
| 95 |
<form name="form1" method="post" action="admin.php?page=<?php echo $_REQUEST['page']; ?>">
|
| 96 |
<fieldset>
|
| 97 |
<?php if ($options->bkpwp_easy_mode()) { } ?>
|
| 98 |
+
<p><?php _e("Mail to:","bkpwp"); ?><b> <?php _e("Please seperate multiple email addresses with kommas.","bkpwp"); ?></p>
|
| 99 |
+
<p><input type="text" size="55" value="<?php if (empty($bkpwp_automail_address)) { echo $GLOBALS['userdata']->user_email; } else { echo $bkpwp_automail_address; } ?>" name="bkpwp_automail_address" /></b></p>
|
| 100 |
<p><input type="checkbox" size="50" value="1" name="bkpwp_automail" <?php if(!empty($bkpwp_automail)) { echo " checked"; } ?> />
|
| 101 |
<?php _e("Yes, send me my backups","bkpwp"); ?></p>
|
| 102 |
<p><?php _e("as long as they are smaller than","bkpwp"); ?>
|
bkpwp-pages/bkpwp_schedule.php
CHANGED
|
@@ -1,9 +1,37 @@
|
|
| 1 |
<?php
|
| 2 |
function bkpwp_schedulelist($bkpwppath) {
|
| 3 |
-
|
|
|
|
|
|
|
| 4 |
echo "<h2>".__("Manage Backup Schedules","bkpwp")."</h2>";
|
| 5 |
echo "<p>".__("Info: Creating custom schedules is on the wishlist for BackUpWordPress 2.0.","bkpwp")."</p>";
|
| 6 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
<form name="form1" method="post" action="admin.php?page=<?php echo $_REQUEST['page']; ?>">
|
| 8 |
<fieldset>
|
| 9 |
<input class="button" type="submit" name="bkpwp_reset_schedules" value="<?php _e("reset default schedules","bkpwp"); ?> »" />
|
|
@@ -34,8 +62,9 @@ function bkpwp_schedulelist($bkpwppath) {
|
|
| 34 |
?>
|
| 35 |
<tr class="<?php echo $alternate; ?>">
|
| 36 |
<th style="text-align: center;" scope="row"><?php
|
| 37 |
-
|
| 38 |
-
|
|
|
|
| 39 |
} else {
|
| 40 |
_e("Not Yet","bkpwp");
|
| 41 |
}
|
|
@@ -79,6 +108,9 @@ function bkpwp_schedulelist($bkpwppath) {
|
|
| 79 |
<?php
|
| 80 |
echo $options['preset'];
|
| 81 |
?>
|
|
|
|
|
|
|
|
|
|
| 82 |
</td>
|
| 83 |
<td>
|
| 84 |
<?php
|
| 1 |
<?php
|
| 2 |
function bkpwp_schedulelist($bkpwppath) {
|
| 3 |
+
$backups = new BKPWP_MANAGE();
|
| 4 |
+
$backups->options = new BKPWP_OPTIONS();
|
| 5 |
+
|
| 6 |
echo "<h2>".__("Manage Backup Schedules","bkpwp")."</h2>";
|
| 7 |
echo "<p>".__("Info: Creating custom schedules is on the wishlist for BackUpWordPress 2.0.","bkpwp")."</p>";
|
| 8 |
?>
|
| 9 |
+
<script type="text/javascript">
|
| 10 |
+
<!-- ajax call for calculating disk space usage -->
|
| 11 |
+
function calculate() {
|
| 12 |
+
var preset;
|
| 13 |
+
<?php if (!$backups->options->bkpwp_easy_mode()) { ?>
|
| 14 |
+
preset = document.getElementById('bkpwp_preset').value;
|
| 15 |
+
<?php } else { ?>
|
| 16 |
+
preset = "full backup";
|
| 17 |
+
<?php } ?>
|
| 18 |
+
x_bkpwp_ajax_calculater(preset,'');
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
<!-- displays a loading text information while doing ajax requests -->
|
| 22 |
+
function bkpwp_js_loading(str) {
|
| 23 |
+
document.getElementById('bkpwp_actions').style.display = 'block';
|
| 24 |
+
is_loading('bkpwp_action_buffer');
|
| 25 |
+
sajax_target_id = 'bkpwp_action_buffer';
|
| 26 |
+
document.getElementById('bkpwp_action_title').innerHTML="<h4>" + str + "</h4>";
|
| 27 |
+
}
|
| 28 |
+
</script>
|
| 29 |
+
<div id="bkpwp_actions" style="display:none;">
|
| 30 |
+
<div id="bkpwp_action_title"></div>
|
| 31 |
+
<div id="bkpwp_action_buffer"></div>
|
| 32 |
+
</div>
|
| 33 |
+
<input type="hidden" name="bkpwp_preset" id="bkpwp_preset" value="" />
|
| 34 |
+
|
| 35 |
<form name="form1" method="post" action="admin.php?page=<?php echo $_REQUEST['page']; ?>">
|
| 36 |
<fieldset>
|
| 37 |
<input class="button" type="submit" name="bkpwp_reset_schedules" value="<?php _e("reset default schedules","bkpwp"); ?> »" />
|
| 62 |
?>
|
| 63 |
<tr class="<?php echo $alternate; ?>">
|
| 64 |
<th style="text-align: center;" scope="row"><?php
|
| 65 |
+
$preset = $backups->bkpwp_get_preset($options['preset']);
|
| 66 |
+
if (!empty($preset['bkpwp_preset_options']['bkpwp_lastrun'])) {
|
| 67 |
+
echo date(get_option('date_format'),$preset['bkpwp_preset_options']['bkpwp_lastrun'])." ".date("H:i",$preset['bkpwp_preset_options']['bkpwp_lastrun']);
|
| 68 |
} else {
|
| 69 |
_e("Not Yet","bkpwp");
|
| 70 |
}
|
| 108 |
<?php
|
| 109 |
echo $options['preset'];
|
| 110 |
?>
|
| 111 |
+
<a title="<?php _e("Recalculate Backup size","bkpwp"); ?>"
|
| 112 |
+
href="javascript:void(0);"
|
| 113 |
+
onclick="document.getElementById('bkpwp_preset').value='<?php echo $options['preset']; ?>'; bkpwp_js_loading('<?php _e("Calculating file sizes","bkpwp"); ?>'); calculate(); sajax_target_id = ''; return false;">»</a>
|
| 114 |
</td>
|
| 115 |
<td>
|
| 116 |
<?php
|
functions.php
CHANGED
|
@@ -30,6 +30,7 @@ function bkpwp_exit() {
|
|
| 30 |
delete_option("bkpwp_automail_maxsize");
|
| 31 |
delete_option("bkpwp_automail_address");
|
| 32 |
delete_option("bkpwp_automail_receiver");
|
|
|
|
| 33 |
delete_option("bkpwp_status");
|
| 34 |
delete_option("bkpwp_status_config");
|
| 35 |
}
|
| 30 |
delete_option("bkpwp_automail_maxsize");
|
| 31 |
delete_option("bkpwp_automail_address");
|
| 32 |
delete_option("bkpwp_automail_receiver");
|
| 33 |
+
delete_option("bkpwp_automail_from");
|
| 34 |
delete_option("bkpwp_status");
|
| 35 |
delete_option("bkpwp_status_config");
|
| 36 |
}
|
readme.txt
CHANGED
|
@@ -8,7 +8,6 @@ Stable tag: trunk
|
|
| 8 |
|
| 9 |
BackUpWordPress is a Backup & Recovery Suite for your WordPress website. This Plugin allows you to backup database as well as files and comes with a rich set of options.
|
| 10 |
|
| 11 |
-
|
| 12 |
== Description ==
|
| 13 |
|
| 14 |
Features:
|
|
@@ -36,13 +35,16 @@ more option in AdvancedMode:
|
|
| 36 |
+ Manage backup presets
|
| 37 |
+ Manage exclude-lists for use with these presets
|
| 38 |
|
| 39 |
-
|
| 40 |
== Installation ==
|
| 41 |
|
| 42 |
1. Download, unzip and upload to your WordPress plugins directory
|
| 43 |
2. activate the plugin within you WordPress Administration Backend
|
| 44 |
3. Go to BackUpWordPress in your Administration Backend
|
| 45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 46 |
|
| 47 |
== Screenshots ==
|
| 48 |
|
|
@@ -59,4 +61,39 @@ BackUpWordPress utilizes several Open Source Tools:
|
|
| 59 |
+ [PEAR](http://pear.php.net/package/PEAR/)
|
| 60 |
+ [FILE_ARCHIVE](http://pear.php.net/package/File_Archive) for compression/decompression
|
| 61 |
+ [bigdump](http://www.ozerov.de/bigdump.php) for staggered sql import
|
| 62 |
-
+ [Sajax](http://www.modernmethod.com/sajax/) for ajax support
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
BackUpWordPress is a Backup & Recovery Suite for your WordPress website. This Plugin allows you to backup database as well as files and comes with a rich set of options.
|
| 10 |
|
|
|
|
| 11 |
== Description ==
|
| 12 |
|
| 13 |
Features:
|
| 35 |
+ Manage backup presets
|
| 36 |
+ Manage exclude-lists for use with these presets
|
| 37 |
|
|
|
|
| 38 |
== Installation ==
|
| 39 |
|
| 40 |
1. Download, unzip and upload to your WordPress plugins directory
|
| 41 |
2. activate the plugin within you WordPress Administration Backend
|
| 42 |
3. Go to BackUpWordPress in your Administration Backend
|
| 43 |
|
| 44 |
+
== Support Forum ==
|
| 45 |
+
|
| 46 |
+
For support questions, please search and post at our Support forum:
|
| 47 |
+
[WordPress Designpraxis Forum](http://wpforum.designpraxis.at)
|
| 48 |
|
| 49 |
== Screenshots ==
|
| 50 |
|
| 61 |
+ [PEAR](http://pear.php.net/package/PEAR/)
|
| 62 |
+ [FILE_ARCHIVE](http://pear.php.net/package/File_Archive) for compression/decompression
|
| 63 |
+ [bigdump](http://www.ozerov.de/bigdump.php) for staggered sql import
|
| 64 |
+
+ [Sajax](http://www.modernmethod.com/sajax/) for ajax support
|
| 65 |
+
|
| 66 |
+
+ backupwordpress\Archive\Writer\Tar.php has been debugged around line 80 to handle long filenames according to http://pear.php.net/bugs/bug.php?id=10144&edit=3
|
| 67 |
+
|
| 68 |
+
== Changelog ==
|
| 69 |
+
|
| 70 |
+
|
| 71 |
+
Changelog:
|
| 72 |
+
|
| 73 |
+
Changes in 0.2.3:
|
| 74 |
+
+ Mailing options: multiple email addresses supported
|
| 75 |
+
+ Backup file size reports also display the size of the database
|
| 76 |
+
+ Backup archive filesize is estimated
|
| 77 |
+
+ schedule table rows display the lastrun-timestamp of the last running backup
|
| 78 |
+
|
| 79 |
+
Changes in 0.2.2:
|
| 80 |
+
+ Manage Backups now display the type, either scheduled or manual for Advanced as well as EasyMode
|
| 81 |
+
+ logfile prints out WordPress and BackUpWordPress version for easier posting at http://wpforum.designpraxis.at/
|
| 82 |
+
+ BackUpWordPress displays "Your backup is being processed" instead of the actions links on the Manage Backups screen as long as archiving is not finished
|
| 83 |
+
|
| 84 |
+
Changes in 0.2.1:
|
| 85 |
+
+ old Logfiles are deleted. 10 times the amount of the configured amount of backups to keep is kept.
|
| 86 |
+
+ feature: backups are done in kind of a staggered process: if BackUpWordPress runs into a server side time-out, BackUpWordPress tries to trigger an single scheduled event for finishing the task. Corresponding dialoques appear on the *Manage Backups* - screen.
|
| 87 |
+
|
| 88 |
+
Changes in 0.1.4:
|
| 89 |
+
+ @set_time_limit(0) in functions.php line 277 supresses the 'Cannot set time limit in safe mode' warning
|
| 90 |
+
+ dialoques streamlined: e.g. when you click "delete" on a backup archive, you just need to hit enter to delete it
|
| 91 |
+
|
| 92 |
+
Changes in 0.1.3:
|
| 93 |
+
+ ajax problems fixed
|
| 94 |
+
+ schedules last run timestamp fixed
|
| 95 |
+
|
| 96 |
+
Changes in 0.1.2:
|
| 97 |
+
+ bug fixed: Backup-Now doesn't call Sajax
|
| 98 |
+
+ bkpwp_delete_old() refactored
|
| 99 |
+
+ bug fixed: table data is not dumped
|
