function handle_dropbox_auth($dropbox) { // first try to load existing access token $access_token = load_token("access"); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); } elseif (!empty($_GET['auth_callback'])) { // then load our previosly created request token $request_token = load_token($_GET['oauth_token']); if (empty($request_token)) { die('Request token not found!'); } // get & store access token, the request token is not needed anymore $access_token = $dropbox->GetAccessToken($request_token); store_token($access_token, "access"); delete_token($_GET['oauth_token']); } // checks if access token is required if (!$dropbox->IsAuthorized()) { // redirect user to dropbox auth page $return_url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?auth_callback=1"; $auth_url = $dropbox->BuildAuthorizeUrl($return_url); $request_token = $dropbox->GetRequestToken(); store_token($request_token, $request_token['t']); die("Authentication required. <a href='{$auth_url}'>Click here.</a>"); } }
function handle_dropbox_auth($dropbox) { // first try to load existing access token $access_token = load_token("access"); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); } elseif (!empty($_GET['auth_callback'])) { // then load our previosly created request token $request_token = load_token($_GET['oauth_token']); if (empty($request_token)) { die('Request token not found!'); } // get & store access token, the request token is not needed anymore $access_token = $dropbox->GetAccessToken($request_token); store_token($access_token, "access"); delete_token($_GET['oauth_token']); } // checks if access token is required if ($dropbox->IsAuthorized()) { $dropb_autho = "yes"; update_option('dropb_autho', $dropb_autho); echo '<h3>Dropbox Account Details</h3>'; $account_info = $dropbox->GetAccountInfo(); $used = round(($account_info->quota_info->quota - ($account_info->quota_info->normal + $account_info->quota_info->shared)) / 1073741824, 1); $quota = round($account_info->quota_info->quota / 1073741824, 1); echo $account_info->display_name . ', ' . 'you have' . ' ' . $used . 'GB' . 'of' . ' ' . $quota . 'GB (' . round($used / $quota * 100, 0) . '%) ' . 'free'; echo '</br><p>Unlink Account for local backups</p></br>'; echo '<td><a href="' . site_url() . '/wp-admin/tools.php?page=wp-database-backup&action=unlink" class="btn btn-primary">Unlink Account<a/>'; } else { $dropb_autho = "no"; update_option('dropb_autho', $dropb_autho); // redirect user to dropbox oauth page $return_url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?page=wp-database-backup&auth_callback=1"; $auth_url = $dropbox->BuildAuthorizeUrl($return_url); $request_token = $dropbox->GetRequestToken(); store_token($request_token, $request_token['t']); ?> <style> #adminmenuwrap { padding-bottom: 838px; } </style> <h3>Dropbox</h3> <p>Define an Dropbox destination connection.</p> <p>In order to use Dropbox destination you will need to authorized it with your Dropbox account</p> <p>Please click the authorize button below and follow the instructions inside the pop up window</p> <p>For local backup leave the setting as it is</p> <p> <form action="" method="get"> <a href="<?php echo $auth_url; ?> "><input type="button" name="authorize" id="authorize" value="Authorize" class="btn btn-primary" /></a><br/> </form> </p> <?php die; //die("Authentication required".$auth_url); } }
enable_implicit_flush(); // -- end of unneeded stuff // if there are many files in your Dropbox it can take some time, so disable the max. execution time set_time_limit(0); require_once "DropboxClient.php"; // you have to create an app at https://www.dropbox.com/developers/apps and enter details below: $dropbox = new DropboxClient(array('app_key' => "h9wy5qfiytli7b3", 'app_secret' => "21xqna3r57yqmmk", 'app_full_access' => false), 'en'); // first try to load existing access token $access_token = load_token("access"); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); echo "loaded access token:"; print_r($access_token); } elseif (!empty($_GET['auth_callback'])) { // then load our previosly created request token $request_token = load_token($_GET['oauth_token']); if (empty($request_token)) { die('Request token not found!'); } // get & store access token, the request token is not needed anymore $access_token = $dropbox->GetAccessToken($request_token); store_token($access_token, "access"); delete_token($_GET['oauth_token']); } // checks if access token is required if (!$dropbox->IsAuthorized()) { // redirect user to dropbox auth page $return_url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?auth_callback=1"; $auth_url = $dropbox->BuildAuthorizeUrl($return_url); $request_token = $dropbox->GetRequestToken(); store_token($request_token, $request_token['t']);
function Config($option) { global $config_file, $_CONFIG, $lang_array, $database, $mosConfig_db; ?> <form name='adminForm' action='' method='POST'> <script> jQuery(function() { jQuery( "#tabs" ).tabs(); }); jQuery(function() { jQuery( "#radiog1" ).buttonset(); jQuery( "#radiog2" ).buttonset(); jQuery( "#radiog3" ).buttonset(); jQuery( "#radiog4" ).buttonset(); jQuery( "#radio" ).buttonset(); jQuery( "#radiom" ).buttonset(); jQuery( "#radiob" ).buttonset(); jQuery( "#radioftp" ).buttonset(); jQuery( "#radioftps" ).buttonset(); jQuery( "#radiodebug" ).buttonset(); jQuery( "#radiorefresh" ).buttonset(); jQuery( "#checktar" ).button(); jQuery( "#cron_file_delete_act" ).button(); jQuery( "#cron_sql_drop" ).button(); jQuery( "#cron_amazon_active" ).button(); jQuery( "#cron_dropbox_active" ).button(); jQuery( "#cron_dropbox_authorize" ).button(); jQuery( "#cron_amazon_ssl" ).button(); jQuery( "#cron_ftp_delb" ).button(); jQuery( "#checkmysqldump" ).button(); }); </script> <?php $tabs = new mosTabs(1); ?> <ul> <li><a href="#tabs-1"><?php echo LM_TAB_GENERAL; ?> </a></li> <li><a href="#tabs-2"><?php echo LM_TAB_MYSQL; ?> </a></li> <!--<li><a href="#tabs-3"><?php echo LM_TAB_AUTH; ?> </a></li>--> <li><a href="#tabs-4"><?php echo LM_TAB_SYSTEM; ?> </a></li> <li><a href="#tabs-5"><?php echo LM_TAB_CRON; ?> </a></li> <li><a href="#tabs-6"><?php echo LM_TAB_INFO; ?> </a></li> </ul> <table class='adminform'> <!--<tr><th colspan='2'> <?php #echo LM_CONFIG_EDIT ?> <?php #echo $config_file ?> </th></tr>--> </table> <?php $tabs->startTab(LM_TAB_GENERAL, "1"); ?> <div id="configtabinside"> <div> <h3><a href="#"> <?php echo LM_CONFIG_BSETTINGS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td> <?php echo LM_CONFIG_UBPATH; ?> </td> <td> <input type=text size=100 name='backup_path' value='<?php echo $_CONFIG[backup_path]; ?> '> <br /><?php echo LM_CONFIG_UBPATH_SUB; ?> </td> </tr> <tr> <td width='250'> <?php echo LM_CONFIG_BPATH; ?> </td> <td> <input type=text size=100 name='clonerPath' value='<?php echo $_CONFIG[clonerPath]; ?> '> <br /><?php echo LM_CONFIG_BPATH_SUB; ?> </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CONFIG_BSETTINGS_OPTIONS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_MANUAL_BACKUP; ?> </td> <td> <div id="radiog1"> <label for="radiog11"><?php echo LM_YES; ?> </label> <input id="radiog11" type=radio size=50 value=1 name='backup_refresh' <?php if ($_CONFIG[backup_refresh] == 1) { echo 'checked'; } ?> > <label for="radiog12"><?php echo LM_NO; ?> </label> <input id="radiog12" type=radio size=50 value=0 name='backup_refresh' <?php if ($_CONFIG[backup_refresh] == 0) { echo 'checked'; } ?> > <br><small><?php echo LM_CONFIG_MANUAL_BACKUP_SUB; ?> </small> </div> </td> </tr> <tr> <td> <?php echo LM_CRON_DB_BACKUP; ?> </td> <td> <div id="radiog3"> <label for="radiog31">Yes</label> <input id="radiog31" type=radio size=50 value=1 name='enable_db_backup' <?php if ($_CONFIG[enable_db_backup] == 1 or $_CONFIG['disable_mysql']) { echo 'checked'; } ?> > <label for="radiog32">No</label> <input id="radiog32" type=radio size=50 value=0 name='enable_db_backup' <?php if ($_CONFIG[enable_db_backup] == 0 and !$_CONFIG['disable_mysql']) { echo 'checked'; } ?> > <br /><?php echo LM_CRON_DB_BACKUP_SUB; ?> </div> </td> </tr> <tr> <td> <?php echo LM_CONFIG_SYSTEM_MBACKUP; ?> </td> <td> <div id="radiog4"> <label for="radiog41">Yes</label> <input id="radiog41" type=radio size=50 value=1 name='add_backups_dir' <?php if ($_CONFIG[add_backups_dir] == 1) { echo 'checked'; } ?> > <label for="radiog42">No</label> <input id="radiog42" type=radio size=50 value=0 name='add_backups_dir' <?php if ($_CONFIG[add_backups_dir] == 0) { echo 'checked'; } ?> > <br /><?php echo LM_CONFIG_SYSTEM_MBACKUP_SUB; ?> </td> </div> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CONFIG_BSETTINGS_SERVER; ?> </a></h3> <div><p> <table class='adminform'> <tr><td width='250'> <?php echo LM_CONFIG_MEM; ?> </td> <td align='left'> <table style="width:auto; margin-bottom: 10px;" cellpadding='0' cellspacing='2' border='0'> <tr bgcolor='#efefef'><td style="width:70px;"> <label for="checktar"><?php echo LM_ACTIVE; ?> </label> <input type=checkbox id="checktar" value=1 name='mem' <?php if ($_CONFIG[mem] == 1) { echo 'checked'; } ?> > </td><td align='left'> <table width='100%' cellpadding='0' cellspacing='0'> <tr><td> <?php echo LM_TAR_PATH; ?> <br /><input size='50' type=text name=tarpath value='<?php echo $_CONFIG[tarpath]; ?> '><br /> <?php echo LM_TAR_PATH_SUB; ?> </td></tr> </table> </td></tr> <tr bgcolor='#dedede'><td> <label for="checkmysqldump"><?php echo LM_ACTIVE; ?> </label> <input id="checkmysqldump" type=checkbox value=1 name='sql_mem' <?php if ($_CONFIG[sql_mem] == 1) { echo 'checked'; } ?> > </td><td align='left'> <?php echo LM_MYSQLDUMP_PATH; ?> <br /><input type=text size='50' name='sqldump' value='<?php echo $_CONFIG[sqldump]; ?> '> </td></tr> </table> <?php echo LM_CONFIG_MEM_SUB; ?> </td> </tr> </table> </p></div> </div> <!--<div> <h3><a href="#">Public Key Management</a></h3> <div><p> <table class='adminForm'> <tr><td width="250"> Public Key </td> <td> <input type-text size=50 name='license_code' value="<?php echo $_CONFIG[license_code]; ?> "/> <br />Use this code in the MultiSite XCloner Manager <a target='_blank' href='http://www.xcloner.com/'>XCloner.com Members area</a> <br />Leave it empty to disable it </td> </tr> </table> </p></div> </div>--> </div> <?php $tabs->endTab(); $tabs->startTab(LM_TAB_MYSQL, "2"); ?> <div id="configtabinside"> <div> <h3><a href="#"><?php echo LM_CONFIG_MYSQL; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_MYSQLH; ?> </td> <td> <input type=text size=50 name='mysql_host' value='<?php echo $_CONFIG[mysql_host]; ?> '> <br /><?php echo LM_CONFIG_MYSQLH_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_MYSQLU; ?> </td> <td> <input type=text size=50 name='mysql_user' value='<?php echo $_CONFIG[mysql_user]; ?> '> <br /><?php echo LM_CONFIG_MYSQLU_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_MYSQLP; ?> </td> <td> <input type=password size=50 name='mysql_pass' value='<?php echo $_CONFIG[mysql_pass]; ?> '> <br /><?php echo LM_CONFIG_MYSQLP_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_MYSQLD; ?> </td> <td> <input type=text size=50 name='mysql_database' value='<?php echo $_CONFIG[mysql_database]; ?> '> <br /><?php echo LM_CONFIG_MYSQLD_SUB; ?> </td> </tr> <tr> <td width='200'> <?php echo LM_CONFIG_SYSTEM_MDATABASES; ?> </td> <td> <div id="radiom"> <label for="radiom1"><?php echo LM_YES; ?> </label> <input id="radiom1" type=radio name='system_mdatabases' value='0' <?php if (abs($_CONFIG[system_mdatabases]) == 0) { echo "checked"; } ?> > <label for="radiom2"><?php echo LM_NO; ?> </label> <input id="radiom2" type=radio name='system_mdatabases' value='1' <?php if (abs($_CONFIG[system_mdatabases]) == 1) { echo "checked"; } ?> > <br /> <?php echo LM_CONFIG_SYSTEM_MDATABASES_SUB; ?> </div> </td> </tr> </table> </p></div> </div> </div> <?php $tabs->endTab(); /*$tabs->startTab(LM_TAB_AUTH,"3"); ?> <div id="configtabinside"> <div> <h3><a href="#"><?php echo LM_CONFIG_AUTH?></a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_AUTH_USER?> </td> <td> <input type=text size=30 name='jcuser' value='<?php echo $_CONFIG[jcuser]?>'> <br /><?php echo LM_CONFIG_AUTH_USER_SUB?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_AUTH_PASS?> </td> <td> <input type=text size=30 name='jcpass' value=''> <?php if($_CONFIG['jcpass'] == md5('admin')) echo "<font color=red>please change the default password 'admin'</font>"?> <br /><?php echo LM_CONFIG_AUTH_PASS_SUB?> </td> </tr> </table> </p></div> </div> </div> <?php $tabs->endTab();*/ $tabs->startTab(LM_TAB_SYSTEM, "4"); ?> <div id="configtabinside"> <div> <h3><a href="#"><?php echo LM_CONFIG_DISPLAY; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_SYSTEM_LANG; ?> </td><td> <select name='select_lang'> <option value=''><?php echo LM_CONFIG_SYSTEM_LANG_DEFAULT; ?> </option> <?php foreach ($lang_array as $value) { if ($_CONFIG['select_lang'] == $value) { echo "<option value='{$value}' selected>{$value}</option>\n"; } else { echo "<option value='{$value}'>{$value}</option>\n"; } } ?> </select> <br> <br /><?php echo LM_CONFIG_SYSTEM_LANG_SUB; ?> </td></tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CONFIG_SYSTEM; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_SYSTEM_FTP; ?> </td> <td> <div id="radioftp"> <label for="radioftp1">Direct</label><input id="radioftp1" type=radio name='system_ftptransfer' value='0' <?php if (abs($_CONFIG[system_ftptransfer]) == 0) { echo "checked"; } ?> > <label for="radioftp2">Passive</label><input id="radioftp2" type=radio name='system_ftptransfer' value='1' <?php if (abs($_CONFIG[system_ftptransfer]) == 1) { echo "checked"; } ?> > <br> <br /><?php echo LM_CONFIG_SYSTEM_FTP_SUB; ?> </div> </td></tr> <tr><td> <?php echo LM_FTP_TRANSFER_MORE; ?> </td><td> <div id="radioftps"> <label for="radioftps1">Normal</label><input id="radioftps1" type=radio size=50 value=0 name='secure_ftp' <?php if ($_CONFIG[secure_ftp] == 0) { echo 'checked'; } ?> > <label for="radioftps2">Secure(SFTP)</label><input id="radioftps2" type=radio size=50 value=1 name='secure_ftp' <?php if ($_CONFIG[secure_ftp] == 1) { echo 'checked'; } ?> > </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CONFIG_MANUAL; ?> </a></h3> <div><p> <script> jQuery(function() { jQuery( "#slider" ).slider({ value:parseInt(<?php echo $_CONFIG[backup_refresh_number]; ?> ), min: 10, max: 1000, step: 10, slide: function( event, ui ) { jQuery( "#backup_refresh_number" ).val( ui.value ); } }); jQuery( "#backup_refresh_number" ).val( jQuery( "#slider" ).slider( "value" ) ); }); jQuery(function() { jQuery( "#sliderRPS" ).slider({ value:parseInt(<?php echo $_CONFIG[recordsPerSession]; ?> ), min: 100, max: 100000, step: 100, slide: function( event, ui ) { jQuery( "#recordsPerSession" ).val( ui.value ); } }); jQuery( "#recordsPerSession" ).val( jQuery( "#sliderRPS" ).slider( "value" ) ); }); jQuery(function() { jQuery( "#sliderEFZ" ).slider({ value:parseInt(<?php echo $_CONFIG[excludeFilesSize]; ?> ), min: -1, max: 10240, step: 1, slide: function( event, ui ) { jQuery( "#excludeFilesSize" ).val( ui.value ); } }); jQuery( "#excludeFilesSize" ).val( jQuery( "#sliderEFZ" ).slider( "value" ) ); }); jQuery(function() { jQuery( "#sliderSBS" ).slider({ value:parseInt(<?php echo $_CONFIG[splitBackupSize]; ?> ), min: -1, max: 10000, step: 1, slide: function( event, ui ) { jQuery( "#splitBackupSize" ).val( ui.value ); } }); jQuery( "#splitBackupSize" ).val( jQuery( "#sliderSBS" ).slider( "value" ) ); }); </script> <table class='adminform'> <tr><td width="250"> <?php echo LM_CONFIG_MANUAL_FILES; ?> </td><td> <div class="sliderContainer"> <div id="slider" style="width:500px;padding:5px 0 0 0;float:left"></div> <label for="backup_refresh_number"></label> <input id="backup_refresh_number" type=text size=10 name='backup_refresh_number' value=<?php echo $_CONFIG[backup_refresh_number]; ?> > </div> </td></tr> <tr><td width="250"> <?php echo LM_CONFIG_DB_RECORDS; ?> </td><td> <div class="sliderContainer"> <div id="sliderRPS" style="width:500px;padding:5px 0 0 0;float:left;"></div> <label for="recordsPerSession"></label> <input id="recordsPerSession" type=text size=10 name='recordsPerSession' value=<?php echo $_CONFIG[recordsPerSession]; ?> > </div> </td></tr> <tr><td width="250"> <?php echo LM_CONFIG_EXCLUDE_FILES_SIZE; ?> </td><td> <div class="sliderContainer"> <div id="sliderEFZ" style="width:500px;padding:5px 0 0 0;float:left"></div> <label for="excludeFilesSize"></label> <input id="excludeFilesSize" type=text size=10 name='excludeFilesSize' value=<?php echo $_CONFIG[excludeFilesSize]; ?> > MB </div> </td></tr> <tr><td width="250"> <?php echo LM_CONFIG_SPLIT_BACKUP_SIZE; ?> </td><td> <div class="sliderContainer"> <div id="sliderSBS" style="width:500px;padding:5px 0 0 0;float:left;"></div> <label for="splitBackupSize"></label> <input id="splitBackupSize" type=text size=10 name='splitBackupSize' value=<?php echo $_CONFIG[splitBackupSize]; ?> > MB </div> </td></tr> <tr><td> <?php echo LM_CONFIG_MANUAL_REFRESH; ?> </td><td> <input type=text size=20 name='refresh_time' value=<?php echo $_CONFIG[refresh_time]; ?> > miliseconds </td></tr> <tr> <td> <?php echo LM_CRON_COMPRESS; ?> </td> <td> <div id="radiog2"> <label for="radiog21"><?php echo LM_YES; ?> </label> <input id="radiog21" type=radio size=50 value=1 name='backup_compress' <?php if ($_CONFIG[backup_compress] == 1) { echo 'checked'; } ?> > <label for="radiog22"><?php echo LM_NO; ?> </label> <input id="radiog22" type=radio size=50 value=0 name='backup_compress' <?php if ($_CONFIG[backup_compress] == 0) { echo 'checked'; } ?> > <br /> <small>Note: this option might break your backup process if the Manual backup option is also enabled</small> </div> </td> </tr> <tr><td> <?php echo LM_REFRESH_MODE; ?> </td><td> <div id="radiorefresh"> <label for="radiorefresh1">Normal</label> <input id="radiorefresh1" type=radio size=50 value=0 name='refresh_mode' <?php if ($_CONFIG[refresh_mode] == 0) { echo 'checked'; } ?> > <label for="radiorefresh2">AJAX</label> <input id="radiorefresh2" type=radio size=50 value=1 name='refresh_mode' <?php if ($_CONFIG[refresh_mode] == 1) { echo 'checked'; } ?> > </div> </td></tr> <tr><td> <?php echo LM_DEBUG_MODE; ?> </td><td> <div id="radiodebug"> <label for="radiodebug1">No</label> <input id="radiodebug1" type=radio size=50 value=0 name='debug' <?php if ($_CONFIG[debug] == 0) { echo 'checked'; } ?> > <label for="radiodebug2">Yes</label> <input id="radiodebug2" type=radio size=50 value=1 name='debug' <?php if ($_CONFIG[debug] == 1) { echo 'checked'; } ?> > </td></tr> </table> </p></div> </div> </div> <?php $tabs->endTab(); $tabs->startTab(LM_TAB_CRON, "5"); ?> <div id="configtabinside"> <div> <h3><a href="#"> <?php echo LM_CRON_SETTINGS_M; ?> - all configs are saved in directory configs/ </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CRON_MCRON; ?> </td> <td> <input type=text size=30 value="<?php echo $_CONFIG[cron_save_as]; ?> " name='cron_save_as' >.php <br /> <?php echo LM_CRON_MCRON_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CRON_MCRON_AVAIL; ?> </td> <td> <?php if ($handle = opendir($_CONFIG['multiple_config_dir'])) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != ".." && $file != "" && strstr($file, '.php')) { $fcron = plugins_url('cloner.cron.php', __FILE__) . "?config={$file}"; echo "<b>{$fcron}</b>"; echo " - <a href='{$fcron}' target='_blank'>execute cron</a>"; echo " | <a href='plugins.php?page=xcloner_show&option=com_cloner&task=cron_delete&fconfig={$file}'>delete config</a>"; echo "\n<br />"; } } closedir($handle); } ?> </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CRON_SETTINGS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CRON_SEMAIL; ?> </td> <td> <input type=text size=30 value="<?php echo $_CONFIG[cron_logemail]; ?> " name='cron_logemail' > <br /> <?php echo LM_CRON_SEMAIL_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CRON_MODE; ?> </td> <td> <div id="radio"> <input id="radio1" type=radio size=50 value=0 name='cron_send' <?php if ($_CONFIG[cron_send] == 0) { echo 'checked'; } ?> > <label for="radio1"><?php echo LM_CONFIG_CRON_LOCAL; ?> </label> <input id="radio2" type=radio size=50 value=1 name='cron_send' <?php if ($_CONFIG[cron_send] == 1) { echo 'checked'; } ?> > <label for="radio2"><?php echo LM_CONFIG_CRON_REMOTE; ?> </label> <input id="radio3" type=radio size=50 value=2 name='cron_send' <?php if ($_CONFIG[cron_send] == 2) { echo 'checked'; } ?> > <label for="radio3"><?php echo LM_CONFIG_CRON_EMAIL; ?> </label> </div> <?php echo LM_CRON_MODE_INFO; ?> </td> </tr> <tr> <td> <?php echo LM_CRON_TYPE; ?> </td> <td> <div id="radiob"> <input id="radiob1" type=radio size=50 value=0 name='cron_btype' <?php if ($_CONFIG[cron_btype] == 0) { echo 'checked'; } ?> > <label for="radiob1"><?php echo LM_CONFIG_CRON_FULL; ?> </label> <input id="radiob2" type=radio size=50 value=1 name='cron_btype' <?php if ($_CONFIG[cron_btype] == 1) { echo 'checked'; } ?> > <label for="radiob2"><?php echo LM_CONFIG_CRON_FILES; ?> </label> <input id="radiob3" type=radio size=50 value=2 name='cron_btype' <?php if ($_CONFIG[cron_btype] == 2) { echo 'checked'; } ?> > <label for="radiob3"><?php echo LM_CONFIG_CRON_DATABASE; ?> </label> <?php echo LM_CRON_TYPE_INFO; ?> </div> </td> </tr> <tr> <td> <?php echo LM_CRON_BNAME; ?> </td> <td> <input type=text size=50 value="<?php echo $_CONFIG[cron_bname]; ?> " name='cron_bname' > <br /> <?php echo LM_CRON_BNAME_SUB; ?> </td> </tr> <!-- <tr> <td> <?php echo LM_CRON_IP; ?> </td> <td> <textarea type=text size=50 name='cron_ip' cols='30' rows='5'><?php echo $_CONFIG[cron_ip]; ?> </textarea> <br /> <?php echo LM_CRON_IP_SUB; ?> </td> </tr>--> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CRON_FTP_DETAILS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CRON_FTP_SERVER; ?> </td> <td> <input type=text size=50 name='cron_ftp_server' value='<?php echo $_CONFIG[cron_ftp_server]; ?> '> </td> </tr> <tr> <td> <?php echo LM_CRON_FTP_USER; ?> </td> <td> <input type=text size=50 name='cron_ftp_user' value='<?php echo $_CONFIG[cron_ftp_user]; ?> '> </td> </tr> <tr> <td> <?php echo LM_CRON_FTP_PASS; ?> </td> <td> <input type=password size=50 name='cron_ftp_pass' value='<?php echo $_CONFIG[cron_ftp_pass]; ?> '> </td> </tr> <tr> <td> <?php echo LM_CRON_FTP_PATH; ?> </td> <td> <input type=text size=50 name='cron_ftp_path' value='<?php echo $_CONFIG[cron_ftp_path]; ?> '> </td> </tr> <tr> <td> <!--<?php echo LM_CRON_FTP_DELB; ?> --> </td> <td> <input id="cron_ftp_delb" type=checkbox name='cron_ftp_delb' <?php if ($_CONFIG[cron_ftp_delb] == 1) { echo "checked"; } ?> value='1'> <label for="cron_ftp_delb"><?php echo LM_CRON_FTP_DELB; ?> </label> </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_AMAZON_S3; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php #echo LM_AMAZON_S3_ACTIVATE ?> </td> <td> <label for="cron_amazon_active"><?php echo LM_AMAZON_S3_ACTIVATE; ?> </label> <input id="cron_amazon_active" type=checkbox name='cron_amazon_active' <?php if ($_CONFIG[cron_amazon_active] == 1) { echo "checked"; } ?> value='1'> <label for="cron_amazon_ssl"><?php echo LM_AMAZON_S3_SSL; ?> </label> <input id="cron_amazon_ssl" type=checkbox name='cron_amazon_ssl' <?php if ($_CONFIG[cron_amazon_ssl] == 1) { echo "checked"; } ?> value='1'> </td> </tr> <tr> <td> <?php echo LM_AMAZON_S3_AWSACCESSKEY; ?> </td> <td> <input type=text size=50 name='cron_amazon_awsAccessKey' value="<?php echo $_CONFIG['cron_amazon_awsAccessKey']; ?> "> </td> </tr> <tr> <td> <?php echo LM_AMAZON_S3_AWSSECRETKEY; ?> </td> <td> <input type=text size=50 name='cron_amazon_awsSecretKey' value="<?php echo $_CONFIG['cron_amazon_awsSecretKey']; ?> "> </td> </tr> <tr> <td width='200'> <?php echo LM_AMAZON_S3_BUCKET; ?> </td> <td> <input type=text size=50 name='cron_amazon_bucket' value="<?php echo $_CONFIG['cron_amazon_bucket']; ?> "> </td> </tr> <tr> <td> <?php echo LM_AMAZON_S3_DIRNAME; ?> </td> <td> <input type=text size=50 name='cron_amazon_dirname' value="<?php echo $_CONFIG['cron_amazon_dirname']; ?> "> </td> </tr> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_DROPBOX; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php #echo LM_AMAZON_S3_ACTIVATE ?> </td> <td> <label for="cron_dropbox_active"><?php echo LM_DROPBOX_ACTIVATE; ?> </label> <input id="cron_dropbox_active" type=checkbox name='cron_dropbox_active' <?php if ($_CONFIG['cron_dropbox_active'] == 1) { echo "checked"; } ?> value='1'> <?php $access_token = load_token("access"); if (empty($access_token) and $_CONFIG["cron_dropbox_active"]) { ?> <a target="_blank" href="?page=xcloner_show&task=dropbox_authorize"><?php echo LM_DROPBOX_AUTHORIZE; ?> </a> <?php } ?> </td> </tr> <tr> <td> <?php echo LM_DROPBOX_AWSACCESSKEY; ?> </td> <td> <input type=text size=50 name='cron_dropbox_Key' value="<?php echo $_CONFIG['cron_dropbox_Key']; ?> "> </td> </tr> <tr> <td> <?php echo LM_DROPBOX_AWSSECRETKEY; ?> </td> <td> <input type=text size=50 name='cron_dropbox_Secret' value="<?php echo $_CONFIG['cron_dropbox_Secret']; ?> "> </td> </tr> <tr> <td> <?php echo LM_DROPBOX_DIRNAME; ?> </td> <td> <input type=text size=50 name='cron_dropbox_dirname' value="<?php echo $_CONFIG['cron_dropbox_dirname']; ?> "> </td> </tr> </tr> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CRON_EMAIL_DETAILS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width="250"> <?php echo LM_CRON_EMAIL_ACCOUNT; ?> </td> <td> <input type=text size=50 name='cron_email_address' value='<?php echo $_CONFIG[cron_email_address]; ?> '> </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CRON_MYSQL_DETAILS; ?> </a></h3> <div><p> <table class='adminform'> <tr bgcolor='#ffffff'> <td width='250'> <?php #echo LM_CRON_MYSQL_DROP ?> </td> <td> <label for="cron_sql_drop"><?php echo LM_CRON_MYSQL_DROP; ?> </label> <input id="cron_sql_drop" type=checkbox name='cron_sql_drop' value='1' <?php if ($_CONFIG[cron_sql_drop]) { echo "checked"; } ?> > </td> </tr> <?php if (abs($_CONFIG['system_mdatabases']) == 0 && $_CONFIG['enable_db_backup'] == 1) { ?> <tr><td valign='top'> <?php echo LM_DATABASE_INCLUDE_DATABASES; ?> </td><td> <select name='databases_incl[]' MULTIPLE SIZE=5> <?php $curent_dbs = explode(",", $_CONFIG['databases_incl_list']); $query = @$_CONFIG['mysqli']->query("SHOW databases"); if ($query) { while ($row = @$query->fetch_array()) { $table = $row[0]; if ($table != $_CONFIG['mysql_database']) { if (in_array($table, $curent_dbs)) { echo "<option value='" . $table . "' selected>{$table}</option>"; } else { echo "<option value='" . $table . "'>{$table}</option>"; } } } } ?> </select><br /> <?php echo LM_DATABASE_INCLUDE_DATABASES_SUB; ?> </td></tr> <?php } ?> </table> </p></div> </div> <div> <h3><a href="#"> <?php echo LM_CRON_DELETE_FILES; ?> </a></h3> <div><p> <script> jQuery(function() { jQuery( "#slider2" ).slider({ value:parseInt(<?php echo (int) $_CONFIG[cron_file_delete]; ?> ), min: 0, max: 100, step: 1, slide: function( event, ui ) { jQuery( "#cron_file_delete" ).val( ui.value ); } }); jQuery( "#cron_file_delete" ).val( jQuery( "#slider2" ).slider( "value" ) ); }); </script> <table class='adminform'> <tr> <td width='250'> <?php #echo LM_CRON_DELETE_FILES_SUB_ACTIVE ?> </td> <td> <label for="cron_file_delete_act"><?php echo LM_CRON_DELETE_FILES_SUB_ACTIVE; ?> </label> <input id="cron_file_delete_act" type=checkbox name='cron_file_delete_act' <?php if ($_CONFIG['cron_file_delete_act'] == 1) { echo 'checked'; } ?> value='1'> </td> </tr> <tr> <td> <?php echo LM_CRON_DELETE_FILES_SUB; ?> </td> <td> <div id="slider2" style="width:300px;padding-top:5px;"></div> <br /><label for="cron_file_delete"></label> <input id="cron_file_delete" size=5 name='cron_file_delete' value='<?php echo $_CONFIG[cron_file_delete]; ?> '> days: </td> </tr> </table> <table class='adminform'> <tr> <th colspan='2'> <?php echo LM_CRON_EXCLUDE; ?> </th> </tr> </tr> <tr> <td width='250'> <?php echo LM_CRON_EXCLUDE_DIR; ?> </td> <td> <textarea cols=50 rows=5 name='cron_exclude'><?php echo $_CONFIG[cron_exclude]; ?> </textarea> </td> </tr> </table> </p></div> </div> </div> <?php $tabs->endTab(); $tabs->startTab(LM_TAB_INFO, "6"); ?> <div id="configtabinside"> <div> <h3><a href="#"><?php echo LM_CONFIG_INFO_PHP; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_INFO_T_VERSION; ?> </td> <td> <b><?php $version = phpversion(); $ver = str_replace(".", "", $version); $val = version_compare(PHP_VERSION, '5.2.3') < 0 ? $version : "Off"; echo HTML_cloner::get_color($version, $val); ?> </b> <br /> <?php echo LM_CONFIG_INFO_VERSION; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_SAFEMODE; ?> </td> <td> <b><?php $val = ini_get('safe_mode') != "" ? ini_get('safe_mode') : "Off"; echo HTML_cloner::get_color($val, 'On'); ?> </b> <br /> <?php echo LM_CONFIG_INFO_SAFEMODE; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_MTIME; ?> </td> <td> <b><?php echo ini_get('max_execution_time') != "" ? ini_get('max_execution_time') : "no value"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_TIME; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_MEML; ?> </td> <td> <b><?php echo ini_get('memory_limit') != "" ? ini_get('memory_limit') : "no value"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_MEMORY; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_BDIR; ?> </td> <td> <b><?php $val = ini_get('open_basedir') != "" ? ini_get('open_basedir') : "no value"; echo HTML_cloner::get_color($val, '/'); ?> </b> <br /> <?php echo LM_CONFIG_INFO_BASEDIR; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_EXEC; ?> </td> <td> <b><?php $out = ""; if (function_exists("exec")) { $out = @exec("ls -al"); } $val = $out != "" ? "ENABLED" : "<font color='red'>DISABLED</font>"; echo HTML_cloner::get_color($val, 'DISABLED'); ?> </b> <br /> <?php echo LM_CONFIG_INFO_EXEC; ?> </td> </tr> </table> </p></div> </div> <div> <h3><a href="#"><?php echo LM_CONFIG_INFO_PATHS; ?> </a></h3> <div><p> <table class='adminform'> <tr> <td width='250'> <?php echo LM_CONFIG_INFO_ROOT_BPATH_TMP; ?> </td> <td> <b><?php $tmp_dir = realpath($_CONFIG['backup_path'] . "/administrator/backups"); echo @is_writeable($tmp_dir) ? $tmp_dir . " is <font color=green>writeable</font>" : $tmp_dir . " <font color=red>incorrect or unreadable</font>"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_ROOT_PATH_TMP_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_ROOT_BPATH; ?> </td> <td> <b><?php echo @is_readable($_CONFIG['backup_path']) ? $_CONFIG['backup_path'] . " is <font color=green>readable</font>" : $_CONFIG['backup_path'] . " <font color=red>incorrect or unreadable</font>"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_ROOT_PATH_SUB; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_BPATH; ?> </td> <td> <b><?php echo @is_writeable($_CONFIG['clonerPath']) ? $_CONFIG['clonerPath'] . " is <font color=green>writeable</font>" : $_CONFIG['clonerPath'] . " <font color=red>unwriteable</font>"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_BPATH; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_TAR; ?> </td> <td> <b><?php if (function_exists('exec')) { $info_tar_path = explode(" ", @exec("whereis tar")); } echo $info_tar_path['1'] != "" ? $info_tar_path['1'] : "unable to determine"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_TAR; ?> </td> </tr> <tr> <td> <?php echo LM_CONFIG_INFO_T_MSQL; ?> </td> <td> <b><?php if (function_exists('exec')) { $info_msql_path = explode(" ", @exec("whereis mysqldump")); } echo $info_msql_path['1'] != "" ? $info_msql_path['1'] : "unable to determine"; ?> </b> <br /> <?php echo LM_CONFIG_INFO_MSQL; ?> </td> </tr> </table> </p></div> </div></div> <?php $tabs->endTab(); $tabs->endPane(); ?> <input type="hidden" name="option" value="com_cloner" /> <input type="hidden" name="task" value="config" /> <input type="hidden" name='action' value='save'> <?php wp_nonce_field('save', 'csrf'); ?> </form> <?php }
function authorize_dropbox() { global $_CONFIG; include_once "classes/DropboxClient.php"; $access_token = load_token("access"); if ($_CONFIG["cron_dropbox_active"]) { $dropbox = new DropboxClient(array('app_key' => $_CONFIG['cron_dropbox_Key'], 'app_secret' => $_CONFIG['cron_dropbox_Secret'], 'app_full_access' => false), 'en'); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); } if ($dropbox->IsAuthorized()) { echo "<center><h2>Dropbox Connection Authorized!</h2></center>"; return; } } else { return; } if ($_CONFIG["cron_dropbox_active"] and !empty($_GET['auth_callback'])) { // then load our previosly created request token $request_token = load_token($_GET['oauth_token']); if (empty($request_token)) { die('Request token not found!'); } // get & store access token, the request token is not needed anymore $access_token = $dropbox->GetAccessToken($request_token); store_token($access_token, "access"); delete_token($_GET['oauth_token']); echo "<center><h2>Dropbox Connection Authorized!</h2></center>"; return; } if (empty($access_token) and $_CONFIG["cron_dropbox_active"]) { //$dropbox->SetAccessToken($access_token); //print_r($access_token); $return_url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . "&auth_callback=1"; $auth_url = $dropbox->BuildAuthorizeUrl($return_url); $request_token = $dropbox->GetRequestToken(); store_token($request_token, $request_token['t']); ?> <script> window.location="<?php echo $auth_url; ?> " </script> <?php exit; } }
exit; } } else { logxx("AMAZON S3: Unable to create bucket " . $_CONFIG['cron_amazon_bucket'] . " (it may already exist and/or be owned by someone else)!"); exit; } } ###### END ####### STARING DROPBOX MODE if ($_CONFIG['cron_dropbox_active']) { include_once "classes/DropboxClient.php"; $dropbox = new DropboxClient(array('app_key' => $_CONFIG['cron_dropbox_Key'], 'app_secret' => $_CONFIG['cron_dropbox_Secret'], 'app_full_access' => false), 'en'); logxx(); logxx("DROPBOX: Starting communication with the DropBox server..."); // first try to load existing access token $access_token = load_token("access"); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); } else { logxx("Please authorize dropbox app from inside the XCloner Settings panel-> Cron Tab, by clicking the 'Click to authorize application' link."); die; } $return = $dropbox->UploadFile($clonerPath . "/" . $file, $_CONFIG['cron_dropbox_dirname'] . "/" . $file); if ($return->error) { logxx($return->error); } else { logxx("File copied to " . $return->path); } #print_r($return); } ###### END
function handle_dropbox_auth($dropbox, $option) { // first try to load existing access token $access_token = load_token($option['access_token']); if (!empty($access_token)) { $dropbox->SetAccessToken($access_token); } elseif (!empty($_GET['auth_callback'])) { // then load our previosly created request token $request_token = load_token($_GET['oauth_token']); if (empty($request_token)) { die('Request token not found!'); } // get & store access token, the request token is not needed anymore $access_token = $dropbox->GetAccessToken($request_token); store_token($access_token, $option['access_token']); delete_token($_GET['oauth_token']); } // checks if access token is required if (!$dropbox->IsAuthorized()) { ?> <img src="logo.png" class="dropbox"> <?php // redirect user to dropbox auth page $return_url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?auth_callback=1&check=10&config=30"; $auth_url = $dropbox->BuildAuthorizeUrl($return_url); $request_token = $dropbox->GetRequestToken(); store_token($request_token, $request_token['t']); die("Authentication required. <a onclick=window.open('{$auth_url}','popUpWindow','height=400,width=600,left=10,top=10,,scrollbars=yes,menubar=no') return false;>Click here.</a>"); } }