BackUpWordPress - Version 0.2.3

Version Description

Download this release

Release Info

Developer wpdprx
Plugin Icon 128x128 BackUpWordPress
Version 0.2.3
Comparing to
See all releases

Code changes from version 0.2.2 to 0.2.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.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.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
- if ($preset['bkpwp_preset_options']['bkpwp_sql_only'] == 1) {
381
- $ret = "<p>".__("Database Only Backup with this Preset. No Disk Files will be backed up.","bkpwp")."</p>";
382
- return $ret;
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 = "<p>".__("Your Wordpress files backuped with preset","bkpwp")." <b>".$preset['bkpwp_preset_name']."</b> ".__(" use","bkpwp")." ";
398
- $ret .= "<b>".bkpwp_size_readable($filesize)."</b> ".__("of disk space.","bkpwp")."<br />";
399
- $ret .= "".__("Depending on the type of these files, the resulting Backup Archive filesize can be reduced by more than 70%.","bkpwp")."</p>";
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
- $presets = new BKPWP_MANAGE();
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
- $presets[] = $p;
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 bkpwp_save_preset($name="",$archive_type="",$excludelist="",$sql_only="") {
 
 
 
 
 
 
 
 
 
 
 
 
 
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
- $presets[] = $p;
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
- $name = get_option("bkpwp_automail_receiver");
1043
-
1044
- $mail->AddAddress($email, $name);
1045
- $mail->From = $email;
 
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
- $this->bkpwp_update_option("bkpwp_automail_address",$GLOBALS['userdata']->user_email);
 
 
 
 
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 echo $GLOBALS['userdata']->user_email; ?></b></p>
 
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
- //delete_option("cron");
 
 
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"); ?> &raquo;" />
@@ -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
- if (!empty($options['lastrun'])) {
38
- echo date(get_option('date_format'),strtotime($options['lastrun']))." ".date("H:i",strtotime($options['lastrun']));
 
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"); ?> &raquo;" />
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;">&raquo;</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