backup.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
  2. /**
  3. *
  4. * Field: backup
  5. *
  6. * @since 1.0.0
  7. * @version 1.0.0
  8. *
  9. */
  10. if ( ! class_exists( 'CSF_Field_backup' ) ) {
  11. class CSF_Field_backup extends CSF_Fields {
  12. public function __construct( $field, $value = '', $unique = '', $where = '', $parent = '' ) {
  13. parent::__construct( $field, $value, $unique, $where, $parent );
  14. }
  15. public function render() {
  16. $unique = $this->unique;
  17. $nonce = wp_create_nonce( 'csf_backup_nonce' );
  18. $export = add_query_arg( array( 'action' => 'csf-export', 'unique' => $unique, 'nonce' => $nonce ), admin_url( 'admin-ajax.php' ) );
  19. echo $this->field_before();
  20. echo '<textarea name="csf_import_data" class="csf-import-data"></textarea>';
  21. echo '<button type="submit" class="button button-primary csf-confirm csf-import" data-unique="'. esc_attr( $unique ) .'" data-nonce="'. esc_attr( $nonce ) .'">'. esc_html__( 'Import', 'sakurairo_csf' ) .'</button>';
  22. echo '<hr />';
  23. echo '<textarea readonly="readonly" class="csf-export-data">'. esc_attr( json_encode( get_option( $unique ) ) ) .'</textarea>';
  24. echo '<a href="'. esc_url( $export ) .'" class="button button-primary csf-export" target="_blank">'. esc_html__( 'Export & Download', 'sakurairo_csf' ) .'</a>';
  25. echo '<hr />';
  26. echo '<button type="submit" name="csf_transient[reset]" value="reset" class="button csf-warning-primary csf-confirm csf-reset" data-unique="'. esc_attr( $unique ) .'" data-nonce="'. esc_attr( $nonce ) .'">'. esc_html__( 'Reset', 'sakurairo_csf' ) .'</button>';
  27. echo $this->field_after();
  28. }
  29. }
  30. }