Changeset 3190878
- Timestamp:
- 11/18/2024 03:34:53 AM (17 months ago)
- Location:
- pdf-for-wpforms/trunk
- Files:
-
- 6 edited
-
backend/settings.php (modified) (3 diffs)
-
backend/shortcode.php (modified) (2 diffs)
-
frontend/index.php (modified) (1 diff)
-
pdf-for-wpforms.php (modified) (2 diffs)
-
readme.txt (modified) (2 diffs)
-
wpforms/index.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
pdf-for-wpforms/trunk/backend/settings.php
r3189942 r3190878 8 8 add_action( 'yeepdf_custom_sizes', array($this,"add_sizes")); 9 9 add_action( 'plugins_loaded', array( $this, 'plugins_loaded' ) ); 10 } 11 public static function generateRandomString($length = 15) { 12 $characters = '0123456789abcdefghijklmnopqrstuvwxyz_'; 13 $charactersLength = strlen($characters); 14 $randomString = ''; 15 for ($i = 0; $i < $length; $i++) { 16 $randomString .= $characters[random_int(0, $charactersLength - 1)]; 17 } 18 return $randomString; 19 } 20 public static function maybe_get_random_dir() { 21 $uploads_folder = apply_filters("yeepdf_folder_download","pdfs/downloads"); 22 return $uploads_folder; 23 } 24 public static function maybe_add_random_dir() { 25 $upload_dir = wp_upload_dir(); 26 $uploads_folder = self::maybe_get_random_dir(); 27 $dir = $upload_dir['basedir'] . '/'.$uploads_folder.'/'; 28 $url = $upload_dir['baseurl'] . '/'.$uploads_folder.'/'; 29 do { 30 $rand_max = mt_getrandmax(); 31 $rand = self::generateRandomString(); 32 $dir_new = path_join( $dir, $rand ); 33 $url_new = $url.$rand; 34 } while ( file_exists( $dir_new ) ); 35 if ( wp_mkdir_p( $dir_new ) ) { 36 return array("path"=>$dir_new."/","url"=>$url_new."/"); 37 } 38 return array("path"=>$dir,"url"=>$url);; 39 } 40 public static function destroy_all_files($dirPath=null) { 41 if(!$dirPath) { 42 $upload_dir = wp_upload_dir(); 43 $uploads_folder = self::maybe_get_random_dir(); 44 $dirPath = $upload_dir['basedir'] . '/'.$uploads_folder.'/'; 45 if (! is_dir($dirPath)) { 46 throw new InvalidArgumentException("$dirPath must be a directory"); 47 } 48 if (substr($dirPath, strlen($dirPath) - 1, 1) != '/') { 49 $dirPath .= '/'; 50 } 51 } 52 $files = glob($dirPath . '*', GLOB_MARK); 53 foreach ($files as $file) { 54 if (is_dir($file)) { 55 self::destroy_all_files($file); 56 } else { 57 unlink($file); 58 } 59 } 60 rmdir($dirPath); 10 61 } 11 62 public function plugins_loaded() { … … 149 200 $part = $path_main.$files['name']; 150 201 if ( ! file_exists( $path_main ) ) { 151 wp_mkdir_p( $path_main );152 }202 wp_mkdir_p( $path_main ); 203 } 153 204 if(file_exists($part)){ 154 205 unlink($part); … … 340 391 <?php $save = get_option("pdf_creator_save_pdf","") ?> 341 392 <input <?php checked($save,"yes") ?> type="checkbox" name="pdf_creator_save_pdf" value="yes"> 342 <?php esc_html_e("It will automatically delete pdf when sending attachment to email","pdf-for-wpforms") ?>393 <?php esc_html_e("It will automatically delete the PDF after attaching the file to the email.","pdf-for-wpforms") ?> 343 394 </td> 344 395 </tr> -
pdf-for-wpforms/trunk/backend/shortcode.php
r3154620 r3190878 31 31 "yeepdf_current_time" => "Current Time", 32 32 "yeepdf_images" => "Images(link,link,..)", 33 "yeepdf_random_number" => "Random Number", 33 34 ), 34 35 "User" => array( … … 90 91 return wp_date(get_option('date_format')); 91 92 break; 93 case "yeepdf_random_number": 94 return rand(10000,9999999); 95 break; 92 96 case "yeepdf_current_time": 93 97 return date(get_option('time_format')); -
pdf-for-wpforms/trunk/frontend/index.php
r3189942 r3190878 278 278 break; 279 279 case "upload": 280 $path_main = $upload_dir['basedir'] . '/pdfs/'; 281 if ( ! file_exists( $path_main ) ) { 282 wp_mkdir_p( $path_main ); 280 $upload_dir = Yeepdf_Settings_Main::maybe_add_random_dir(); 281 $path_name = $upload_dir["path"].$data_attrs["name"].".pdf"; 282 $url_name = $upload_dir["url"].$data_attrs["name"].".pdf"; 283 if(file_exists($path_name)){ 284 unlink($path_name); 283 285 } 284 $file_name = $path_main.$data_attrs["name"].".pdf";285 if(file_exists($file_name)){286 unlink($file_name);287 }288 286 $mpdf->WriteHTML($html); 289 $output = $mpdf->Output($ file_name,"F");290 return $file_name;287 $output = $mpdf->Output($path_name,"F"); 288 return array("path"=>$path_name,"url"=>$url_name); 291 289 break; 292 290 case "html": -
pdf-for-wpforms/trunk/pdf-for-wpforms.php
r3189942 r3190878 4 4 * Description: WPForms PDF Customizer is a helpful tool that helps you build and customize the PDF Templates for WPforms. 5 5 * Plugin URI: https://add-ons.org/plugin/wpforms-pdf-generator-attachment/ 6 * Version: 4. 2.06 * Version: 4.4.0 7 7 * Requires PHP: 5.6 8 8 * Author: add-ons.org … … 34 34 include_once YEEPDF_CREATOR_BUILDER_PATH."libs/phpqrcode.php"; 35 35 include_once YEEPDF_CREATOR_BUILDER_PATH."frontend/index.php"; 36 register_activation_hook( __FILE__, array($this,'register_activation_hook') );37 add_action( 'yeepdf_remove_all_file', array($this,"yeepdf_remove_all_file") );38 }39 function register_activation_hook(){40 if (! wp_next_scheduled ( 'yeepdf_remove_all_file' )) {41 wp_schedule_event( time(), 'daily', 'yeepdf_remove_all_file' );42 }43 }44 function yeepdf_remove_all_file(){45 $check_settings = get_option("pdf_creator_save_pdf");46 if($check_settings == "yes"){47 $upload_dir = wp_upload_dir();48 $path_main = $upload_dir['basedir'] . '/pdfs/*';49 $files = glob($path_main);50 foreach($files as $file){ // iterate files51 if(is_file($file)) {52 unlink($file); // delete file53 }54 }55 }56 36 } 57 37 } -
pdf-for-wpforms/trunk/readme.txt
r3189942 r3190878 4 4 Requires at least: 2.0 5 5 Tested up to: 6.7 6 Stable tag: 4. 2.06 Stable tag: 4.4.0 7 7 Requires PHP: 5.6 8 8 License: GPLv2 or later … … 85 85 86 86 == Changelog == 87 = 4.4.0 = 88 - Fixed: Do not save PDFs on the server 89 - Added: Secure the folder for downloading PDFs 90 91 = 4.3.0 = 92 - Added: Random number shortcode 93 87 94 = 4.2.0 = 88 95 - Fixed: Default Font -
pdf-for-wpforms/trunk/wpforms/index.php
r3173766 r3190878 280 280 $password = wpforms_process_smart_tags($password,$form_data,$fields,$entry_id); 281 281 } 282 if( isset($pdf["yeepdf_name_number"]) && $pdf["yeepdf_name_number"] == 1 ){ 283 $name = rand(10000,9999999)."-".sanitize_file_name($name); 284 }else{ 285 $name = sanitize_file_name($name); 286 } 282 $name = sanitize_file_name($name); 287 283 $data_send_settings = array( 288 284 "id_template"=> $template_id, … … 306 302 ); 307 303 $data_send_settings_download = apply_filters("pdf_before_render_datas",$data_send_settings_download); 308 $path =Yeepdf_Create_PDF::pdf_creator_preview($data_send_settings_download); 309 $path_main = $upload_dir['baseurl'] . '/pdfs/'.$name.".pdf"; 310 $attachments[] = $path_main; 304 $folder_uploads =Yeepdf_Create_PDF::pdf_creator_preview($data_send_settings_download); 305 $attachments[] = $folder_uploads["url"]; 311 306 foreach($list_notifitions as $notifi){ 312 $attachments_notifications[$notifi][] = $ path;307 $attachments_notifications[$notifi][] = $folder_uploads["path"]; 313 308 } 314 309 } … … 497 492 'subsection' => $id, 498 493 'class' => 'email-msg', 499 'after' => '<p class="note">{name} -id.pdf</p>',494 'after' => '<p class="note">{name}.pdf</p>', 500 495 ] 501 496 ); 502 wpforms_panel_field( 503 'checkbox', 504 'pdf_creator', 505 'yeepdf_name_number', 506 $settings->form_data, 507 esc_html__( 'Show name key number', "pdf-for-wpforms" ), 508 [ 509 'rows' => 6, 510 'smarttags' => [ 511 'type' => 'all', 512 ], 513 'parent' => 'settings', 514 'subsection' => $id, 515 'class' => 'email-msg', 516 'after' => '<p class="note">name-{number}.pdf</p>', 517 ] 518 ); 497 519 498 if($pro){ 520 499 wpforms_panel_field(
Note: See TracChangeset
for help on using the changeset viewer.