Gravity PDF - Version 3.6.0

Version Description

  • Feature - Added support for Gravity Form's sub-field middle name (1.9Beta)
  • Feature - Patch mPDF with full :nth-child support on TD and TR table cells
  • Feature - Added $form_data[products_totals][subtotal] key (total price without shipping costs added)
  • Feature - Added formated money to all product fields in the $form_data array
  • Feature - Default templates: only show fields who's conditional logic is true. Perfect when used with default-show-html
  • Housekeeping - Move PDF_EXTENDED_TEMPLATES folder to the /wp-content/upload/ directory. Get more info about the move (see http://developer.gravitypdf.com/news/migrating-template-directory-means/)
  • Housekeeping - Refined when admin resources are loaded
  • Housekeeping - Fixed typo during initial initialisation
  • Housekeeping - Switched icons back to FontAwesome which is shipped by default with Gravity Forms
  • Housekeeping - Display full path to mPDF tmp directory when there are issues writing to it
  • Housekeeping - Modified font installation message.
  • Housekeeping - Update example-header-and-footer_06.php and example-advanced-headers_07.php to better reflect current mPDF features
  • Bug - Fixed issue pulling the correct configuration when multiple nodes were assigned to multiple forms
  • Bug - Fixed number field formatting issue which always rounded to two decimal places
  • Bug - Fixed JS namespace issue with WordPress Leads plugin
  • Bug - Fixed error initialising fonts / backing up PDF_EXTENDED_TEMPLATES directory when using the glob() function
  • Bug - Fix issue with PHP 5.0 and 5.1 array_replace_recursive function when used with an array inside the $gf_pdf_config array
  • Bug - Fixed fatal error when logged in user attempts to view PDF they don't have access to
  • Bug - Fixed issue in $form_data array where single-column list items where being returned as an array and not a HTML list.
  • Bug - Prevent unauthorised users auto-initialising the software or migrating the templates folder
  • Bug - Fixed up incorrect formatting issue when using custom font name
  • Bug - Fixed issue displaying Times New Roman in PDF templates
Download this release

Release Info

Developer Blue Liquid Designs
Plugin Icon 128x128 Gravity PDF
Version 3.6.0
Comparing to
See all releases

Code changes from version 3.5.11.1 to 3.6.0

Files changed (50) hide show
  1. README.md +0 -29
  2. README.txt +54 -30
  3. depreciated.php +24 -0
  4. helper/api.php +0 -277
  5. helper/data.php +25 -1
  6. helper/installation-update-manager.php +270 -132
  7. helper/notices.php +74 -33
  8. helper/pdf-common.php +79 -15
  9. helper/pdf-configuration-indexer.php +91 -31
  10. helper/pdf-entry-detail.php +67 -76
  11. helper/pdf-render.php +24 -20
  12. initialisation/configuration.php.example +4 -4
  13. initialisation/template.css +1 -1
  14. initialisation/templates/default-template-no-style.php +1 -1
  15. initialisation/templates/default-template-two-rows.php +1 -1
  16. initialisation/templates/default-template.php +1 -1
  17. initialisation/templates/example-advanced-headers_07.php +12 -23
  18. initialisation/templates/example-backgrounds-and-borders02.php +2 -2
  19. initialisation/templates/example-basic-html01.php +3 -3
  20. initialisation/templates/example-different-page-size_08.php +3 -3
  21. initialisation/templates/example-float-and-positioning05.php +2 -2
  22. initialisation/templates/example-header-and-footer_06.php +5 -5
  23. initialisation/templates/example-images03.php +2 -2
  24. initialisation/templates/example-tables04.php +2 -2
  25. initialisation/templates/example-template.php +8 -8
  26. initialisation/templates/example-watermark09.php +2 -2
  27. languages/pdfextended-en_GB.po +133 -116
  28. languages/pdfextended-fr_FR.mo +0 -0
  29. languages/pdfextended-fr_FR.po +290 -330
  30. mPDF/classes/cssmgr.php +66 -30
  31. mPDF/config.php +1 -1
  32. mPDF/config_fonts.php +16 -15
  33. mPDF/mpdf-extra-lite.php +6 -3
  34. mPDF/mpdf-lite.php +5 -3
  35. mPDF/mpdf.php +10 -3
  36. model/pdf.php +49 -24
  37. model/settings.php +30 -56
  38. pdf-settings.php +29 -22
  39. pdf.php +99 -94
  40. resources/css/admin-styles.css +15 -59
  41. resources/css/admin-styles.min.css +1 -1
  42. resources/images/gravityformspdfextended.jpg +0 -0
  43. resources/javascript/admin.js +15 -12
  44. resources/javascript/admin.min.js +1 -1
  45. view/templates/settings/changelog.php +42 -19
  46. view/templates/settings/initialisation-tab.php +3 -3
  47. view/templates/settings/initialisation.php +10 -10
  48. view/templates/settings/support-form.php +2 -2
  49. view/templates/settings/support-sidebar.php +3 -11
  50. view/templates/settings/system-status.php +18 -25
README.md DELETED
@@ -1,29 +0,0 @@
1
- Gravity Forms PDF Extended
2
- ==========================
3
-
4
- Gravity Forms PDF Extended is a Wordpress plugin that allows you to save/view/download a PDF from the front- and back-end, and automate PDF creation on form submission.
5
-
6
- Find out more at [http://gravityformspdfextended.com](http://gravityformspdfextended.com/).
7
-
8
-
9
- # Documentation
10
-
11
- All documentation can be found at [http://gravityformspdfextended.com](http://gravityformspdfextended.com/documentation/).
12
-
13
- # Branches
14
-
15
- ## master
16
-
17
- The master branch contains the latest stable release of the software. It's the same version [avaliable in the Wordpress repository](http://wordpress.org/plugins/gravity-forms-pdf-extended/).
18
-
19
- ## beta
20
-
21
- If we are currently running a beta edition of the software, this version will be avalible in the beta branch. This is a stable development version *but should not be used in a production environment*.
22
-
23
- ## development
24
-
25
- This is our work in progress, bleeding edge edition of the software. Consider this an alpha edition.
26
-
27
- # Pull Requests
28
-
29
- Pull requests are always welcome.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
README.txt CHANGED
@@ -1,18 +1,18 @@
1
  === Plugin Name ===
2
  Contributors: blueliquiddesigns
3
- Donate link: http://www.gravityformspdfextended.com
4
  Tags: gravity, forms, pdf, automation, attachment
5
  Requires at least: 3.5
6
- Tested up to: 4.0
7
- Stable tag: 3.5.11.1
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- Gravity Forms PDF Extended allows you to save/view/download a PDF from the front- and back-end, and automate PDF creation on form submission.
12
 
13
  == Description ==
14
 
15
- Gravity Forms PDF Extended is a powerful developer tool for creating PDF documents using form data captured from Gravity Forms. While the software is targeted at web developers, we've attempted to make it user friendly for hobbyists and DIY business owners. The basic setup can be done in minutes, and there is a huge array of options to configure the PDF as you see fit.
16
 
17
  **Gravity Form Features**
18
 
@@ -58,20 +58,20 @@ Along with the above, the PDF software includes powerful feature such as:
58
 
59
  **Documentation and Support**
60
 
61
- To view the Development Documentation head to [http://www.gravityformspdfextended.com/documentation/](http://www.gravityformspdfextended.com/documentation/). If you need support with the plugin please post a topic in our [support forums](http://gravityformspdfextended.com/support/gravity-forms-pdf-extended/).
62
 
63
  == Installation ==
64
 
65
  1. Upload this plugin to your website and activate it
66
  2. Head to Forms -> Settings -> PDF to initialise the plugin.
67
  3. Create a form in Gravity Forms and configure notifications
68
- 4. Get the Form ID and follow the steps below in [the configuration section](http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/)
69
- 5. Modify the PDF template file ([see the advanced templating section in the documentation](http://gravityformspdfextended.com/documentation-v3-x-x/templates/)) inside your active theme's PDF_EXTENDED_TEMPLATES/ folder.
70
 
71
 
72
  == Frequently Asked Questions ==
73
 
74
- All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravityformspdfextended.com/faq/category/developers/).
75
 
76
  == Screenshots ==
77
 
@@ -81,6 +81,30 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
81
 
82
  == Changelog ==
83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  = 3.5.11.1 =
85
  * Bug - Fix issue saving and sending blank PDFs due to security fix
86
 
@@ -89,7 +113,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
89
 
90
  = 3.5.10 =
91
  * Housekeeping - Include individual scoring for Gravity Form Survey Likert field in the $form_data['survey'] array
92
- * Bug - Fix fatal error when Gravity Forms isn't activated, but PDF Extended is.
93
 
94
  = 3.5.9 =
95
  * Bug - Rollback recent changes that introduced the GFAPI as introduces errors for older versions of Gravity Forms. Will reintroduce in next major release and increase the minimum Gravity Forms version.
@@ -139,7 +163,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
139
  * Feature - No longer need to reinitialise every time the software is updated.
140
  * Feature - Add auto-initialiser on initial installation for sites that have direct write access to their server files
141
  * Feature - Add auto-initialiser on initial installation across entire multisite network for sites who have direct write access to their server files.
142
- * Feature - Add auto-PDF_EXTENDED_TEMPLATE theme syncer for sites that have direct write access to their server files
143
  * Feature - Correctly added language support. The .PO file is located in the /language/ folder if anyone would like to do a translation.
144
 
145
  * Housekeeping - Restrict initialisation process to 64MB or greater to counter problems with users reporting a 'white screen' when running in a low-RAM environment.
@@ -171,21 +195,21 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
171
  * Bug - Fix up mPDF bugs - soft hyphens, watermarks over SVG images, inline CSS bug
172
 
173
  = 3.4.0 =
174
- * Feature - Added auto-print prompt ability when you add &print=1 to the PDF URL (see https://gravityformspdfextended.com/documentation-v3-x-x/display-pdf-in-browser/ for details)
175
  * Feature - Added ability to rotate absolute positioned text 180 degrees (previously only 90 and -90). Note: feature in beta
176
- * Feature - Backup all template files that are overridden when initialising to a folder inside PDF_EXTENDED_TEMPLATE
177
  * Feature - Added SSH initialisation support
178
  * Feature - Allow MERGETAGS to be used in all PDF templates, including default template (but only in the HTML field).
179
  * Feature - Updated mPDF to 3.7.1
180
- * Feature - Enable text/image watermark support. Added new example template example-watermark09.php showing off its usage (see http://gravityformspdfextended.com/documentation-v3-x-x/templates/watermarks/)
181
- * Feature - Added full survey, poll and quiz support to both the default template and $form_data (see http://gravityformspdfextended.com/documentation-v3-x-x/accessing-survey-poll-quiz-data/)
182
  * Feature - Shortcodes will now be processed in all templates, including default template (but only in the HTML field).
183
  * Feature - Added 'save' configuration option so PDFs are saved to the local disk when 'notifications' aren't enabled.
184
  * Feature - Added 'dpi' configuration option to modify the PDF image DPI. Default 96dpi. Use 300dpi for printing.
185
  * Feature - Added PDF/A1-b compliance option. Enable with 'pdfa1b' => true. See http://mpdf1.com/manual/index.php?tid=420&searchstring=pdf/a1-b for more details.
186
  * Feature - Added PDF/X1-a compliance option. Enable with 'pdfx1a' => true. See http://mpdf1.com/manual/index.php?tid=481&searchstring=pdf/x-1a for more details.
187
  * Feature - Added new constant option 'PDF_REPACK_FONT' which when enabled may improve function with some PostScript printers (disabled by default). Existing sites will need to add define('PDF_REPACK_FONT', true); to the bottom of their configuration.php file.
188
- * Feature - Added a sleuth of new hooks and filters for developers. See https://gravityformspdfextended.com/documentation-v3-x-x/filters-and-hooks/ for examples.
189
  * Feature - Added $form_data['form_description'] key to $form_data array
190
  * Feature - Update $form_data['products'] array key to field ID
191
  * Feature - Added survey Likert output function for custom templates (much like the product table function). It can be used with the following command 'echo GFPDFEntryDetails::get_likert($form, $lead, $field_id);' where $field_id is substituted for the form field ID.
@@ -197,7 +221,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
197
  * Housekeeping - Update settings page link to match new Gravity Forms URL structure
198
  * Housekeeping - Check if $lead['gfsurvey_score'] exists before assigning to $form_data array
199
  * Housekeeping - Removed table and font checksum debugging from mPDF when WP_DEBUG enabled as they produced inaccurate results.
200
- * Housekeeping - Fixed up mPDF logging location when WP_DEBUG enabled. Files now stored in wp-content/themes/Active_Theme_Folder/PDF_EXTENDED_TEMPLATE/output/ folder.
201
  * Housekeeping - Removed API logging locally when WP_DEBUG is enabled.
202
  * Housekeeping - Increase API timeout interval as some overseas users reported timeout issues
203
  * Housekeeping - Modified mPDF functions Image() and purify_utf8_text() to validate the input data so we don't have to do it every time through the template.
@@ -252,7 +276,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
252
  = 3.3.0 =
253
  * Feature - Overhauled the initialisation process so that the software better reviews the host for potential problems before initialisation. This should help debug issues and make users aware there could be a problem before they begin using the software.
254
  * Feature - Overhauled the settings page to make it easier to access features of the software
255
- * Feature - Added a Support tab to the settings page which allows users to securely (over HTTPS) submit a support ticket to the Gravity Form PDF Extended support desk
256
  * Feature - Changed select, multiselect and radio fields so that the default templates use the name rather than the value. $form_data now also includes the name and values for all these fields.
257
  * Feature - $form_data now includes all miscellaneous lead information in the $form_data['misc'] array.
258
  * Feature - $form_data now contains 24 and 12 hour time of entry submission.
@@ -262,7 +286,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
262
  * Bug - Fixed issue when Gravity Forms in No Conflict Mode
263
  * Bug - Font config.php's array keys now in lower case
264
  * Housekeeping - Moved all initialisation files to a folder called 'initialisation'.
265
- * Housekeeping - Renamed the configuration.php file in the plugin folder to configuration.php.example to alleviate confusion for developers who unwittingly modify the plugin configuration file instead of the file in their active theme's PDF_EXTENDED_TEMPLATE folder.
266
  * Housekeeping - Updated the plugin file system to a more MVC-style approach, with model and view folders.
267
  * Housekeeping - Removed ability to directly access default and example template files.
268
  * Housekeeping - Fixed PHP notices in default templates related to the default template-only configuration options
@@ -271,14 +295,14 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
271
 
272
  = 3.2.0 =
273
  * Feature - Can now view multiple PDFs assigned to a single form via the admin area. Note: You must provide a unique 'filename' parameter in configuration.php for multiple PDFs assigned to a single form.
274
- * Feature - You can exclude a field from the default templates using the class name 'exclude'. See our [FAQ topic](http://gravityformspdfextended.com/faq/can-exclude-field-showing-pdf/) for more details.
275
  * Bug - Fixed issue viewing own PDF entry when logged in as anything lower than editor.
276
  * Bug - Fixed data return bug in pdf-entry-details.php that was preventing all data returning correctly.
277
  * Bug - Fixed PHP Warning when using products with no options
278
  * Bug - Fixed issue with invalid characters being added to the PDF filename. Most notably the date mergetag.
279
  * Bug - Limit filename length to 150 characters which should work on the majority of web servers.
280
  * Bug - Fixed problem sending duplicate PDF when using mass resend notification feature
281
- * Depreciated - Removed GF_FORM_ID and GF_LEAD_ID constants which were used in v2.x.x of the software. Ensure you follow [v2.x.x upgrade guide](http://gravityformspdfextended.com/documentation-v3-x-x/v3-0-0-migration-guide/) to your templates before upgrading.
282
 
283
  = 3.1.4 =
284
  * Bug - Fixed issue with plugin breaking website's when the Gravity Forms plugin wasn't activated.
@@ -307,14 +331,14 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
307
  * Bug - Initialisation error message was being called but the success message was also showing.
308
 
309
  = 3.1.0 =
310
- * Feature - Added defaults to configuration.php which allows users to define the default PDF settings for all Gravity Forms. See the [installation and configuration documentation](http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/#default-configuration-options) for more details.
311
- * Feature - Added three new configuration options 'default-show-html', 'default-show-empty' and 'default-show-page-names' which allow different display options to the three default templates. See the [installation and configuration documentation](http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/#default-template-only) for more details.
312
- * Feature - Added filter hooks 'gfpdfe_pdf_name' and 'gfpdfe_template' which allows developers to further modify a PDF name and template file, respectively, outside of the configuration.php. This is useful if you have a special case naming convention based on user input. See [http://gravityformspdfextended.com/filters-and-hooks/](http://gravityformspdfextended.com/filters-and-hooks/) for more details about using these filters.
313
- * Feature - Custom font support. Any .ttf font file added to the PDF_EXTENDED_TEMPLATE/fonts/ folder will be automatically installed once the plugin has been initialised. Users also have the option to just initialise the fonts via the settings page. See the [font/language documentation ](http://gravityformspdfextended.com/documentation-v3-x-x/language-support/#installing-fonts) for details.
314
  * Compatability - Use Gravity Forms get_upload_root() and get_upload_url_root() instead of hard coding the signature upload directory in pdf-entry-detail.php
315
  * Compatability - Changed depreciated functions get_themes() and get_theme() to wp_get_theme() (added in Wordpress v3.4).
316
  * Compatability - The plugin now needs to be initialised on fresh installation and upgrade. This allows us to use the WP_Filesystem API for file manipulation.
317
- * Compatability - Automatic copying of PDF_EXTENDED_TEMPLATE folder on a theme change was removed in favour of a user prompt. This allows us to take advantage of the WP_Filesystem API.
318
  * Compatability - Added Wordpress compatibility checker (minimum now 3.4 or higher).
319
  * Bug - Removed ZipArchive in favour of Wordpress's WP_Filesystem API unzip_file() command. Some users reported the plugin would stop their entire website working if this extension wasn't installed.
320
  * Bug - Fixed Gravity Forms compatibility checker which wouldn't return the correct response.
@@ -332,7 +356,7 @@ All FAQs can be [viewed on the Gravity Forms PDF Extended website](http://gravit
332
  * Feature - Options for default templates to disable HTML fields or empty fields (or both)
333
 
334
  = 3.0.0 =
335
- As of Gravity Forms PDF Extended v3.0.0 we have removed the DOMPDF package from our plugin and integrated the more advanced mPDF system. Along with a new HTML to PDF generator, we've rewritten the entire plugin's base code to make it more user friendly to both hobbyists and rock star web developers. Configuration time is cut in half and advanced features like adding security features is now accessible to users who have little experience with PHP.
336
 
337
  New Features include:
338
 
@@ -357,7 +381,7 @@ Other changes include
357
  * Improved security - further restrictions were placed on non-administrators viewing template files.
358
  * $form_data array tidied up - images won't be wrapped in anchor tags.
359
 
360
- For more details [view the 3.x.x online documentation](http://gravityformspdfextended.com/documentation-v3-x-x/introduction/).
361
 
362
  = 2.2.3 =
363
  * Bug - Fixed mb_string error in the updated DOMPDF package.
@@ -441,5 +465,5 @@ For more details [view the 3.x.x online documentation](http://gravityformspdfext
441
 
442
  == Upgrade Notice ==
443
 
444
- = 3.4.0.1 =
445
- mPDF upgrade. Full Survey, Poll and Quiz support. Paypal Delayed notifications support. Enhanced $form_data array. More filters and hooks for developers.
1
  === Plugin Name ===
2
  Contributors: blueliquiddesigns
3
+ Donate link: https://gravitypdf.com
4
  Tags: gravity, forms, pdf, automation, attachment
5
  Requires at least: 3.5
6
+ Tested up to: 4.1
7
+ Stable tag: 3.6.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ Gravity PDF allows you to save/view/download a PDF from the front- and back-end, and automate PDF creation on form submission.
12
 
13
  == Description ==
14
 
15
+ Gravity PDF is a powerful developer tool for creating PDF documents using form data captured from Gravity Forms. While the software is targeted at web developers, we've attempted to make it user friendly for hobbyists and DIY business owners. The basic setup can be done in minutes, and there is a huge array of options to configure the PDF as you see fit.
16
 
17
  **Gravity Form Features**
18
 
58
 
59
  **Documentation and Support**
60
 
61
+ To view the Development Documentation head to [https://developer.gravitypdf.com](https://developer.gravitypdf.com). If you need support with the plugin please post a topic in our [support forums](https://support.gravitypdf.com).
62
 
63
  == Installation ==
64
 
65
  1. Upload this plugin to your website and activate it
66
  2. Head to Forms -> Settings -> PDF to initialise the plugin.
67
  3. Create a form in Gravity Forms and configure notifications
68
+ 4. Get the Form ID and follow the steps below in [the configuration section](http://developer.gravitypdf.com/documentation/getting-started-with-gravity-pdf-configuration/)
69
+ 5. Modify the PDF template file ([see the advanced templating section in the documentation](http://developer.gravitypdf.com/documentation/custom-templates-introduction/)) inside your active theme's PDF_EXTENDED_TEMPLATES/ folder.
70
 
71
 
72
  == Frequently Asked Questions ==
73
 
74
+ All FAQs can be [viewed on the Gravity PDF website](https://gravitypdf.com/#faqs).
75
 
76
  == Screenshots ==
77
 
81
 
82
  == Changelog ==
83
 
84
+ = 3.6.0 =
85
+ * Feature - Added support for Gravity Form's sub-field middle name (1.9Beta)
86
+ * Feature - Patch mPDF with full :nth-child support on TD and TR table cells
87
+ * Feature - Added $form_data[products_totals][subtotal] key (total price without shipping costs added)
88
+ * Feature - Added formated money to all product fields in the $form_data array
89
+ * Feature - Default templates: only show fields who's conditional logic is true. Perfect when used with default-show-html
90
+ * Housekeeping - Move PDF_EXTENDED_TEMPLATES folder to the /wp-content/upload/ directory. Get more info about the move (see http://developer.gravitypdf.com/news/migrating-template-directory-means/)
91
+ * Housekeeping - Refined when admin resources are loaded
92
+ * Housekeeping - Fixed typo during initial initialisation
93
+ * Housekeeping - Switched icons back to FontAwesome which is shipped by default with Gravity Forms
94
+ * Housekeeping - Display full path to mPDF tmp directory when there are issues writing to it
95
+ * Housekeeping - Modified font installation message.
96
+ * Housekeeping - Update example-header-and-footer_06.php and example-advanced-headers_07.php to better reflect current mPDF features
97
+ * Bug - Fixed issue pulling the correct configuration when multiple nodes were assigned to multiple forms
98
+ * Bug - Fixed number field formatting issue which always rounded to two decimal places
99
+ * Bug - Fixed JS namespace issue with WordPress Leads plugin
100
+ * Bug - Fixed error initialising fonts / backing up PDF_EXTENDED_TEMPLATES directory when using the glob() function
101
+ * Bug - Fix issue with PHP 5.0 and 5.1 array_replace_recursive function when used with an array inside the $gf_pdf_config array
102
+ * Bug - Fixed fatal error when logged in user attempts to view PDF they don't have access to
103
+ * Bug - Fixed issue in $form_data array where single-column list items where being returned as an array and not a HTML list.
104
+ * Bug - Prevent unauthorised users auto-initialising the software or migrating the templates folder
105
+ * Bug - Fixed up incorrect formatting issue when using custom font name
106
+ * Bug - Fixed issue displaying Times New Roman in PDF templates
107
+
108
  = 3.5.11.1 =
109
  * Bug - Fix issue saving and sending blank PDFs due to security fix
110
 
113
 
114
  = 3.5.10 =
115
  * Housekeeping - Include individual scoring for Gravity Form Survey Likert field in the $form_data['survey'] array
116
+ * Bug - Fix fatal error when Gravity Forms isn't activated, but Gravity PDF is.
117
 
118
  = 3.5.9 =
119
  * Bug - Rollback recent changes that introduced the GFAPI as introduces errors for older versions of Gravity Forms. Will reintroduce in next major release and increase the minimum Gravity Forms version.
163
  * Feature - No longer need to reinitialise every time the software is updated.
164
  * Feature - Add auto-initialiser on initial installation for sites that have direct write access to their server files
165
  * Feature - Add auto-initialiser on initial installation across entire multisite network for sites who have direct write access to their server files.
166
+ * Feature - Add auto-PDF_EXTENDED_TEMPLATES theme syncer for sites that have direct write access to their server files
167
  * Feature - Correctly added language support. The .PO file is located in the /language/ folder if anyone would like to do a translation.
168
 
169
  * Housekeeping - Restrict initialisation process to 64MB or greater to counter problems with users reporting a 'white screen' when running in a low-RAM environment.
195
  * Bug - Fix up mPDF bugs - soft hyphens, watermarks over SVG images, inline CSS bug
196
 
197
  = 3.4.0 =
198
+ * Feature - Added auto-print prompt ability when you add &print=1 to the PDF URL (see https://developer.gravitypdf.com/documentation/display-pdf-in-browser/ for details)
199
  * Feature - Added ability to rotate absolute positioned text 180 degrees (previously only 90 and -90). Note: feature in beta
200
+ * Feature - Backup all template files that are overridden when initialising to a folder inside PDF_EXTENDED_TEMPLATES
201
  * Feature - Added SSH initialisation support
202
  * Feature - Allow MERGETAGS to be used in all PDF templates, including default template (but only in the HTML field).
203
  * Feature - Updated mPDF to 3.7.1
204
+ * Feature - Enable text/image watermark support. Added new example template example-watermark09.php showing off its usage (see http://gravitypdf.com/documentation-v3-x-x/templates/watermarks/)
205
+ * Feature - Added full survey, poll and quiz support to both the default template and $form_data (see https://developer.gravitypdf.com/documentation/accessing-survey-poll-quiz-data/)
206
  * Feature - Shortcodes will now be processed in all templates, including default template (but only in the HTML field).
207
  * Feature - Added 'save' configuration option so PDFs are saved to the local disk when 'notifications' aren't enabled.
208
  * Feature - Added 'dpi' configuration option to modify the PDF image DPI. Default 96dpi. Use 300dpi for printing.
209
  * Feature - Added PDF/A1-b compliance option. Enable with 'pdfa1b' => true. See http://mpdf1.com/manual/index.php?tid=420&searchstring=pdf/a1-b for more details.
210
  * Feature - Added PDF/X1-a compliance option. Enable with 'pdfx1a' => true. See http://mpdf1.com/manual/index.php?tid=481&searchstring=pdf/x-1a for more details.
211
  * Feature - Added new constant option 'PDF_REPACK_FONT' which when enabled may improve function with some PostScript printers (disabled by default). Existing sites will need to add define('PDF_REPACK_FONT', true); to the bottom of their configuration.php file.
212
+ * Feature - Added a sleuth of new hooks and filters for developers. See https://developer.gravitypdf.com/documentation/filters-and-hooks/ for examples.
213
  * Feature - Added $form_data['form_description'] key to $form_data array
214
  * Feature - Update $form_data['products'] array key to field ID
215
  * Feature - Added survey Likert output function for custom templates (much like the product table function). It can be used with the following command 'echo GFPDFEntryDetails::get_likert($form, $lead, $field_id);' where $field_id is substituted for the form field ID.
221
  * Housekeeping - Update settings page link to match new Gravity Forms URL structure
222
  * Housekeeping - Check if $lead['gfsurvey_score'] exists before assigning to $form_data array
223
  * Housekeeping - Removed table and font checksum debugging from mPDF when WP_DEBUG enabled as they produced inaccurate results.
224
+ * Housekeeping - Fixed up mPDF logging location when WP_DEBUG enabled. Files now stored in wp-content/themes/Active_Theme_Folder/PDF_EXTENDED_TEMPLATES/output/ folder.
225
  * Housekeeping - Removed API logging locally when WP_DEBUG is enabled.
226
  * Housekeeping - Increase API timeout interval as some overseas users reported timeout issues
227
  * Housekeeping - Modified mPDF functions Image() and purify_utf8_text() to validate the input data so we don't have to do it every time through the template.
276
  = 3.3.0 =
277
  * Feature - Overhauled the initialisation process so that the software better reviews the host for potential problems before initialisation. This should help debug issues and make users aware there could be a problem before they begin using the software.
278
  * Feature - Overhauled the settings page to make it easier to access features of the software
279
+ * Feature - Added a Support tab to the settings page which allows users to securely (over HTTPS) submit a support ticket to the Gravity PDF support desk
280
  * Feature - Changed select, multiselect and radio fields so that the default templates use the name rather than the value. $form_data now also includes the name and values for all these fields.
281
  * Feature - $form_data now includes all miscellaneous lead information in the $form_data['misc'] array.
282
  * Feature - $form_data now contains 24 and 12 hour time of entry submission.
286
  * Bug - Fixed issue when Gravity Forms in No Conflict Mode
287
  * Bug - Font config.php's array keys now in lower case
288
  * Housekeeping - Moved all initialisation files to a folder called 'initialisation'.
289
+ * Housekeeping - Renamed the configuration.php file in the plugin folder to configuration.php.example to alleviate confusion for developers who unwittingly modify the plugin configuration file instead of the file in their active theme's PDF_EXTENDED_TEMPLATES folder.
290
  * Housekeeping - Updated the plugin file system to a more MVC-style approach, with model and view folders.
291
  * Housekeeping - Removed ability to directly access default and example template files.
292
  * Housekeeping - Fixed PHP notices in default templates related to the default template-only configuration options
295
 
296
  = 3.2.0 =
297
  * Feature - Can now view multiple PDFs assigned to a single form via the admin area. Note: You must provide a unique 'filename' parameter in configuration.php for multiple PDFs assigned to a single form.
298
+ * Feature - You can exclude a field from the default templates using the class name 'exclude'. See our [FAQ topic](https://gravitypdf.com/#faqs) for more details.
299
  * Bug - Fixed issue viewing own PDF entry when logged in as anything lower than editor.
300
  * Bug - Fixed data return bug in pdf-entry-details.php that was preventing all data returning correctly.
301
  * Bug - Fixed PHP Warning when using products with no options
302
  * Bug - Fixed issue with invalid characters being added to the PDF filename. Most notably the date mergetag.
303
  * Bug - Limit filename length to 150 characters which should work on the majority of web servers.
304
  * Bug - Fixed problem sending duplicate PDF when using mass resend notification feature
305
+ * Depreciated - Removed GF_FORM_ID and GF_LEAD_ID constants which were used in v2.x.x of the software. Ensure you follow [v2.x.x upgrade guide](https://developer.gravitypdf.com/news/version-2-3-migration-guide/) to your templates before upgrading.
306
 
307
  = 3.1.4 =
308
  * Bug - Fixed issue with plugin breaking website's when the Gravity Forms plugin wasn't activated.
331
  * Bug - Initialisation error message was being called but the success message was also showing.
332
 
333
  = 3.1.0 =
334
+ * Feature - Added defaults to configuration.php which allows users to define the default PDF settings for all Gravity Forms. See the [installation and configuration documentation](https://developer.gravitypdf.com/documentation/getting-started-with-gravity-pdf-configuration/) for more details.
335
+ * Feature - Added three new configuration options 'default-show-html', 'default-show-empty' and 'default-show-page-names' which allow different display options to the three default templates. See the [installation and configuration documentation](http://gravitypdf.com/documentation-v3-x-x/installation-and-configuration/#default-template) for more details.
336
+ * Feature - Added filter hooks 'gfpdfe_pdf_name' and 'gfpdfe_template' which allows developers to further modify a PDF name and template file, respectively, outside of the configuration.php. This is useful if you have a special case naming convention based on user input. See [https://developer.gravitypdf.com/documentation/filters-and-hooks/](https://developer.gravitypdf.com/documentation/filters-and-hooks/) for more details about using these filters.
337
+ * Feature - Custom font support. Any .ttf font file added to the PDF_EXTENDED_TEMPLATES/fonts/ folder will be automatically installed once the plugin has been initialised. Users also have the option to just initialise the fonts via the settings page. See the [font/language documentation ](https://developer.gravitypdf.com/documentation/language-support/#install-custom-fonts) for details.
338
  * Compatability - Use Gravity Forms get_upload_root() and get_upload_url_root() instead of hard coding the signature upload directory in pdf-entry-detail.php
339
  * Compatability - Changed depreciated functions get_themes() and get_theme() to wp_get_theme() (added in Wordpress v3.4).
340
  * Compatability - The plugin now needs to be initialised on fresh installation and upgrade. This allows us to use the WP_Filesystem API for file manipulation.
341
+ * Compatability - Automatic copying of PDF_EXTENDED_TEMPLATES folder on a theme change was removed in favour of a user prompt. This allows us to take advantage of the WP_Filesystem API.
342
  * Compatability - Added Wordpress compatibility checker (minimum now 3.4 or higher).
343
  * Bug - Removed ZipArchive in favour of Wordpress's WP_Filesystem API unzip_file() command. Some users reported the plugin would stop their entire website working if this extension wasn't installed.
344
  * Bug - Fixed Gravity Forms compatibility checker which wouldn't return the correct response.
356
  * Feature - Options for default templates to disable HTML fields or empty fields (or both)
357
 
358
  = 3.0.0 =
359
+ As of Gravity PDF v3.0.0 we have removed the DOMPDF package from our plugin and integrated the more advanced mPDF system. Along with a new HTML to PDF generator, we've rewritten the entire plugin's base code to make it more user friendly to both hobbyists and rock star web developers. Configuration time is cut in half and advanced features like adding security features is now accessible to users who have little experience with PHP.
360
 
361
  New Features include:
362
 
381
  * Improved security - further restrictions were placed on non-administrators viewing template files.
382
  * $form_data array tidied up - images won't be wrapped in anchor tags.
383
 
384
+ For more details [view the 3.x.x online documentation](https://developer.gravitypdf.com/).
385
 
386
  = 2.2.3 =
387
  * Bug - Fixed mb_string error in the updated DOMPDF package.
465
 
466
  == Upgrade Notice ==
467
 
468
+ = 3.6.0 =
469
+ WARNING: Minimum WordPress and Gravity Forms versions have been bumped to WordPress 3.9+ and Gravity Forms 1.8+. If you aren't running either version of this software DO NOT UPGRADE.
depreciated.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Filename: depreciated.php
5
+ * This file contains any depreciated functionality to help preserve backwards compatibility
6
+ * with either Gravity Forms, or our template files.
7
+ */
8
+
9
+
10
+ /*
11
+ * Since v3.6
12
+ * Moved to the $gfpdfe_data class.
13
+ * Can now be accessed using the following:
14
+ *
15
+ * $gfpdfe_data->template_location
16
+ * $gfpdfe_data->template_site_location
17
+ * $gfpdfe_data->template_save_location
18
+ * $gfpdfe_data->template_font_location
19
+ *
20
+ */
21
+ define('PDF_SAVE_LOCATION', $gfpdfe_data->template_save_location);
22
+ define('PDF_FONT_LOCATION', $gfpdfe_data->template_font_location);
23
+ define('PDF_TEMPLATE_LOCATION', $gfpdfe_data->template_site_location);
24
+ define('PDF_TEMPLATE_URL_LOCATION', $gfpdfe_data->template_site_location_url);
helper/api.php DELETED
@@ -1,277 +0,0 @@
1
- <?php
2
-
3
- define('PDF_DEBUG', false);
4
-
5
- class gfpdfe_API
6
- {
7
- private $api_url = 'https://gravityformspdfextended.com/api/';
8
- private $api_version = '1.0';
9
-
10
- private $username;
11
- private $secret;
12
-
13
- public $response_message;
14
-
15
- public function __construct()
16
- {
17
-
18
- /*
19
- * Set the username and secret if available, otherwise request them from the API
20
- */
21
- $this->username = get_option('gfpdfe_api_username');
22
- $this->secret = get_option('gfpdfe_api_secret');
23
-
24
- if( $this->username === false || strlen($this->username) == 0 || $this->secret === false || strlen($this->secret) == 0 )
25
- {
26
- $this->get_api_access_details();
27
- }
28
-
29
- }
30
-
31
- /*
32
- * This is a public API so users need to request credentials initially
33
- * so our server knowns who is talking to it (and authenticate the message).
34
- */
35
- private function get_api_access_details()
36
- {
37
- /*
38
- * Register User is the correct API path to get new credentials
39
- */
40
- $url = $this->api_url . 'registerUser/';
41
-
42
- $request_args = array(
43
- 'body' => array(),
44
- );
45
-
46
- /*
47
- * Hash our request for the API
48
- */
49
- $request_args = $this->add_headers($request_args);
50
-
51
- $response = wp_remote_get($url, $request_args);
52
-
53
- /*
54
- * Check if there is an error
55
- */
56
- if ( is_wp_error($response) )
57
- {
58
- print json_encode(array('error' => array('msg' => $response->get_error_message())));
59
- exit;
60
- }
61
-
62
- /*
63
- * Check the response codes for errors
64
- */
65
- if($this->check_response_code($response) === true)
66
- {
67
- /*
68
- * Store the username and secret key in the DB
69
- */
70
- $r_data = json_decode($response['body']);
71
-
72
- /*
73
- * We will use this username and secret for future communication
74
- */
75
- update_option('gfpdfe_api_username', $r_data->username);
76
- update_option('gfpdfe_api_secret', $r_data->secretkey);
77
-
78
- $this->username = $r_data->username;
79
- $this->secret = $r_data->secretkey;
80
- }
81
- else
82
- {
83
- /*
84
- * Error
85
- */
86
- print json_encode(array('error' => $this->response_message));
87
- exit;
88
- }
89
-
90
- }
91
-
92
-
93
- /*
94
- * Add headers to all API calls
95
- */
96
- private function add_headers($request)
97
- {
98
-
99
- /* change the timeout from 5 seconds to 20 */
100
- $request['timeout'] = 20;
101
-
102
- /*
103
- * Disable SSL verify as some hosts are having trouble verifying our SSL certificate (even though it isn't self signed).
104
- */
105
- $request['sslverify'] = false;
106
-
107
- $request['headers'] = array(
108
- 'API' => (string) $this->api_version,
109
- 'API_STAMP' => (string) time(),
110
- 'API_URL' => (string) site_url(),
111
- );
112
-
113
- if(strlen($this->username) > 0)
114
- {
115
- $request['headers']['API_USER'] = $this->username;
116
- return $this->create_hash($request, $this->secret);
117
- }
118
-
119
- ksort($request);
120
- return $this->create_hash($request);
121
- }
122
-
123
- /*
124
- * Check the response code sent by our API server
125
- */
126
- private function check_response_code($response)
127
- {
128
-
129
- switch($response['response']['code'])
130
- {
131
- case '200':
132
- /*
133
- * Everything okay
134
- */
135
- return true;
136
- break;
137
-
138
- case '400':
139
- /*
140
- * Bad Request
141
- */
142
- $this->response_message = __('Bad Request.', 'pdfextended');
143
- return false;
144
- break;
145
-
146
- case '401':
147
- /*
148
- * Unauthorized Access
149
- */
150
- $this->response_message = __('Unauthorized Access.', 'pdfextended');
151
-
152
- /*
153
- * Remove current API access keys
154
- */
155
- delete_option('gfpdfe_api_username');
156
- delete_option('gfpdfe_api_secret');
157
-
158
- $this->username = false;
159
- $this->secret = false;
160
-
161
- /*
162
- * Automatically regenerate key
163
- */
164
- $this->get_api_access_details();
165
- return false;
166
- break;
167
-
168
- case '405':
169
- /*
170
- * Method not allowed
171
- */
172
- $this->response_message = __('Method not allowed.', 'pdfextended');
173
- return false;
174
- break;
175
-
176
- case '500':
177
- /*
178
- * Internal Server Error
179
- */
180
- $this->response_message = __('Internal API Error.', 'pdfextended');
181
- return false;
182
- break;
183
-
184
- case '503':
185
- /*
186
- * Service Unavailable
187
- */
188
- $this->response_message = __('API Unavailable.', 'pdfextended');
189
- return false;
190
- break;
191
- }
192
- }
193
-
194
- /*
195
- * Create our hash function which will ensure the request hasn't been tampered en-route
196
- * We'll make calls over HTTPS as well, but this is an added security measure.
197
- */
198
- private function create_hash($request, $secret_key = '')
199
- {
200
- /*
201
- * Sign our hash with our secret key if we have one
202
- */
203
- if(PDF_DEBUG == true)
204
- {
205
- file_put_contents( ABSPATH . 'pdf-api.log', date('d/m/Y h:m:s') . ' Hash' ."\n", FILE_APPEND);
206
- file_put_contents( ABSPATH . 'pdf-api.log', serialize($request) . $secret_key. "\n", FILE_APPEND);
207
- }
208
-
209
- /*
210
- * Remove any items not needed in the hash
211
- */
212
- $hash_request = array();
213
- $hash_request['body'] = $request['body'];
214
- $hash_request['headers'] = $request['headers'];
215
-
216
-
217
- $hashed = hash ('sha256', serialize($hash_request) . $secret_key );
218
- $request['headers']['hash'] = $hashed;
219
-
220
- return $request;
221
- }
222
-
223
- /*
224
- * Make our actual support request call to the API
225
- */
226
- public function support_request($body)
227
- {
228
- static $retry = false;
229
- $url = $this->api_url . 'supportRequest/';
230
-
231
- $request_args = array(
232
- 'body' => $body
233
- );
234
-
235
- /*
236
- * Hash our request for the API
237
- */
238
- $request_args = $this->add_headers($request_args);
239
-
240
- $response = wp_remote_post($url, $request_args);
241
-
242
- /*
243
- * Check if there is an error
244
- */
245
- if ( is_wp_error($response) )
246
- {
247
- print json_encode(array('error' => array('msg' => $response->get_error_message())));
248
- exit;
249
- }
250
-
251
- /*
252
- * Check the response codes for errors
253
- */
254
- if($this->check_response_code($response) === true)
255
- {
256
- $response_array = json_decode($response['body']);
257
- print json_encode(array('msg' => __($response_array->msg, 'pdfextended')));
258
- }
259
- else
260
- {
261
- if($this->response_message == __('Unauthorized Access.', 'pdfextended') && $retry == false)
262
- {
263
- /*
264
- * Access keys failed. They were regenerated so let's try again
265
- */
266
- $retry = true;
267
- $this->support_request($body);
268
- return;
269
- }
270
- else
271
- {
272
- return false;
273
- }
274
-
275
- }
276
- }
277
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
helper/data.php CHANGED
@@ -1,10 +1,11 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: data.php
6
  *
7
  * This is a data overloading class which holds important variables shared throughout the plugin
 
8
  */
9
 
10
  class GFPDFE_DATA
@@ -43,4 +44,27 @@ class GFPDFE_DATA
43
  {
44
  unset($this->data[$name]);
45
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  }
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: data.php
6
  *
7
  * This is a data overloading class which holds important variables shared throughout the plugin
8
+ * In some circumstances it will also provide functions to get data from itself
9
  */
10
 
11
  class GFPDFE_DATA
44
  {
45
  unset($this->data[$name]);
46
  }
47
+
48
+ /**
49
+ * Used to set up our PDF template folder,
50
+ * save folder and font folder
51
+ */
52
+ public function set_directory_structure()
53
+ {
54
+ $upload_dir = PDF_Common::get_upload_dir();
55
+ $site_name = PDF_Common::get_site_name();
56
+
57
+ $this->template_location = $upload_dir['basedir'] . '/' . PDF_SAVE_FOLDER . '/';
58
+ $this->template_site_location = $upload_dir['basedir'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/';
59
+ $this->template_save_location = $upload_dir['basedir'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/output/';
60
+ $this->template_font_location = $upload_dir['basedir'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/fonts/';
61
+
62
+ $this->template_location_url = $upload_dir['baseurl'] . '/' . PDF_SAVE_FOLDER . '/';
63
+ $this->template_site_location_url = $upload_dir['baseurl'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/';
64
+ $this->template_save_location_url = $upload_dir['baseurl'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/output/';
65
+ $this->template_font_location_url = $upload_dir['baseurl'] . '/' . PDF_SAVE_FOLDER . '/' . $site_name . '/fonts/';
66
+
67
+ $this->old_template_location = get_stylesheet_directory().'/'.PDF_SAVE_FOLDER.'/';
68
+ $this->upload_dir = $upload_dir['basedir'];
69
+ }
70
  }
helper/installation-update-manager.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: install-update-manager.php
6
  *
7
  * This file handles the installation and update code that ensures the plugin will be supported.
@@ -41,13 +41,22 @@ class GFPDF_InstallUpdater
41
 
42
  if($gfpdfe_data->automated === true && $gfpdfe_data->is_initialised === false && !rgpost('upgrade') && get_option('gfpdfe_automated_install') != 'installing')
43
  {
44
-
45
  /*
46
  * Initialise all multisites if a super admin is logged in
47
  */
48
  if(is_multisite() && is_super_admin())
49
  {
50
- self::run_multisite_deployment();
 
 
 
 
 
 
 
 
 
 
51
  }
52
  else
53
  {
@@ -65,12 +74,12 @@ class GFPDF_InstallUpdater
65
  /*
66
  * Initialise all multsites in one fowl swoop
67
  */
68
- public static function run_multisite_deployment()
69
  {
70
  global $gfpdfe_data;
71
 
72
  /* add additional check incase someone doesn't call this correctly */
73
- if(!is_multisite())
74
  return false;
75
 
76
  /*
@@ -81,12 +90,16 @@ class GFPDF_InstallUpdater
81
  if(sizeof($sites) > 0)
82
  {
83
 
84
- $success = true;
85
  $problem = array();
86
  foreach($sites as $site)
87
  {
88
  switch_to_blog( (int) $site['blog_id'] );
89
 
 
 
 
 
 
90
  /*
91
  * Test if the blog has gravity forms and PDF Extended active
92
  * If so, we can initialise
@@ -99,10 +112,9 @@ class GFPDF_InstallUpdater
99
  )
100
  {
101
  /* run our deployment and output any problems */
102
- $deploy = self::do_deploy();
103
  if($deploy === false)
104
  {
105
- $success = false;
106
  $problem[] = $site;
107
  }
108
  else if ($deploy === 'false')
@@ -115,17 +127,19 @@ class GFPDF_InstallUpdater
115
  }
116
  }
117
  restore_current_blog();
 
 
 
 
 
118
  }
119
 
120
- if(!$success)
121
  {
122
  $gfpdfe_data->network_error = $problem;
123
- add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_auto_deploy_network_failure'));
124
- }
125
- else
126
- {
127
- add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_network_deploy_success'));
128
  }
 
129
  }
130
  }
131
 
@@ -133,7 +147,7 @@ class GFPDF_InstallUpdater
133
  * Used to automatically deploy the software
134
  * Regular initialisation (via the settings page) will call pdf_extended_activate() directly.
135
  */
136
- private static function do_deploy()
137
  {
138
  update_option('gfpdfe_automated_install', 'installing');
139
  return self::pdf_extended_activate();
@@ -144,7 +158,7 @@ class GFPDF_InstallUpdater
144
  * due to being rooted to a specific folder.
145
  * The $wp_filesystem->abspath() corrects this behaviour.
146
  */
147
- private static function get_base_dir($path)
148
  {
149
  global $wp_filesystem;
150
  return str_replace(ABSPATH, $wp_filesystem->abspath(), $path);
@@ -173,16 +187,75 @@ class GFPDF_InstallUpdater
173
  * FTP and SSH could be rooted to the wordpress base directory
174
  * use $wp_filesystem->abspath(); function to fix any issues
175
  */
176
- $directory = self::get_base_dir(PDF_PLUGIN_DIR);
177
- $template_directory = self::get_base_dir(PDF_TEMPLATE_LOCATION);
178
- $template_save_directory = self::get_base_dir(PDF_SAVE_LOCATION);
179
- $template_font_directory = self::get_base_dir(PDF_FONT_LOCATION);
 
 
180
 
181
  /**
182
- * If PDF_TEMPLATE_LOCATION already exists then we will remove the old template files so we can redeploy the new ones
183
  */
184
- if($wp_filesystem->exists($template_directory) && isset($_POST['overwrite']))
185
- {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
186
  /*
187
  * Create a backup folder and move all the files there
188
  */
@@ -195,30 +268,61 @@ class GFPDF_InstallUpdater
195
 
196
 
197
  /* read all file names into array and unlink from active theme template folder */
198
- foreach(glob($directory.'initialisation/templates/*') as $file) {
199
- $path_parts = pathinfo($file);
200
- if($wp_filesystem->exists($template_directory.$path_parts['basename']))
201
- {
202
- if(!$do_backup)
203
- {
204
- $wp_filesystem->delete($template_directory.$path_parts['basename']);
205
- continue;
206
- }
207
- $wp_filesystem->move($template_directory.$path_parts['basename'], $template_directory . $backup_folder . $path_parts['basename']);
208
- }
209
  }
210
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
211
 
212
- /* create new directory in active themes folder*/
213
  if(!$wp_filesystem->is_dir($template_directory))
214
  {
215
  if($wp_filesystem->mkdir($template_directory) === false)
216
  {
217
- add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
218
  return false;
219
- }
220
- }
221
-
 
 
 
 
 
 
 
222
  if(!$wp_filesystem->is_dir($template_save_directory))
223
  {
224
  /* create new directory in active themes folder*/
@@ -227,8 +331,15 @@ class GFPDF_InstallUpdater
227
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
228
  return false;
229
  }
230
- }
231
 
 
 
 
 
 
 
 
232
  if(!$wp_filesystem->is_dir($template_font_directory))
233
  {
234
  /* create new directory in active themes folder*/
@@ -237,43 +348,53 @@ class GFPDF_InstallUpdater
237
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
238
  return false;
239
  }
240
- }
241
-
242
- /*
243
- * Copy entire template folder over to PDF_TEMPLATE_LOCATION
244
- */
245
- self::pdf_extended_copy_directory( $directory . 'initialisation/templates', $template_directory, false );
 
 
 
 
 
 
 
 
246
 
247
  if(!$wp_filesystem->exists($template_directory .'configuration.php'))
248
  {
249
  /* copy template files to new directory */
250
- if(!$wp_filesystem->copy($directory .'initialisation/configuration.php.example', $template_directory.'configuration.php'))
251
  {
252
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
253
  return false;
254
  }
255
- }
256
-
257
- if(!$wp_filesystem->exists($template_save_directory.'.htaccess'))
 
 
 
 
 
 
 
 
 
 
 
 
258
  {
259
- if(!$wp_filesystem->put_contents($template_save_directory.'.htaccess', 'deny from all'))
260
  {
261
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
262
  return false;
263
  }
264
  }
265
 
266
- if(self::install_fonts($directory, $template_directory, $template_font_directory) !== true)
267
- {
268
- return false;
269
- }
270
-
271
- /*
272
- * Update system to ensure everything is installed correctly.
273
- */
274
- self::db_init();
275
-
276
- return true;
277
  }
278
 
279
  /*
@@ -284,7 +405,6 @@ class GFPDF_InstallUpdater
284
  global $gfpdfe_data;
285
 
286
  update_option('gf_pdf_extended_installed', 'installed');
287
- delete_option('gfpdfe_switch_theme');
288
  delete_option('gfpdfe_automated_install');
289
  GFPDF_Settings::$model->check_compatibility();
290
  }
@@ -294,7 +414,7 @@ class GFPDF_InstallUpdater
294
  /*
295
  * Initialise the Wordpress Filesystem API
296
  */
297
- if(PDF_Common::initialise_WP_filesystem_API(array('gfpdf_deploy'), 'pdf-extended-fonts') === false)
298
  {
299
  return false;
300
  }
@@ -308,9 +428,9 @@ class GFPDF_InstallUpdater
308
  * We need to set up some filesystem compatibility checkes to work with the different server file management types
309
  * Most notably is the FTP options, but SSH may be effected too
310
  */
311
- $directory = self::get_base_dir(PDF_PLUGIN_DIR);
312
- $template_directory = self::get_base_dir(PDF_TEMPLATE_LOCATION);
313
- $template_font_directory = self::get_base_dir(PDF_FONT_LOCATION);
314
 
315
  if(self::install_fonts($directory, $template_directory, $template_font_directory) === true)
316
  {
@@ -338,7 +458,7 @@ class GFPDF_InstallUpdater
338
  */
339
 
340
  /* read all file names into array and unlink from active theme template folder */
341
- foreach(glob($fonts_location.'/*.[tT][tT][fF]') as $file) {
342
 
343
  $path_parts = pathinfo($file);
344
 
@@ -346,7 +466,7 @@ class GFPDF_InstallUpdater
346
  * Generate configuration information in preparation to write to file
347
  */
348
  $write_to_file .= '
349
- $this->fontdata[\''.strtolower($path_parts['filename']).'\'] = array(
350
  \'R\' => \''.$path_parts['basename'].'\'
351
  );';
352
 
@@ -364,84 +484,88 @@ class GFPDF_InstallUpdater
364
 
365
  return true;
366
  }
367
-
368
- /*
369
- * When switching themes copy over current active theme's PDF_EXTENDED_TEMPLATES (if it exists) to new theme folder
370
- */
371
- public static function gf_pdf_on_switch_theme($old_theme_name, $old_theme_object) {
372
-
373
- /*
374
- * We will store the old pdf dir and new pdf directory and prompt the user to copy the PDF_EXTENDED_TEMPLATES folder
375
- */
376
- $previous_theme_directory = $old_theme_object->get_stylesheet_directory();
377
-
378
- $current_theme_array = wp_get_theme();
379
- $current_theme_directory = $current_theme_array->get_stylesheet_directory();
380
-
381
- /*
382
- * Add the save folder name to the end of the paths
383
- */
384
- $old_pdf_path = $previous_theme_directory . '/' . PDF_SAVE_FOLDER;
385
- $new_pdf_path = $current_theme_directory . '/' . PDF_SAVE_FOLDER;
386
-
387
- update_option('gfpdfe_switch_theme', array('old' => $old_pdf_path, 'new' => $new_pdf_path));
388
-
389
- /* add action to check if we can auto sync */
390
- /* filesystem API isn't avaliable during this action (too early) */
391
- add_action('admin_init', array('GFPDF_InstallUpdater', 'maybe_autosync'));
392
- }
393
 
394
- public static function maybe_autosync()
395
  {
396
  global $gfpdfe_data;
397
  self::check_filesystem_api();
398
 
399
  if($gfpdfe_data->automated === true)
400
  {
401
- $theme_switch = get_option('gfpdfe_switch_theme');
402
- self::do_theme_switch($theme_switch['old'], $theme_switch['new']);
 
403
  }
 
404
  }
405
 
406
  /*
407
- * Check if a theme switch has been made recently
408
  * If it has then prompt the user to move the files
409
  */
410
- public static function check_theme_switch()
411
  {
412
  global $gfpdfe_data;
413
 
414
- $theme_switch = get_option('gfpdfe_switch_theme');
415
-
416
- if(isset($theme_switch['old']) && isset($theme_switch['new']))
417
  {
418
- /*
419
- * Add admin notification hook to move the files
420
- */
421
- add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'do_theme_switch_notice'));
422
- return true;
 
 
 
423
  }
424
  return false;
425
  }
426
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
427
 
428
  /*
429
  * The after_switch_theme hook is too early in the initialisation to use request_filesystem_credentials()
430
  * so we have to call this function at a later inteval
431
  */
432
- public static function do_theme_switch($previous_pdf_path, $current_pdf_path)
433
  {
434
- /*
435
- * Prepare for calling the WP Filesystem
436
- * It only allows post data to be added so we have to manually assign them
437
- */
438
- $_POST['previous_pdf_path'] = $previous_pdf_path;
439
- $_POST['current_pdf_path'] = $current_pdf_path;
440
-
441
  /*
442
  * Initialise the Wordpress Filesystem API
443
  */
444
- if(PDF_Common::initialise_WP_filesystem_API(array('previous_pdf_path', 'current_pdf_path'), 'gfpdfe_sync_now') === false)
445
  {
446
  return 'false';
447
  }
@@ -449,27 +573,36 @@ class GFPDF_InstallUpdater
449
  /*
450
  * If we got here we should have $wp_filesystem available
451
  */
452
- global $wp_filesystem, $gfpdfe_data;
453
-
454
  /*
455
  * Convert paths for SSH/FTP users who are rooted to a directory along the server absolute path
456
  */
457
- $previous_pdf_path = self::get_base_dir($previous_pdf_path);
458
- $current_pdf_path = self::get_base_dir($current_pdf_path);
 
459
 
460
- if($wp_filesystem->is_dir($previous_pdf_path))
 
461
  {
462
- self::pdf_extended_copy_directory( $previous_pdf_path, $current_pdf_path, true, true );
 
463
 
464
- /*
465
- * Remove the options key that triggers the switch theme function
466
- */
467
- delete_option('gfpdfe_switch_theme');
468
- add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_theme_sync_success'));
 
 
 
 
469
 
470
  /*
471
- * Show success message to user
472
  */
 
 
473
  return true;
474
  }
475
  return false;
@@ -478,7 +611,7 @@ class GFPDF_InstallUpdater
478
  /*
479
  * Allows you to copy entire folder structures to new location
480
  */
481
- public static function pdf_extended_copy_directory( $source, $destination, $copy_base = true, $delete_destination = false )
482
  {
483
  global $wp_filesystem;
484
 
@@ -516,5 +649,10 @@ class GFPDF_InstallUpdater
516
  {
517
  $wp_filesystem->copy( $source, $destination );
518
  }
 
 
 
 
 
519
  }
520
  }
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: install-update-manager.php
6
  *
7
  * This file handles the installation and update code that ensures the plugin will be supported.
41
 
42
  if($gfpdfe_data->automated === true && $gfpdfe_data->is_initialised === false && !rgpost('upgrade') && get_option('gfpdfe_automated_install') != 'installing')
43
  {
 
44
  /*
45
  * Initialise all multisites if a super admin is logged in
46
  */
47
  if(is_multisite() && is_super_admin())
48
  {
49
+ $results = GFPDF_InstallUpdater::run_multisite_deployment(array('GFPDF_InstallUpdater', 'do_deploy'));
50
+
51
+ if($results === true)
52
+ {
53
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_network_deploy_success'));
54
+ }
55
+ elseif($results === false)
56
+ {
57
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_auto_deploy_network_failure'));
58
+ }
59
+ return $results;
60
  }
61
  else
62
  {
74
  /*
75
  * Initialise all multsites in one fowl swoop
76
  */
77
+ public static function run_multisite_deployment($action)
78
  {
79
  global $gfpdfe_data;
80
 
81
  /* add additional check incase someone doesn't call this correctly */
82
+ if(!is_multisite() || !is_super_admin())
83
  return false;
84
 
85
  /*
90
  if(sizeof($sites) > 0)
91
  {
92
 
 
93
  $problem = array();
94
  foreach($sites as $site)
95
  {
96
  switch_to_blog( (int) $site['blog_id'] );
97
 
98
+ /*
99
+ * Reset the directory structure
100
+ */
101
+ $gfpdfe_data->set_directory_structure();
102
+
103
  /*
104
  * Test if the blog has gravity forms and PDF Extended active
105
  * If so, we can initialise
112
  )
113
  {
114
  /* run our deployment and output any problems */
115
+ $deploy = call_user_func($action);
116
  if($deploy === false)
117
  {
 
118
  $problem[] = $site;
119
  }
120
  else if ($deploy === 'false')
127
  }
128
  }
129
  restore_current_blog();
130
+
131
+ /*
132
+ * Reset the directory structure
133
+ */
134
+ $gfpdfe_data->set_directory_structure();
135
  }
136
 
137
+ if(sizeof($problem) > 0)
138
  {
139
  $gfpdfe_data->network_error = $problem;
140
+ return false;
 
 
 
 
141
  }
142
+ return true;
143
  }
144
  }
145
 
147
  * Used to automatically deploy the software
148
  * Regular initialisation (via the settings page) will call pdf_extended_activate() directly.
149
  */
150
+ public static function do_deploy()
151
  {
152
  update_option('gfpdfe_automated_install', 'installing');
153
  return self::pdf_extended_activate();
158
  * due to being rooted to a specific folder.
159
  * The $wp_filesystem->abspath() corrects this behaviour.
160
  */
161
+ private static function get_basedir($path)
162
  {
163
  global $wp_filesystem;
164
  return str_replace(ABSPATH, $wp_filesystem->abspath(), $path);
187
  * FTP and SSH could be rooted to the wordpress base directory
188
  * use $wp_filesystem->abspath(); function to fix any issues
189
  */
190
+ $directory = self::get_basedir(PDF_PLUGIN_DIR);
191
+ $base_template_directory = self::get_basedir( $gfpdfe_data->template_location );
192
+ $template_directory = self::get_basedir( $gfpdfe_data->template_site_location );
193
+ $template_save_directory = self::get_basedir( $gfpdfe_data->template_save_location );
194
+ $template_font_directory = self::get_basedir( $gfpdfe_data->template_font_location );
195
+
196
 
197
  /**
198
+ * If template directory already exists then we will remove the old template files so we can redeploy the new ones
199
  */
200
+ self::reinitialise_templates($template_directory);
201
+
202
+ /* create new directory in uploads folder*/
203
+ if(self::create_base_template_dir($base_template_directory) === false)
204
+ {
205
+ return false;
206
+ }
207
+
208
+ /* create site directory in base template directory */
209
+ if(self::create_site_template_dir($template_directory) === false)
210
+ {
211
+ return false;
212
+ }
213
+
214
+ /* create 'save' output folder */
215
+ if(self::create_save_dir($template_save_directory) === false)
216
+ {
217
+ return false;
218
+ }
219
+
220
+ /* create 'font' folder */
221
+ if(self::create_font_dir($template_font_directory) === false)
222
+ {
223
+ return false;
224
+ }
225
+
226
+ /* copy entire template folder over to the template directory */
227
+ self::pdf_extended_copy_directory( $directory . 'initialisation/templates', $template_directory, false );
228
+
229
+ /* copy configuration file over to new directory */
230
+ if(self::create_configuration_file($directory, $template_directory) === false)
231
+ {
232
+ return false;
233
+ }
234
+
235
+ /* create .htaccess file */
236
+ if(self::create_htaccess_file($template_save_directory) === false)
237
+ {
238
+ return false;
239
+ }
240
+
241
+ /* initialise font directory */
242
+ if(self::install_fonts($directory, $template_directory, $template_font_directory) !== true)
243
+ {
244
+ return false;
245
+ }
246
+
247
+ /* update db to ensure everything is installed correctly. */
248
+ self::db_init();
249
+
250
+ return true;
251
+ }
252
+
253
+ public static function reinitialise_templates($template_directory)
254
+ {
255
+ global $wp_filesystem, $gfpdfe_data;
256
+
257
+ if($wp_filesystem->exists($template_directory) && isset($_POST['overwrite']))
258
+ {
259
  /*
260
  * Create a backup folder and move all the files there
261
  */
268
 
269
 
270
  /* read all file names into array and unlink from active theme template folder */
271
+ foreach(glob( PDF_PLUGIN_DIR . 'initialisation/templates/*') as $file) {
272
+ $path_parts = pathinfo($file);
273
+ if($wp_filesystem->exists($template_directory.$path_parts['basename']))
274
+ {
275
+ if(!$do_backup)
276
+ {
277
+ $wp_filesystem->delete($template_directory.$path_parts['basename']);
278
+ continue;
279
+ }
280
+ $wp_filesystem->move($template_directory.$path_parts['basename'], $template_directory . $backup_folder . $path_parts['basename']);
281
+ }
282
  }
283
+ }
284
+ }
285
+
286
+ public static function create_base_template_dir($base_template_directory)
287
+ {
288
+ global $wp_filesystem, $gfpdfe_data;
289
+
290
+ /* create new directory in uploads folder*/
291
+ if(!$wp_filesystem->is_dir($base_template_directory))
292
+ {
293
+ if($wp_filesystem->mkdir($base_template_directory) === false)
294
+ {
295
+ /*
296
+ * TODO: add correct notices
297
+ */
298
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
299
+ return false;
300
+ }
301
+ }
302
+
303
+ return true;
304
+ }
305
+
306
+ public static function create_site_template_dir($template_directory)
307
+ {
308
+ global $wp_filesystem, $gfpdfe_data;
309
 
 
310
  if(!$wp_filesystem->is_dir($template_directory))
311
  {
312
  if($wp_filesystem->mkdir($template_directory) === false)
313
  {
314
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_site_dir_err'));
315
  return false;
316
+ }
317
+ }
318
+
319
+ return true;
320
+ }
321
+
322
+ public static function create_save_dir($template_save_directory)
323
+ {
324
+ global $wp_filesystem, $gfpdfe_data;
325
+
326
  if(!$wp_filesystem->is_dir($template_save_directory))
327
  {
328
  /* create new directory in active themes folder*/
331
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
332
  return false;
333
  }
334
+ }
335
 
336
+ return true;
337
+ }
338
+
339
+ public static function create_font_dir($template_font_directory)
340
+ {
341
+ global $wp_filesystem, $gfpdfe_data;
342
+
343
  if(!$wp_filesystem->is_dir($template_font_directory))
344
  {
345
  /* create new directory in active themes folder*/
348
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
349
  return false;
350
  }
351
+ }
352
+
353
+ return true;
354
+ }
355
+
356
+ /**
357
+ * Copy configuration file to template folder
358
+ * @param String $directory The $wp_filesystem path to the plugin folder
359
+ * @param String $template_directory The $wp_filesystem path to the template folder
360
+ * @return Boolean Success on true (or not run at all). false on fail
361
+ */
362
+ public static function create_configuration_file($directory, $template_directory)
363
+ {
364
+ global $wp_filesystem, $gfpdfe_data;
365
 
366
  if(!$wp_filesystem->exists($template_directory .'configuration.php'))
367
  {
368
  /* copy template files to new directory */
369
+ if(!$wp_filesystem->copy($directory . 'initialisation/configuration.php.example', $template_directory . 'configuration.php'))
370
  {
371
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
372
  return false;
373
  }
374
+ }
375
+
376
+ return true;
377
+ }
378
+
379
+ /**
380
+ * Create htaccess file to prevent direct access to PDFs
381
+ * @param String $template_save_directory The $wp_filesystem path to the save directory
382
+ * @return Boolean success on true (or not run at all). false on fail
383
+ */
384
+ public static function create_htaccess_file($template_save_directory)
385
+ {
386
+ global $wp_filesystem, $gfpdfe_data;
387
+
388
+ if(!$wp_filesystem->exists($template_save_directory . '.htaccess'))
389
  {
390
+ if(!$wp_filesystem->put_contents($template_save_directory . '.htaccess', 'deny from all'))
391
  {
392
  add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_template_dir_err'));
393
  return false;
394
  }
395
  }
396
 
397
+ return true;
 
 
 
 
 
 
 
 
 
 
398
  }
399
 
400
  /*
405
  global $gfpdfe_data;
406
 
407
  update_option('gf_pdf_extended_installed', 'installed');
 
408
  delete_option('gfpdfe_automated_install');
409
  GFPDF_Settings::$model->check_compatibility();
410
  }
414
  /*
415
  * Initialise the Wordpress Filesystem API
416
  */
417
+ if(PDF_Common::initialise_WP_filesystem_API(array('gfpdf_deploy', 'font-initialise', 'gfpdf_deploy_nonce'), 'pdf-extended-fonts') === false)
418
  {
419
  return false;
420
  }
428
  * We need to set up some filesystem compatibility checkes to work with the different server file management types
429
  * Most notably is the FTP options, but SSH may be effected too
430
  */
431
+ $directory = self::get_basedir(PDF_PLUGIN_DIR);
432
+ $template_directory = self::get_basedir( $gfpdfe_data->template_site_location );
433
+ $template_font_directory = self::get_basedir( $gfpdfe_data->template_font_location );
434
 
435
  if(self::install_fonts($directory, $template_directory, $template_font_directory) === true)
436
  {
458
  */
459
 
460
  /* read all file names into array and unlink from active theme template folder */
461
+ foreach(glob( $gfpdfe_data->template_font_location . '/*.[tT][tT][fF]') as $file) {
462
 
463
  $path_parts = pathinfo($file);
464
 
466
  * Generate configuration information in preparation to write to file
467
  */
468
  $write_to_file .= '
469
+ $this->fontdata[\''.mb_strtolower(str_replace(' ', '', $path_parts['filename']), 'UTF-8').'\'] = array(
470
  \'R\' => \''.$path_parts['basename'].'\'
471
  );';
472
 
484
 
485
  return true;
486
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
487
 
488
+ public static function maybe_automigrate()
489
  {
490
  global $gfpdfe_data;
491
  self::check_filesystem_api();
492
 
493
  if($gfpdfe_data->automated === true)
494
  {
495
+ update_option('gfpdfe_automated_install', 'installing');
496
+ self::run_template_migration();
497
+ return true;
498
  }
499
+ return false;
500
  }
501
 
502
  /*
503
+ * Check if the new PDF_TEMPLATE_LOCATION (v.3.6 mod) has been made switched
504
  * If it has then prompt the user to move the files
505
  */
506
+ public static function check_template_migration()
507
  {
508
  global $gfpdfe_data;
509
 
510
+ if(is_dir($gfpdfe_data->old_template_location))
 
 
511
  {
512
+ if(!self::maybe_automigrate())
513
+ {
514
+ /*
515
+ * Add admin notification hook to move the files
516
+ */
517
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'do_template_switch_notice'));
518
+ return true;
519
+ }
520
  }
521
  return false;
522
  }
523
+
524
+ public static function run_template_migration()
525
+ {
526
+ global $gfpdfe_data;
527
+
528
+ if(is_multisite() && is_super_admin())
529
+ {
530
+ $return = self::run_multisite_deployment(array('GFPDF_InstallUpdater','do_template_migration'));
531
+ GFPDF_Settings::$model->check_compatibility();
532
+
533
+ /* multisite mode */
534
+ if($return === true)
535
+ {
536
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_migration_success'));
537
+ }
538
+ elseif($return === false)
539
+ {
540
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_merge_network_failure'));
541
+ }
542
+ return $return;
543
+ }
544
+ else
545
+ {
546
+ $return = self::do_template_migration();
547
+ GFPDF_Settings::$model->check_compatibility();
548
+
549
+ /* single site mode */
550
+ if($return === true)
551
+ {
552
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_migration_success'));
553
+ return $return;
554
+ }
555
+ return $return;
556
+ }
557
+ }
558
 
559
  /*
560
  * The after_switch_theme hook is too early in the initialisation to use request_filesystem_credentials()
561
  * so we have to call this function at a later inteval
562
  */
563
+ public static function do_template_migration()
564
  {
 
 
 
 
 
 
 
565
  /*
566
  * Initialise the Wordpress Filesystem API
567
  */
568
+ if(PDF_Common::initialise_WP_filesystem_API(array(), 'gfpdfe_migrate') === false)
569
  {
570
  return 'false';
571
  }
573
  /*
574
  * If we got here we should have $wp_filesystem available
575
  */
576
+ global $wp_filesystem, $gfpdfe_data;
577
+
578
  /*
579
  * Convert paths for SSH/FTP users who are rooted to a directory along the server absolute path
580
  */
581
+ $base_template_directory = self::get_basedir($gfpdfe_data->template_location );
582
+ $previous_pdf_path = self::get_basedir($gfpdfe_data->old_template_location);
583
+ $current_pdf_path = self::get_basedir($gfpdfe_data->template_site_location);
584
 
585
+ /* create the base template directory */
586
+ if(self::create_base_template_dir($base_template_directory) === false)
587
  {
588
+ return false;
589
+ }
590
 
591
+ /* create the site template directory */
592
+ if(self::create_site_template_dir($current_pdf_path) === false)
593
+ {
594
+ return false;
595
+ }
596
+
597
+ if($wp_filesystem->is_dir($previous_pdf_path))
598
+ {
599
+ self::pdf_extended_copy_directory( $previous_pdf_path, $current_pdf_path, true, true, true ); /* swap back to TRUE to delete the theme folder */
600
 
601
  /*
602
+ * Clean up the DB
603
  */
604
+ delete_option('gfpdfe_automated_install');
605
+
606
  return true;
607
  }
608
  return false;
611
  /*
612
  * Allows you to copy entire folder structures to new location
613
  */
614
+ public static function pdf_extended_copy_directory( $source, $destination, $copy_base = true, $delete_destination = false, $delete_source = false )
615
  {
616
  global $wp_filesystem;
617
 
649
  {
650
  $wp_filesystem->copy( $source, $destination );
651
  }
652
+
653
+ if($delete_source)
654
+ {
655
+ $wp_filesystem->delete($source, true);
656
+ }
657
  }
658
  }
helper/notices.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: notices.php
6
  *
7
  * This file handles the output of all notices to the admin area
@@ -51,7 +51,7 @@ class GFPDF_Notices
51
  global $gfpdfe_data;
52
  if($gfpdfe_data->automated === true && !rgpost('upgrade') && !rgpost('font-initialise'))
53
  {
54
- return sprintf(__('%sGravity Forms PDF Extended Automated Installer%s: ', 'pdfextended'), '<strong>', '</strong>');
55
  }
56
  return '';
57
  }
@@ -71,7 +71,7 @@ class GFPDF_Notices
71
  $prefix = self::autoprefix();
72
  $suffix = self::autosuffix();
73
 
74
- $msg = $prefix . __('The font files have been successfully installed. A font can be used by adding its file name (without .ttf and in lower case) in a CSS font-family declaration.', 'pdfextended') . $suffix;
75
 
76
  self::notice($msg);
77
 
@@ -98,11 +98,11 @@ class GFPDF_Notices
98
  {
99
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
100
  {
101
- $msg = __('Gravity Forms PDF Extended detected a configuration problem. Please reinitialise the plugin.', 'pdfextended');
102
  }
103
  else
104
  {
105
- $msg = sprintf(__('Gravity Forms PDF Extended detected a configuration problem. Please go to the %splugin\'s settings page%s to reinitialise.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
106
  }
107
 
108
  self::error($msg);
@@ -119,11 +119,11 @@ class GFPDF_Notices
119
  {
120
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
121
  {
122
- $msg = __('Gravity Forms PDF Extended detected a server compatibility problem which prevented the software from running. See the System Status section below for details.', 'pdfextended');
123
  }
124
  else
125
  {
126
- $msg = sprintf(__('Gravity Forms PDF Extended detected a server compatibility problem which prevented the software from running. Please go to the %splugin\'s settings page%s to view the issue.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
127
  }
128
 
129
  self::error($msg);
@@ -139,11 +139,11 @@ class GFPDF_Notices
139
  {
140
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
141
  {
142
- $msg = __('Welcome to Gravity Forms PDF Extended. Before you can use the plugin correctly you need to initilise it.', 'pdfextended');
143
  }
144
  else
145
  {
146
- $msg = sprintf(__('Welcome to Gravity Forms PDF Extended. Before you can use the plugin correctly you need to initilise it. Please go to the %splugin\'s settings page%s to initialise.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
147
  }
148
 
149
  self::notice($msg);
@@ -155,7 +155,7 @@ class GFPDF_Notices
155
  */
156
  public static function gf_pdf_not_supported()
157
  {
158
- $msg = sprintf(__('Gravity Forms PDF Extended only works with Gravity Forms version %s and higher. Please %supgrade your copy of Gravity Forms%s to use this plugin.', 'pdfextended'), GF_PDF_EXTENDED_SUPPORTED_VERSION, '<a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">', '</a>');
159
 
160
  self::error($msg);
161
  }
@@ -166,14 +166,29 @@ class GFPDF_Notices
166
  */
167
  public static function gf_pdf_template_dir_err()
168
  {
 
 
169
  $prefix = self::autoprefix();
170
  $suffix = self::autosuffix();
171
 
172
- $msg = $prefix . __('We could not create a template folder in your active theme\'s directory. Please ensure your active theme directory is writable by your web server and try again.', 'pdfextended') . $suffix;
173
 
174
- self::error($msg);
175
-
176
-
 
 
 
 
 
 
 
 
 
 
 
 
 
177
  }
178
 
179
  /**
@@ -184,20 +199,20 @@ class GFPDF_Notices
184
  $prefix = self::autoprefix();
185
  $suffix = self::autosuffix();
186
 
187
- $msg = $prefix . sprintf(__('We could not remove the default template files from the Gravity Forms PDF Extended folder in your active theme\'s directory. Please ensure %s is wriable by your web server and try again.', 'pdfextended'), PDF_SAVE_LOCATION) . $suffix;
188
 
189
  self::error($msg);
190
  }
191
 
192
  /**
193
- * Cannot create new template folder in active theme directory
194
  */
195
  public static function gf_pdf_template_move_err()
196
  {
197
  $prefix = self::autoprefix();
198
  $suffix = self::autosuffix();
199
 
200
- $msg = $prefix . sprintf(__('We could not move the template files to the PDF_EXTENDED_TEMPLATES folder. Please ensure %s is wriable by your web server and try again.', 'pdfextended'), PDF_SAVE_LOCATION) . $suffix;
201
 
202
  self::error($msg);
203
  }
@@ -205,28 +220,28 @@ class GFPDF_Notices
205
  /*
206
  * Prompt user to keep the plugin working
207
  */
208
- public static function do_theme_switch_notice()
209
  {
210
  /*
211
  * Check we aren't in the middle of doing the sync
212
  */
213
- if(isset($_GET['_wpnonce']) && wp_verify_nonce($_GET['_wpnonce'], 'gfpdfe_sync_now'))
214
  {
215
  return;
216
  }
217
 
218
- $msg = sprintf(__('Gravity Forms PDF Extended needs to keep your configuration and templates folder in sync with your current active theme. %sSync Now%s', 'pdfextended'), '<a href="'. wp_nonce_url(PDF_SETTINGS_URL, 'gfpdfe_sync_now') . '" class="button">', '</a>');
219
 
220
  self::notice($msg);
221
 
222
  }
223
 
224
- public static function gf_pdf_theme_sync_success()
225
  {
226
  global $gfpdfe_data;
227
- $prefix = ($gfpdfe_data->automated === true && !rgpost('upgrade')) ? sprintf(__('%sGravity Forms PDF Extended Automated Theme Sync%s: ', 'pdfextended'), '<strong>', '</strong>') : '';
228
 
229
- $msg = $prefix . __('Your PDF configuration and template folder was successfully synced to your new theme.', 'pdfextended');
230
 
231
  self::notice($msg);
232
 
@@ -238,11 +253,11 @@ class GFPDF_Notices
238
 
239
  if($gfpdfe_data->automated === true && !rgpost('upgrade') && !rgpost('font-initialise'))
240
  {
241
- $msg = __('Gravity Forms PDF Extended Auto Initialisation Complete across the entire network.', 'pdfextended');
242
  }
243
  else
244
  {
245
- $msg = __('Gravity Forms PDF Extended Initialisation Complete across the entire network.', 'pdfextended');
246
  }
247
 
248
  if($gfpdfe_data->fresh_install === true)
@@ -255,7 +270,7 @@ class GFPDF_Notices
255
  public static function gf_pdf_auto_deploy_success()
256
  {
257
  global $gfpdfe_data;
258
- $msg = __('Gravity Forms PDF Extended Auto Initialisation Complete.', 'pdfextended');
259
 
260
  if($gfpdfe_data->fresh_install === true)
261
  {
@@ -264,6 +279,38 @@ class GFPDF_Notices
264
  self::notice($msg);
265
  }
266
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  public static function gf_pdf_auto_deploy_network_failure()
268
  {
269
  global $gfpdfe_data;
@@ -297,7 +344,7 @@ class GFPDF_Notices
297
  }
298
 
299
  public static function gf_pdf_deploy_success() {
300
- $msg = __('You\'ve successfully initialised Gravity Forms PDF Extended.', 'pdfextended');
301
 
302
  self::notice($msg);
303
  }
@@ -314,12 +361,6 @@ class GFPDF_Notices
314
  self::display_plugin_message($message, true);
315
  }
316
 
317
- /*public static function display_documentation_details()
318
- {
319
- $message = sprintf(__("Please review the %sGravity Forms PDF Extended documentation%s for comprehensive installation instructions.%s", 'pdfextended'), "<a href='http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/'>", "</a>", '</span>');
320
- PDF_Common::display_plugin_message($message);
321
- }*/
322
-
323
  public static function display_pdf_compatibility_error()
324
  {
325
  $message = __("PHP " . GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION . " or higher is required to use this plugin.", 'pdfextended');
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: notices.php
6
  *
7
  * This file handles the output of all notices to the admin area
51
  global $gfpdfe_data;
52
  if($gfpdfe_data->automated === true && !rgpost('upgrade') && !rgpost('font-initialise'))
53
  {
54
+ return sprintf(__('%sGravity PDF Automated Installer%s: ', 'pdfextended'), '<strong>', '</strong>');
55
  }
56
  return '';
57
  }
71
  $prefix = self::autoprefix();
72
  $suffix = self::autosuffix();
73
 
74
+ $msg = $prefix . __('The font files have been successfully installed. A font can be used by adding its file name (without .ttf) in a CSS font-family declaration.', 'pdfextended') . $suffix;
75
 
76
  self::notice($msg);
77
 
98
  {
99
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
100
  {
101
+ $msg = __('Gravity PDF detected a configuration problem. Please reinitialise the plugin.', 'pdfextended');
102
  }
103
  else
104
  {
105
+ $msg = sprintf(__('Gravity PDF detected a configuration problem. Please go to the %splugin\'s settings page%s to reinitialise.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
106
  }
107
 
108
  self::error($msg);
119
  {
120
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
121
  {
122
+ $msg = __('Gravity PDF detected a server compatibility problem which prevented the software from running. See the System Status section below for details.', 'pdfextended');
123
  }
124
  else
125
  {
126
+ $msg = sprintf(__('Gravity PDF detected a server compatibility problem which prevented the software from running. Please go to the %splugin\'s settings page%s to view the issue.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
127
  }
128
 
129
  self::error($msg);
139
  {
140
  if(rgget("page") == 'gf_settings' && rgget('subview') == 'PDF')
141
  {
142
+ $msg = __('Welcome to Gravity PDF. Before you can use the plugin correctly you need to initilise it.', 'pdfextended');
143
  }
144
  else
145
  {
146
+ $msg = sprintf(__('Welcome to Gravity PDF. Before you can use the plugin correctly you need to initilise it. Please go to the %splugin\'s settings page%s to initialise.', 'pdfextended'), '<a href="'.PDF_SETTINGS_URL.'">', '</a>');
147
  }
148
 
149
  self::notice($msg);
155
  */
156
  public static function gf_pdf_not_supported()
157
  {
158
+ $msg = sprintf(__('Gravity PDF only works with Gravity Forms version %s and higher. Please %supgrade your copy of Gravity Forms%s to use this plugin.', 'pdfextended'), GF_PDF_EXTENDED_SUPPORTED_VERSION, '<a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">', '</a>');
159
 
160
  self::error($msg);
161
  }
166
  */
167
  public static function gf_pdf_template_dir_err()
168
  {
169
+ global $gfpdfe_data;
170
+
171
  $prefix = self::autoprefix();
172
  $suffix = self::autosuffix();
173
 
174
+ $msg = $prefix . sprintf(__('We could not create a template folder in your uploads directory. Please ensure %s is writable by your web server and try again.', 'pdfextended'), str_replace(ABSPATH, '', $gfpdfe_data->upload_dir)) . $suffix;
175
 
176
+ self::error($msg);
177
+ }
178
+
179
+ /**
180
+ * Cannot create site directory in template folder
181
+ */
182
+ public static function gf_pdf_template_site_dir_err()
183
+ {
184
+ global $gfpdfe_data;
185
+
186
+ $prefix = self::autoprefix();
187
+ $suffix = self::autosuffix();
188
+
189
+ $msg = $prefix . sprintf(__('We could not create a site folder in your uploads/%s directory. Please ensure %s is writable by your web server and try again.'), PDF_SAVE_FOLDER, str_replace(ABSPATH, '', $gfpdfe_data->template_location), 'pdfextended') . $suffix;
190
+
191
+ self::error($msg);
192
  }
193
 
194
  /**
199
  $prefix = self::autoprefix();
200
  $suffix = self::autosuffix();
201
 
202
+ $msg = $prefix . sprintf(__('We could not remove the default template files from %s in your uploads directory. Please ensure %s is wriable by your web server and try again.', 'pdfextended'), PDF_SAVE_FOLDER, str_replace(ABSPATH, '', $gfpdfe_data->template_site_location)) . $suffix;
203
 
204
  self::error($msg);
205
  }
206
 
207
  /**
208
+ * Cannot create new template folder
209
  */
210
  public static function gf_pdf_template_move_err()
211
  {
212
  $prefix = self::autoprefix();
213
  $suffix = self::autosuffix();
214
 
215
+ $msg = $prefix . sprintf(__('We could not move the template files to the %s folder. Please ensure %s is wriable by your web server and try again.', 'pdfextended'), PDF_SAVE_FOLDER, str_replace(ABSPATH, '', $gfpdfe_data->template_site_location) ) . $suffix;
216
 
217
  self::error($msg);
218
  }
220
  /*
221
  * Prompt user to keep the plugin working
222
  */
223
+ public static function do_template_switch_notice()
224
  {
225
  /*
226
  * Check we aren't in the middle of doing the sync
227
  */
228
+ if(isset($_GET['_wpnonce']) && wp_verify_nonce($_GET['_wpnonce'], 'gfpdfe_migrate'))
229
  {
230
  return;
231
  }
232
 
233
+ $msg = sprintf(__('Gravity PDF directory structure has been changed. %sMigrate Now%s %sUnsure what this means?%s', 'pdfextended'), '<a href="'. wp_nonce_url(PDF_SETTINGS_URL, 'gfpdfe_migrate') . '" class="button">', '</a>', '<a href="https://developer.gravitypdf.com/news/migrating-template-directory-means/">', '</a>' );
234
 
235
  self::notice($msg);
236
 
237
  }
238
 
239
+ public static function gf_pdf_migration_success()
240
  {
241
  global $gfpdfe_data;
242
+ $prefix = ($gfpdfe_data->automated === true && !rgpost('upgrade')) ? sprintf(__('%sGravity PDF Automated Template Migration:%s', 'pdfextended'), '<strong>', '</strong><br>') : '';
243
 
244
+ $msg = $prefix . sprintf( __('Your PDF template folder structure was successfully migrated to %s. %sUnsure what this means?%s', 'pdfextended'), str_replace(ABSPATH, '', $gfpdfe_data->upload_dir), '<br><a href="https://developer.gravitypdf.com/news/migrating-template-directory-means/">', '</a>');
245
 
246
  self::notice($msg);
247
 
253
 
254
  if($gfpdfe_data->automated === true && !rgpost('upgrade') && !rgpost('font-initialise'))
255
  {
256
+ $msg = __('Gravity PDF Auto Initialisation Complete across the entire network.', 'pdfextended');
257
  }
258
  else
259
  {
260
+ $msg = __('Gravity PDF Initialisation Complete across the entire network.', 'pdfextended');
261
  }
262
 
263
  if($gfpdfe_data->fresh_install === true)
270
  public static function gf_pdf_auto_deploy_success()
271
  {
272
  global $gfpdfe_data;
273
+ $msg = __('Gravity PDF Auto Initialisation Complete.', 'pdfextended');
274
 
275
  if($gfpdfe_data->fresh_install === true)
276
  {
279
  self::notice($msg);
280
  }
281
 
282
+ public static function gf_pdf_merge_network_failure()
283
+ {
284
+ global $gfpdfe_data;
285
+
286
+ $prefix = self::autoprefix();
287
+ $errors = (array) $gfpdfe_data->network_error;
288
+
289
+ if(sizeof($errors) > 0)
290
+ {
291
+ $msg = $prefix . __('There was a problem merging the PDF templates folder on the following sites;', 'pdfextended');
292
+ $msg .= '<ul>';
293
+
294
+ $base_site_url = site_url();
295
+ foreach($errors as $site)
296
+ {
297
+ switch_to_blog( (int) $site['blog_id'] );
298
+ $url = str_replace($base_site_url, site_url(), PDF_SETTINGS_URL );
299
+ $msg .= "<li><a href='$url'>{$site['domain']}{$site['path']}</a></li>";
300
+ restore_current_blog();
301
+ }
302
+ $msg .= '</ul>';
303
+
304
+ $msg .= __('Follow the site links above and try run the PDF template merging function again, or reinitialise the software.', 'pdfextended');
305
+ }
306
+ else
307
+ {
308
+ $msg = $prefix . __('An unknown error occured while merging the PDF template folders. Please try again.', 'pdfextended');
309
+ }
310
+
311
+ self::error($msg);
312
+ }
313
+
314
  public static function gf_pdf_auto_deploy_network_failure()
315
  {
316
  global $gfpdfe_data;
344
  }
345
 
346
  public static function gf_pdf_deploy_success() {
347
+ $msg = __('You\'ve successfully initialised Gravity PDF.', 'pdfextended');
348
 
349
  self::notice($msg);
350
  }
361
  self::display_plugin_message($message, true);
362
  }
363
 
 
 
 
 
 
 
364
  public static function display_pdf_compatibility_error()
365
  {
366
  $message = __("PHP " . GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION . " or higher is required to use this plugin.", 'pdfextended');
helper/pdf-common.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: pdf-common.php
6
  *
7
  * This file holds a number of common functions used throughout the plugin
@@ -75,11 +75,11 @@ class PDF_Common
75
  }
76
 
77
  /*
78
- * Limit the size of the filename to 100 characters
79
  */
80
- if(strlen($pdf_name) > 150)
81
  {
82
- $pdf_name = substr($pdf_name, 0, 150);
83
  }
84
 
85
  /*
@@ -94,21 +94,30 @@ class PDF_Common
94
  /*
95
  * Remove any invalid (mostly Windows) characters from filename
96
  */
97
- $pdf_name = str_replace('/', '-', $pdf_name);
98
- $pdf_name = str_replace('\\', '-', $pdf_name);
99
- $pdf_name = str_replace('"', '-', $pdf_name);
100
- $pdf_name = str_replace('*', '-', $pdf_name);
101
- $pdf_name = str_replace('?', '-', $pdf_name);
102
- $pdf_name = str_replace('|', '-', $pdf_name);
103
- $pdf_name = str_replace(':', '-', $pdf_name);
104
- $pdf_name = str_replace('<', '-', $pdf_name);
105
- $pdf_name = str_replace('>', '-', $pdf_name);
106
- $pdf_name = str_replace('.', '_', $pdf_name);
107
-
108
  $pdf_name = $pdf_name . '.pdf';
109
 
110
  return $pdf_name;
111
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
112
 
113
  /*
114
  * Replace all the merge tag fields in the string
@@ -205,5 +214,60 @@ class PDF_Common
205
 
206
  return '';
207
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
208
  }
209
 
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: pdf-common.php
6
  *
7
  * This file holds a number of common functions used throughout the plugin
75
  }
76
 
77
  /*
78
+ * Limit the size of the filename to 120 characters
79
  */
80
+ if(strlen($pdf_name) > 120)
81
  {
82
+ $pdf_name = substr($pdf_name, 0, 120);
83
  }
84
 
85
  /*
94
  /*
95
  * Remove any invalid (mostly Windows) characters from filename
96
  */
97
+ $pdf_name = self::remove_invalid_characters($pdf_name);
 
 
 
 
 
 
 
 
 
 
98
  $pdf_name = $pdf_name . '.pdf';
99
 
100
  return $pdf_name;
101
  }
102
+
103
+ public static function remove_invalid_characters($name)
104
+ {
105
+ /*
106
+ * Remove any invalid (mostly Windows) characters from filename
107
+ */
108
+ $name = str_replace('/', '-', $name);
109
+ $name = str_replace('\\', '-', $name);
110
+ $name = str_replace('"', '-', $name);
111
+ $name = str_replace('*', '-', $name);
112
+ $name = str_replace('?', '-', $name);
113
+ $name = str_replace('|', '-', $name);
114
+ $name = str_replace(':', '-', $name);
115
+ $name = str_replace('<', '-', $name);
116
+ $name = str_replace('>', '-', $name);
117
+ $name = str_replace('.', '_', $name);
118
+
119
+ return $name;
120
+ }
121
 
122
  /*
123
  * Replace all the merge tag fields in the string
214
 
215
  return '';
216
  }
217
+
218
+ /**
219
+ * Gets the site name for use as a directory name
220
+ * @return String Returns the current 'safe' directory site name
221
+ */
222
+ public static function get_site_name()
223
+ {
224
+ $name = (is_ssl()) ? str_replace('https://', '', site_url()) : str_replace('http://', '', site_url());
225
+ return self::remove_invalid_characters($name);
226
+ }
227
+
228
+ /**
229
+ * Modified version of get_upload_dir() which just focuses on the base directory
230
+ * no matter if single or multisite installation
231
+ * We also only needed the basedir and baseurl so stripped out all the extras
232
+ * @return Array Base dir and url for the upload directory
233
+ */
234
+ public static function get_upload_dir()
235
+ {
236
+ $siteurl = get_option( 'siteurl' );
237
+ $upload_path = trim( get_option( 'upload_path' ) );
238
+
239
+ if ( empty( $upload_path ) || 'wp-content/uploads' == $upload_path ) {
240
+ $dir = WP_CONTENT_DIR . '/uploads';
241
+ } elseif ( 0 !== strpos( $upload_path, ABSPATH ) ) {
242
+ // $dir is absolute, $upload_path is (maybe) relative to ABSPATH
243
+ $dir = path_join( ABSPATH, $upload_path );
244
+ } else {
245
+ $dir = $upload_path;
246
+ }
247
+
248
+ if ( !$url = get_option( 'upload_url_path' ) ) {
249
+ if ( empty($upload_path) || ( 'wp-content/uploads' == $upload_path ) || ( $upload_path == $dir ) )
250
+ $url = WP_CONTENT_URL . '/uploads';
251
+ else
252
+ $url = trailingslashit( $siteurl ) . $upload_path;
253
+ }
254
+
255
+ /*
256
+ * Honor the value of UPLOADS. This happens as long as ms-files rewriting is disabled.
257
+ * We also sometimes obey UPLOADS when rewriting is enabled -- see the next block.
258
+ */
259
+ if ( defined( 'UPLOADS' ) && ! ( is_multisite() && get_site_option( 'ms_files_rewriting' ) ) ) {
260
+ $dir = ABSPATH . UPLOADS;
261
+ $url = trailingslashit( $siteurl ) . UPLOADS;
262
+ }
263
+
264
+ $basedir = $dir;
265
+ $baseurl = $url;
266
+
267
+ return array(
268
+ 'basedir' => $basedir,
269
+ 'baseurl' => $baseurl,
270
+ );
271
+ }
272
  }
273
 
helper/pdf-configuration-indexer.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  /**
4
  * Class: PDFGenerator
5
- * Plugin: Gravity Forms PDF Extended
6
  * Usage: assign options from user configuration file, automatically attach PDFs to specified Gravity Forms, and view PDF from admin area.
7
  */
8
 
@@ -39,7 +39,8 @@
39
 
40
  public function __construct()
41
  {
42
-
 
43
  /*
44
  * Do configuration pre-processing
45
  */
@@ -47,8 +48,8 @@
47
  /*
48
  * Check if user configuration file exists
49
  * If not disable $configuration and $index.
50
- */
51
- if(!file_exists(PDF_TEMPLATE_LOCATION.'configuration.php'))
52
  {
53
  $this->disabled = true;
54
  return;
@@ -58,7 +59,7 @@
58
  /*
59
  * Include the configuration file and set up the configuration variable.
60
  */
61
- require_once(PDF_TEMPLATE_LOCATION.'configuration.php');
62
  /*
63
  * $gf_pdf_config included from configuration.php file
64
  */
@@ -92,7 +93,7 @@
92
  {
93
  $config = array_replace_recursive($gf_pdf_default_configuration, $config);
94
  }
95
-
96
  return $config;
97
  }
98
 
@@ -175,7 +176,7 @@
175
 
176
  foreach($indexes as $index)
177
  {
178
- $config_nodes[] = $this->configuration[$index];
179
  }
180
 
181
  return $config_nodes;
@@ -242,12 +243,89 @@
242
  */
243
  return $this->configuration[$index[0]];
244
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
245
 
246
  /*
247
  * Search for the template from a given form id
248
  * Return: the first template found for the form
249
  */
250
- public function get_template($form_id, $return_all = false)
251
  {
252
  global $gf_pdf_default_configuration;
253
 
@@ -263,23 +341,6 @@
263
 
264
  if(isset($this->index[$form_id]))
265
  {
266
- /*
267
- * Show all PDF nodes
268
- */
269
- if($return_all === true && sizeof($this->index[$form_id]) > 1)
270
- {
271
-
272
- $templates = array();
273
- foreach($this->index[$form_id] as $id)
274
- {
275
- $templates[$id] = array(
276
- 'template' => (isset($this->configuration[$id]['template'])) ? $this->configuration[$id]['template'] : $default_template,
277
- 'filename' => (isset($this->configuration[$id]['filename'])) ? $this->configuration[$id]['filename'] : PDF_Common::get_pdf_filename($form_id, '{entry_id}')
278
- );
279
- }
280
- return $templates;
281
- }
282
-
283
  /*
284
  * Check if PDF template is avaliable
285
  */
@@ -307,8 +368,7 @@
307
  }
308
 
309
  if( (strlen($template) == 0) && (GFPDF_SET_DEFAULT_TEMPLATE === true))
310
- {
311
-
312
  /*
313
  * Check if a default configuration is defined
314
  */
@@ -321,11 +381,11 @@
321
 
322
  }
323
 
324
- public function get_pdf_name($index, $form_id = false, $lead_id = false)
325
- {
326
- if(isset($this->configuration[$index]['filename']))
327
  {
328
- return PDF_Common::validate_pdf_name($this->configuration[$index]['filename'], $form_id, $lead_id);
329
  }
330
  else
331
  {
2
 
3
  /**
4
  * Class: PDFGenerator
5
+ * Plugin: Gravity PDF
6
  * Usage: assign options from user configuration file, automatically attach PDFs to specified Gravity Forms, and view PDF from admin area.
7
  */
8
 
39
 
40
  public function __construct()
41
  {
42
+ global $gfpdfe_data;
43
+
44
  /*
45
  * Do configuration pre-processing
46
  */
48
  /*
49
  * Check if user configuration file exists
50
  * If not disable $configuration and $index.
51
+ */
52
+ if(!file_exists( $gfpdfe_data->template_site_location . 'configuration.php') )
53
  {
54
  $this->disabled = true;
55
  return;
59
  /*
60
  * Include the configuration file and set up the configuration variable.
61
  */
62
+ require_once( $gfpdfe_data->template_site_location . 'configuration.php' );
63
  /*
64
  * $gf_pdf_config included from configuration.php file
65
  */
93
  {
94
  $config = array_replace_recursive($gf_pdf_default_configuration, $config);
95
  }
96
+
97
  return $config;
98
  }
99
 
176
 
177
  foreach($indexes as $index)
178
  {
179
+ $config_nodes[$index] = $this->configuration[$index];
180
  }
181
 
182
  return $config_nodes;
243
  */
244
  return $this->configuration[$index[0]];
245
  }
246
+
247
+ /**
248
+ * Gets the aid (a temporary ID assigned to config node clusters on a single form ) from the $config ID
249
+ * @param Integer $config_id The $this->configuration ID of the node
250
+ * @param Integer $form_id The Gravity Form ID
251
+ * @return Integer The configuration nodes aid (a temporary ID assigned to config node clusters on a single form )
252
+ */
253
+ public function get_aid($config_id, $form_id)
254
+ {
255
+ $index = self::index_lookup($config_id, $form_id);
256
+
257
+ if($index !== false)
258
+ {
259
+ return $index + 1;
260
+ }
261
+ }
262
+
263
+ /**
264
+ * Does a reverse look up on the $this->index using the $this->configuration ID
265
+ * @param Integer $config_id The $this->configuration ID of the node
266
+ * @return Integer The index ID
267
+ * @return Array If $form_id isn't passed an array of index IDs will always be returns
268
+ */
269
+ public function index_lookup($config_id, $form_id = false)
270
+ {
271
+ $config = $this->configuration[$config_id];
272
+
273
+ /*
274
+ * Check the configuration node actually exists
275
+ */
276
+ if(!is_array($config))
277
+ {
278
+ return false;
279
+ }
280
+
281
+ /* get the form ID */
282
+ $config_form_id = (!is_array($config['form_id'])) ? array($config['form_id']) : $config['form_id'];
283
+
284
+
285
+ /*
286
+ * If $form_id is set and inside the config node array we will do a search on it
287
+ */
288
+ if($form_id && in_array($form_id, $config_form_id) && isset($this->index[$form_id]))
289
+ {
290
+ /* return the array key, or false */
291
+ return array_search($config_id, $this->index[$form_id]);
292
+ }
293
+
294
+ /*
295
+ * Loop through the form IDs and return all indexes associated with it
296
+ */
297
+ $index_keys = array();
298
+ foreach($config_form_id as $f_id)
299
+ {
300
+ if(isset($this->index[$f_id]))
301
+ {
302
+ /*
303
+ * Search for the config ID in each form's index
304
+ */
305
+ $index_search = array_search($config_id, $this->index[$f_id]);
306
+ if($index_search !== false)
307
+ {
308
+ $index_keys[] = $index_search;
309
+ }
310
+ }
311
+ }
312
+
313
+ /*
314
+ * We have results so return them
315
+ */
316
+ if(sizeof($index_keys) > 0)
317
+ {
318
+ return $index_keys;
319
+ }
320
+
321
+ return false;
322
+ }
323
 
324
  /*
325
  * Search for the template from a given form id
326
  * Return: the first template found for the form
327
  */
328
+ public function get_template($form_id)
329
  {
330
  global $gf_pdf_default_configuration;
331
 
341
 
342
  if(isset($this->index[$form_id]))
343
  {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
344
  /*
345
  * Check if PDF template is avaliable
346
  */
368
  }
369
 
370
  if( (strlen($template) == 0) && (GFPDF_SET_DEFAULT_TEMPLATE === true))
371
+ {
 
372
  /*
373
  * Check if a default configuration is defined
374
  */
381
 
382
  }
383
 
384
+ public function get_pdf_name($id, $form_id = false, $lead_id = false)
385
+ {
386
+ if(isset($this->configuration[$id]['filename']))
387
  {
388
+ return PDF_Common::validate_pdf_name($this->configuration[$id]['filename'], $form_id, $lead_id);
389
  }
390
  else
391
  {
helper/pdf-entry-detail.php CHANGED
@@ -2,6 +2,13 @@
2
  if(!class_exists('GFPDFEntryDetail'))
3
  {
4
 
 
 
 
 
 
 
 
5
  add_filter('gfpdf_field_content', array('GFPDFEntryDetail', 'encode_tags'), 10, 2); /* encode shortcodes in user's response so they aren't converted later by do_shortcode */
6
  class GFPDFEntryDetail {
7
 
@@ -9,7 +16,7 @@ if(!class_exists('GFPDFEntryDetail'))
9
  static $fields;
10
 
11
  /* NEED THIS FUNCTION - BLD */
12
- public static function lead_detail_grid($form, $lead, $allow_display_empty_fields=false, $show_html=false, $show_page_name=false, $return=false, $show_section_breaks=false){
13
  $form_id = $form['id'];
14
  $results = array();
15
 
@@ -44,6 +51,14 @@ if(!class_exists('GFPDFEntryDetail'))
44
  continue;
45
  }
46
 
 
 
 
 
 
 
 
 
47
  /*
48
  * Check if we are to show the page names
49
  */
@@ -554,7 +569,7 @@ if(!class_exists('GFPDFEntryDetail'))
554
  $likert['col'][$col['value']] = $col['text'];
555
  }
556
 
557
- if(sizeof($field['inputs']) > 0)
558
  {
559
  /* do our multi-row likert */
560
  foreach($field['inputs'] as $row)
@@ -754,18 +769,13 @@ if(!class_exists('GFPDFEntryDetail'))
754
  }
755
 
756
  $form_array['survey']['global'] = self::get_addon_global_data($form, array());
757
-
758
-
759
-
760
- $results = self::get_addon_global_data($form, array());
761
-
762
  $form_fields = self::$fields;
763
 
764
  /*
765
  * Convert the array keys into their text counterparts
766
  * Loop through the global survey data
767
  */
768
- foreach($results['field_data'] as $id => &$choices)
769
  {
770
  /* get the $field */
771
  $field = $form_fields[$id];
@@ -794,11 +804,7 @@ if(!class_exists('GFPDFEntryDetail'))
794
  {
795
  $choices = self::replace_key($choices, $choice['value'], $choice['text']);
796
  }
797
- }
798
-
799
- $form_array['survey']['global'] = $results;
800
-
801
-
802
 
803
  return $form_array;
804
 
@@ -806,7 +812,7 @@ if(!class_exists('GFPDFEntryDetail'))
806
 
807
  private static function replace_key($array, $key, $text)
808
  {
809
- if(isset($array[$key]))
810
  {
811
  /* replace the array key with the actual field name */
812
  $array[$text] = $array[$key];
@@ -832,9 +838,9 @@ if(!class_exists('GFPDFEntryDetail'))
832
 
833
  if ($count_quiz_fields > 0)
834
  {
835
- $form_array['quiz']['config']['grading'] = $form['gravityformsquiz']['grading'];
836
- $form_array['quiz']['config']['passPercent'] = $form['gravityformsquiz']['passPercent'];
837
- $form_array['quiz']['config']['grades'] = $form['gravityformsquiz']['grades'];
838
 
839
  $form_array['quiz']['results']['score'] = rgar($lead, 'gquiz_score');
840
  $form_array['quiz']['results']['percent'] = rgar($lead, 'gquiz_percent');
@@ -1104,7 +1110,7 @@ if(!class_exists('GFPDFEntryDetail'))
1104
 
1105
  private static function get_product_array($form, $lead, $has_product_fields, $form_array)
1106
  {
1107
-
1108
 
1109
  if($has_product_fields) {
1110
  $products = GFCommon::get_product_fields($form, $lead, true);
@@ -1139,26 +1145,44 @@ if(!class_exists('GFPDFEntryDetail'))
1139
  /*
1140
  * Check if we should include options
1141
  */
1142
- $options = isset($product['options']) ? $product['options'] : '';
 
 
 
 
 
 
 
 
 
 
 
1143
 
1144
  /*
1145
  * Store product in $form_array array
1146
  */
1147
  $form_array['products'][$id] = array(
1148
- 'name' => esc_html($product['name']),
1149
- 'price' => esc_html($product['price']),
1150
- 'options' => $options,
1151
- 'quantity' => $product['quantity'],
1152
- 'subtotal' => $subtotal);
 
 
1153
  }
1154
 
1155
  /* Increment total */
1156
  $total += floatval($products['shipping']['price']);
 
1157
 
1158
  /* add totals to form data */
1159
  $form_array['products_totals'] = array(
1160
- 'shipping' => $products['shipping']['price'],
1161
- 'total' => $total
 
 
 
 
1162
  );
1163
  }
1164
  }
@@ -1176,10 +1200,11 @@ if(!class_exists('GFPDFEntryDetail'))
1176
  if(is_array($value)){
1177
  $prefix = trim(rgget($field['id'] . '.2', $value));
1178
  $first = trim(rgget($field['id'] . '.3', $value));
 
1179
  $last = trim(rgget($field['id'] . '.6', $value));
1180
  $suffix = trim(rgget($field['id'] . '.8', $value));
1181
 
1182
- return array('prefix' => $prefix, 'first' => $first, 'last' => $last, 'suffix' => $suffix);
1183
  }
1184
  else{
1185
  return $value;
@@ -1353,7 +1378,7 @@ if(!class_exists('GFPDFEntryDetail'))
1353
  break;
1354
 
1355
  case 'number' :
1356
- return self::format_number($value, rgar($field, 'numberFormat'));
1357
  break;
1358
 
1359
  case 'singleshipping' :
@@ -1369,7 +1394,7 @@ if(!class_exists('GFPDFEntryDetail'))
1369
 
1370
  $has_columns = is_array($value[0]);
1371
 
1372
- if(!$has_columns){
1373
  $items = array();
1374
  foreach($value as $key => $item){
1375
  if(!empty($item)){
@@ -1406,8 +1431,15 @@ if(!class_exists('GFPDFEntryDetail'))
1406
  else if($media == 'email'){
1407
  return $items;
1408
  }
1409
- else{
1410
- return $items;
 
 
 
 
 
 
 
1411
  }
1412
  }
1413
  else if(is_array($value)){
@@ -1436,6 +1468,7 @@ if(!class_exists('GFPDFEntryDetail'))
1436
  break;
1437
 
1438
  default :
 
1439
  if($media == 'email'){
1440
  $list = '<table autosize="1" class="gfield_list" style="border-top: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; border-spacing: 0; padding: 0; margin: 2px 0 6px; width: 100%"><thead><tr>';
1441
 
@@ -1507,11 +1540,13 @@ if(!class_exists('GFPDFEntryDetail'))
1507
  if(is_array($value)){
1508
  $prefix = trim(rgget($field['id'] . '.2', $value));
1509
  $first = trim(rgget($field['id'] . '.3', $value));
 
1510
  $last = trim(rgget($field['id'] . '.6', $value));
1511
  $suffix = trim(rgget($field['id'] . '.8', $value));
1512
 
1513
  $name = $prefix;
1514
  $name .= !empty($name) && !empty($first) ? " $first" : $first;
 
1515
  $name .= !empty($name) && !empty($last) ? " $last" : $last;
1516
  $name .= !empty($name) && !empty($suffix) ? " $suffix" : $suffix;
1517
 
@@ -1717,7 +1752,7 @@ if(!class_exists('GFPDFEntryDetail'))
1717
  break;
1718
 
1719
  case 'number' :
1720
- return self::format_number($value, rgar($field, 'numberFormat'));
1721
  break;
1722
 
1723
  case 'singleshipping' :
@@ -1856,50 +1891,6 @@ if(!class_exists('GFPDFEntryDetail'))
1856
  }
1857
  }
1858
 
1859
- /**
1860
- * Format Gravity Form's three number types
1861
- * @param float $number The number field value to process
1862
- * @param string $number_format The number type a user selects in the form editor
1863
- * @return float Correctly formated number
1864
- */
1865
- private static function format_number($number, $number_format){
1866
- if(!is_numeric($number))
1867
- return $number;
1868
-
1869
- //replacing commas with dots and dots with commas
1870
- switch($number_format)
1871
- {
1872
- case 'decimal_comma':
1873
- $number = self::reformat_number(number_format($number, '2', ',', '.'));
1874
- break;
1875
-
1876
- case 'decimal_dot':
1877
- $number = self::reformat_number(number_format($number, '2'));
1878
-
1879
- break;
1880
-
1881
- case 'currency':
1882
- /* get the GF currency and convert number to money */
1883
- $number = GFCommon::to_money($number);
1884
- break;
1885
- }
1886
-
1887
- return $number;
1888
- }
1889
-
1890
- /**
1891
- * Remove the .00 or ,00 decimal from the end of the number format
1892
- * @param float $number number to manipulate
1893
- * @return float processed number
1894
- */
1895
- private static function reformat_number($number)
1896
- {
1897
- if(substr($number, -2) == '00')
1898
- {
1899
- return substr($number, 0, -3);
1900
- }
1901
- return $number;
1902
- }
1903
 
1904
  public static function encode_tags($content, $field)
1905
  {
2
  if(!class_exists('GFPDFEntryDetail'))
3
  {
4
 
5
+ /*
6
+ * Include Gravity Forms Currency class (it not already included)
7
+ */
8
+ if ( false === class_exists( 'RGCurrency' ) ) {
9
+ require_once( GFCommon::get_base_path() . '/currency.php' );
10
+ }
11
+
12
  add_filter('gfpdf_field_content', array('GFPDFEntryDetail', 'encode_tags'), 10, 2); /* encode shortcodes in user's response so they aren't converted later by do_shortcode */
13
  class GFPDFEntryDetail {
14
 
16
  static $fields;
17
 
18
  /* NEED THIS FUNCTION - BLD */
19
+ public static function lead_detail_grid($form, $lead, $allow_display_empty_fields=false, $show_html=false, $show_page_name=false, $return=false, $show_section_breaks=false) {
20
  $form_id = $form['id'];
21
  $results = array();
22
 
51
  continue;
52
  }
53
 
54
+ /*
55
+ * Skip over hidden fields
56
+ */
57
+ if(GFFormsModel::is_field_hidden( $form, $field, array(), $lead ))
58
+ {
59
+ continue;
60
+ }
61
+
62
  /*
63
  * Check if we are to show the page names
64
  */
569
  $likert['col'][$col['value']] = $col['text'];
570
  }
571
 
572
+ if(is_array($field['inputs']) && sizeof($field['inputs']) > 0)
573
  {
574
  /* do our multi-row likert */
575
  foreach($field['inputs'] as $row)
769
  }
770
 
771
  $form_array['survey']['global'] = self::get_addon_global_data($form, array());
 
 
 
 
 
772
  $form_fields = self::$fields;
773
 
774
  /*
775
  * Convert the array keys into their text counterparts
776
  * Loop through the global survey data
777
  */
778
+ foreach($form_array['survey']['global']['field_data'] as $id => &$choices)
779
  {
780
  /* get the $field */
781
  $field = $form_fields[$id];
804
  {
805
  $choices = self::replace_key($choices, $choice['value'], $choice['text']);
806
  }
807
+ }
 
 
 
 
808
 
809
  return $form_array;
810
 
812
 
813
  private static function replace_key($array, $key, $text)
814
  {
815
+ if($key != $text && isset($array[$key]))
816
  {
817
  /* replace the array key with the actual field name */
818
  $array[$text] = $array[$key];
838
 
839
  if ($count_quiz_fields > 0)
840
  {
841
+ $form_array['quiz']['config']['grading'] = (isset($form['gravityformsquiz']['grading'])) ? $form['gravityformsquiz']['grading'] : '';
842
+ $form_array['quiz']['config']['passPercent'] = (isset($form['gravityformsquiz']['passPercent'])) ? $form['gravityformsquiz']['passPercent'] : '';
843
+ $form_array['quiz']['config']['grades'] = (isset($form['gravityformsquiz']['grades'])) ? $form['gravityformsquiz']['grades'] : '';
844
 
845
  $form_array['quiz']['results']['score'] = rgar($lead, 'gquiz_score');
846
  $form_array['quiz']['results']['percent'] = rgar($lead, 'gquiz_percent');
1110
 
1111
  private static function get_product_array($form, $lead, $has_product_fields, $form_array)
1112
  {
1113
+ $currency_format = GFCommon::is_currency_decimal_dot() ? 'decimal_dot' : 'decimal_comma';
1114
 
1115
  if($has_product_fields) {
1116
  $products = GFCommon::get_product_fields($form, $lead, true);
1145
  /*
1146
  * Check if we should include options
1147
  */
1148
+ $options = isset($product['options']) ? $product['options'] : array();
1149
+
1150
+ /*
1151
+ * Add formated price for each product option
1152
+ */
1153
+ foreach($options as &$o)
1154
+ {
1155
+ if(is_numeric($o['price']))
1156
+ {
1157
+ $o['price_formatted'] = GFCommon::format_number($o['price'], 'currency');
1158
+ }
1159
+ }
1160
 
1161
  /*
1162
  * Store product in $form_array array
1163
  */
1164
  $form_array['products'][$id] = array(
1165
+ 'name' => esc_html($product['name']),
1166
+ 'price' => esc_html($product['price']),
1167
+ 'price_unformatted' => GFCommon::clean_number($product['price'], $currency_format),
1168
+ 'options' => $options,
1169
+ 'quantity' => $product['quantity'],
1170
+ 'subtotal' => $subtotal,
1171
+ 'subtotal_formatted' => GFCommon::format_number($subtotal, 'currency'));
1172
  }
1173
 
1174
  /* Increment total */
1175
  $total += floatval($products['shipping']['price']);
1176
+ $subtotal = $total - floatval($products['shipping']['price']);
1177
 
1178
  /* add totals to form data */
1179
  $form_array['products_totals'] = array(
1180
+ 'subtotal' => $subtotal,
1181
+ 'shipping' => $products['shipping']['price'],
1182
+ 'total' => $total,
1183
+ 'shipping_formatted' => GFCommon::format_number($products['shipping']['price'], 'currency'),
1184
+ 'subtotal_formatted' => GFCommon::format_number($subtotal, 'currency'),
1185
+ 'total_formatted' => GFCommon::format_number($total, 'currency'),
1186
  );
1187
  }
1188
  }
1200
  if(is_array($value)){
1201
  $prefix = trim(rgget($field['id'] . '.2', $value));
1202
  $first = trim(rgget($field['id'] . '.3', $value));
1203
+ $middle = trim(rgget($field['id'] . '.4', $value));
1204
  $last = trim(rgget($field['id'] . '.6', $value));
1205
  $suffix = trim(rgget($field['id'] . '.8', $value));
1206
 
1207
+ return array('prefix' => $prefix, 'first' => $first, 'middle' => $middle, 'last' => $last, 'suffix' => $suffix);
1208
  }
1209
  else{
1210
  return $value;
1378
  break;
1379
 
1380
  case 'number' :
1381
+ return GFCommon::format_number($value, rgar($field, 'numberFormat'));
1382
  break;
1383
 
1384
  case 'singleshipping' :
1394
 
1395
  $has_columns = is_array($value[0]);
1396
 
1397
+ if(!$has_columns){
1398
  $items = array();
1399
  foreach($value as $key => $item){
1400
  if(!empty($item)){
1431
  else if($media == 'email'){
1432
  return $items;
1433
  }
1434
+ else {
1435
+ $list = '<table autosize="1" class="gfield_list" style="border-top: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; border-spacing: 0; padding: 0; margin: 2px 0 6px; width: 100%">';
1436
+ foreach($items as $i)
1437
+ {
1438
+ $list .= '<tr><td>' . $i .'</td></tr>';
1439
+ }
1440
+ $list .= '</table>';
1441
+
1442
+ return $list;
1443
  }
1444
  }
1445
  else if(is_array($value)){
1468
  break;
1469
 
1470
  default :
1471
+
1472
  if($media == 'email'){
1473
  $list = '<table autosize="1" class="gfield_list" style="border-top: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; border-spacing: 0; padding: 0; margin: 2px 0 6px; width: 100%"><thead><tr>';
1474
 
1540
  if(is_array($value)){
1541
  $prefix = trim(rgget($field['id'] . '.2', $value));
1542
  $first = trim(rgget($field['id'] . '.3', $value));
1543
+ $middle = trim(rgget($field['id'] . '.4', $value));
1544
  $last = trim(rgget($field['id'] . '.6', $value));
1545
  $suffix = trim(rgget($field['id'] . '.8', $value));
1546
 
1547
  $name = $prefix;
1548
  $name .= !empty($name) && !empty($first) ? " $first" : $first;
1549
+ $name .= !empty($name) && !empty($middle) ? " $middle" : $middle;
1550
  $name .= !empty($name) && !empty($last) ? " $last" : $last;
1551
  $name .= !empty($name) && !empty($suffix) ? " $suffix" : $suffix;
1552
 
1752
  break;
1753
 
1754
  case 'number' :
1755
+ return GFCommon::format_number($value, rgar($field, 'numberFormat'));
1756
  break;
1757
 
1758
  case 'singleshipping' :
1891
  }
1892
  }
1893
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1894
 
1895
  public static function encode_tags($content, $field)
1896
  {
helper/pdf-render.php CHANGED
@@ -8,7 +8,7 @@ class PDFRender
8
  * var $form_id integer: The form id
9
  * var $lead_id integer: The entry id
10
  * var $output string: either view, save or download
11
- * save will save a copy of the PDF to the server using the PDF_SAVE_LOCATION constant
12
  * var $return boolean: if set to true
13
  * it will return the path of the saved PDF
14
  * var $template string: if you want to use multiple PDF templates - name of the template file
@@ -42,12 +42,12 @@ class PDFRender
42
  /*
43
  * Check if the PDF exists and if this function has already run this season
44
  */
45
- if(in_array($lead_id, $pdf_creator) && file_exists(PDF_SAVE_LOCATION.$id.'/'. $filename))
46
  {
47
  /*
48
  * Don't generate a new PDF, use the existing one
49
  */
50
- return PDF_SAVE_LOCATION.$id.'/'. $filename;
51
  }
52
 
53
  /*
@@ -101,26 +101,28 @@ class PDFRender
101
  */
102
  private function load_entry_data($template)
103
  {
 
 
104
  /* set up contstants for gravity forms to use so we can override the security on the printed version */
105
- if(file_exists(PDF_TEMPLATE_LOCATION.$template))
106
- {
107
- return PDF_Common::get_html_template(PDF_TEMPLATE_LOCATION.$template);
108
  }
109
  else
110
  {
111
  /*
112
  * Check if template file exists in the plugin's core template folder
113
  */
114
- if(file_exists(PDF_PLUGIN_DIR."templates/" . $template))
115
  {
116
- return PDF_Common::get_html_template(PDF_PLUGIN_DIR."initialisation/templates/" . $template);
117
  }
118
  /*
119
  * If template not found then we will resort to the default template.
120
  */
121
  else
122
  {
123
- return PDF_Common::get_html_template(PDF_PLUGIN_DIR."initialisation/templates/" . PDFGenerator::$default['template']);
124
  }
125
  }
126
  }
@@ -190,7 +192,7 @@ class PDFRender
190
  /*
191
  * Set Creator Meta Data
192
  */
193
- $mpdf->SetCreator('Gravity Forms PDF Extended v'. PDF_EXTENDED_VERSION.'. http://gravityformspdfextended.com');
194
 
195
  /*
196
  * Set PDF DPI if added to configuration node
@@ -215,9 +217,9 @@ class PDFRender
215
  */
216
  if($arguments['security'] === true && $arguments['pdfa1b'] === false && $arguments['pdfx1a'] === false )
217
  {
218
- $password = (strlen($arguments['pdf_password']) > 0) ? $arguments['pdf_password'] : '';
219
  $master_password = (strlen($arguments['pdf_master_password']) > 0) ? $arguments['pdf_master_password'] : null;
220
- $pdf_privileges = (is_array($arguments['pdf_privileges'])) ? $arguments['pdf_privileges'] : array();
221
 
222
  $mpdf->SetProtection($pdf_privileges, $password, $master_password, 128);
223
  }
@@ -225,13 +227,13 @@ class PDFRender
225
  /* PDF/A1-b support added in v3.4.0 */
226
  if($arguments['pdfa1b'] === true)
227
  {
228
- $mpdf->PDFA = true;
229
- $mpdf->PDFAauto = true;
230
  }
231
  else if($arguments['pdfx1a'] === true) /* PDF/X-1a support added in v3.4.0 */
232
  {
233
- $mpdf->PDFX = true;
234
- $mpdf->PDFXauto = true;
235
  }
236
 
237
  /*
@@ -292,17 +294,19 @@ class PDFRender
292
  */
293
  public function savePDF($pdf, $filename, $id)
294
  {
 
 
295
  /* create unique folder for PDFs */
296
- if(!is_dir(PDF_SAVE_LOCATION.$id))
297
  {
298
- if(!mkdir(PDF_SAVE_LOCATION.$id))
299
  {
300
- trigger_error('Could not create PDF folder in '. PDF_SAVE_LOCATION.$id, E_USER_WARNING);
301
  return;
302
  }
303
  }
304
 
305
- $pdf_save = PDF_SAVE_LOCATION.$id.'/'. $filename;
306
 
307
  if(!file_put_contents($pdf_save, $pdf))
308
  {
8
  * var $form_id integer: The form id
9
  * var $lead_id integer: The entry id
10
  * var $output string: either view, save or download
11
+ * save will save a copy of the PDF to the server using the $gfpdfe_data->template_save_location variable
12
  * var $return boolean: if set to true
13
  * it will return the path of the saved PDF
14
  * var $template string: if you want to use multiple PDF templates - name of the template file
42
  /*
43
  * Check if the PDF exists and if this function has already run this season
44
  */
45
+ if(in_array($lead_id, $pdf_creator) && file_exists($gfpdfe_data->template_save_location . $id . '/' . $filename))
46
  {
47
  /*
48
  * Don't generate a new PDF, use the existing one
49
  */
50
+ return $gfpdfe_data->template_save_location . $id . '/' . $filename;
51
  }
52
 
53
  /*
101
  */
102
  private function load_entry_data($template)
103
  {
104
+ global $gfpdfe_data;
105
+
106
  /* set up contstants for gravity forms to use so we can override the security on the printed version */
107
+ if(file_exists( $gfpdfe_data->template_site_location . $template))
108
+ {
109
+ return PDF_Common::get_html_template($gfpdfe_data->template_site_location . $template);
110
  }
111
  else
112
  {
113
  /*
114
  * Check if template file exists in the plugin's core template folder
115
  */
116
+ if(file_exists( PDF_PLUGIN_DIR . 'templates/' . $template))
117
  {
118
+ return PDF_Common::get_html_template( PDF_PLUGIN_DIR . 'initialisation/templates/' . $template);
119
  }
120
  /*
121
  * If template not found then we will resort to the default template.
122
  */
123
  else
124
  {
125
+ return PDF_Common::get_html_template(PDF_PLUGIN_DIR . 'initialisation/templates/' . PDFGenerator::$default['template']);
126
  }
127
  }
128
  }
192
  /*
193
  * Set Creator Meta Data
194
  */
195
+ $mpdf->SetCreator('Gravity PDF v' . PDF_EXTENDED_VERSION . '. https://gravitypdf.com');
196
 
197
  /*
198
  * Set PDF DPI if added to configuration node
217
  */
218
  if($arguments['security'] === true && $arguments['pdfa1b'] === false && $arguments['pdfx1a'] === false )
219
  {
220
+ $password = (strlen($arguments['pdf_password']) > 0) ? $arguments['pdf_password'] : '';
221
  $master_password = (strlen($arguments['pdf_master_password']) > 0) ? $arguments['pdf_master_password'] : null;
222
+ $pdf_privileges = (is_array($arguments['pdf_privileges'])) ? $arguments['pdf_privileges'] : array();
223
 
224
  $mpdf->SetProtection($pdf_privileges, $password, $master_password, 128);
225
  }
227
  /* PDF/A1-b support added in v3.4.0 */
228
  if($arguments['pdfa1b'] === true)
229
  {
230
+ $mpdf->PDFA = true;
231
+ $mpdf->PDFAauto = true;
232
  }
233
  else if($arguments['pdfx1a'] === true) /* PDF/X-1a support added in v3.4.0 */
234
  {
235
+ $mpdf->PDFX = true;
236
+ $mpdf->PDFXauto = true;
237
  }
238
 
239
  /*
294
  */
295
  public function savePDF($pdf, $filename, $id)
296
  {
297
+ global $gfpdfe_data;
298
+
299
  /* create unique folder for PDFs */
300
+ if(!is_dir( $gfpdfe_data->template_save_location . $id))
301
  {
302
+ if(!mkdir( $gfpdfe_data->template_save_location . $id))
303
  {
304
+ trigger_error('Could not create PDF folder in '. $gfpdfe_data->template_save_location . $id, E_USER_WARNING);
305
  return;
306
  }
307
  }
308
 
309
+ $pdf_save = $gfpdfe_data->template_save_location . $id . '/' . $filename;
310
 
311
  if(!file_put_contents($pdf_save, $pdf))
312
  {
initialisation/configuration.php.example CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
  /*
4
- * Gravity Forms PDF Extended Configuration
5
  * New from v3.0.0. No longer is theme functions.php code required.
6
- * Important documentation on the configuration found at http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/
7
  */
8
 
9
  /*
@@ -95,7 +95,7 @@
95
  * Custom Template
96
  * Don't want to use a custom template? Just pass the custom template name to the configuration.
97
  * template String. Default default-template.php. The name of your custom template that's placed in your active theme's PDF_EXTENDED_TEMPLATES folder.
98
- * For more information about creating custom templates please see http://gravityformspdfextended.com/documentation-v3-x-x/templates/
99
  */
100
  /*$gf_pdf_config[] = array(
101
  'form_id' => 1,
@@ -368,7 +368,7 @@
368
 
369
  /* ---------------------------------------------------------------
370
  * CUSTOM PDF SETUP BELOW.
371
- * See http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/#constants for more details
372
  */
373
 
374
  /*
1
  <?php
2
 
3
  /*
4
+ * Gravity PDF Configuration
5
  * New from v3.0.0. No longer is theme functions.php code required.
6
+ * Important documentation on the configuration found at https://developer.gravitypdf.com/documentation/getting-started-with-gravity-pdf-configuration/
7
  */
8
 
9
  /*
95
  * Custom Template
96
  * Don't want to use a custom template? Just pass the custom template name to the configuration.
97
  * template String. Default default-template.php. The name of your custom template that's placed in your active theme's PDF_EXTENDED_TEMPLATES folder.
98
+ * For more information about creating custom templates please see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
99
  */
100
  /*$gf_pdf_config[] = array(
101
  'form_id' => 1,
368
 
369
  /* ---------------------------------------------------------------
370
  * CUSTOM PDF SETUP BELOW.
371
+ * See https://developer.gravitypdf.com/documentation/configuration-options-examples/#constants for more details
372
  */
373
 
374
  /*
initialisation/template.css CHANGED
@@ -40,7 +40,7 @@ h2.default {
40
  .entry-view-field-value div.strong {
41
  font-weight: bold;
42
  }
43
- .no-style .entry-view-field-value, .no-style #container, .no-style h2 {
44
  background: none;
45
  border: none;
46
  }
40
  .entry-view-field-value div.strong {
41
  font-weight: bold;
42
  }
43
+ .no-style .entry-view-field-value, .no-style #container, .no-style h2, .no-style .entry-view-html-value {
44
  background: none;
45
  border: none;
46
  }
initialisation/templates/default-template-no-style.php CHANGED
@@ -24,7 +24,7 @@ $form = RGFormsModel::get_form_meta($form_id);
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
- <title>Gravity Forms PDF Extended</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
+ <title>Gravity PDF</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
initialisation/templates/default-template-two-rows.php CHANGED
@@ -24,7 +24,7 @@ $form = RGFormsModel::get_form_meta($form_id);
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
- <title>Gravity Forms PDF Extended</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
+ <title>Gravity PDF</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
initialisation/templates/default-template.php CHANGED
@@ -24,7 +24,7 @@ $form = RGFormsModel::get_form_meta($form_id);
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
- <title>Gravity Forms PDF Extended</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
24
  <head>
25
  <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?>/css/print.css" type="text/css" />
26
  <link rel='stylesheet' href='<?php echo PDF_PLUGIN_URL .'initialisation/template.css'; ?>' type='text/css' />
27
+ <title>Gravity PDF</title>
28
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
29
  </head>
30
  <body>
initialisation/templates/example-advanced-headers_07.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
@@ -45,7 +45,7 @@ $form = RGFormsModel::get_form_meta($form_id);
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
@@ -58,40 +58,27 @@ $form = RGFormsModel::get_form_meta($form_id);
58
 
59
  <htmlpageheader name="myHTMLHeader1">
60
  <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
61
- <td width="50%">Left header p <span style="font-size:14pt;">{PAGENO}</span></td>
62
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader1</span></td>
63
  </tr></table>
64
  </htmlpageheader>
65
 
66
- <htmlpageheader name="myHTMLHeader1Even">
67
- <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
68
- <td width="50%"><span style="font-weight: bold;">myHTMLHeader1Even</span></td>
69
- <td width="50%" style="text-align: right;">Inner header p <span style="font-size:14pt;">{PAGENO}</span></td>
70
- </tr></table>
71
- </htmlpageheader>
72
-
73
  <htmlpageheader name="myHTMLHeader2">
74
- <table width="100%" style="border-bottom: 1px solid #880000; vertical-align: bottom; font-family: sans; font-size: 9pt; color: #880000;"><tr>
75
- <td width="50%">myHTMLHeader2 p.<span style="font-size:14pt;">{PAGENO}</span></td>
76
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader2</span></td>
77
  </tr></table>
78
  </htmlpageheader>
79
 
80
- <htmlpageheader name="myHTMLHeader2Even">
81
- <table width="100%" style="border-bottom: 1px solid #880000; vertical-align: bottom; font-family: sans; font-size: 9pt; color: #880000;"><tr>
82
- <td width="50%"><span style="font-weight: bold;">myHTMLHeader2Even</span></td>
83
- <td width="50%" style="text-align: right;">Inner header p <span style="font-size:14pt;">{PAGENO}</span></td>
84
- </tr></table>
85
- </htmlpageheader>
86
 
87
 
88
  <!-- set the headers/footers - they will occur from here on in the document -->
89
 
90
- <sethtmlpageheader name="myHTMLHeader1" page="O" value="on" show-this-page="1" />
91
- <sethtmlpageheader name="myHTMLHeader1Even" page="E" value="on" />
92
 
93
  <div>
94
- <img src="<?php echo PDF_PLUGIN_DIR; ?>/resources/images/gravityformspdfextended.jpg" width="311" height="110" />
95
  <h2>Advanced Headers</h2>
96
 
97
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
@@ -101,7 +88,9 @@ $form = RGFormsModel::get_form_meta($form_id);
101
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
102
 
103
  <!-- Note the html_ prefix when referencing an HTML header using one of the pagebreaks -->
104
- <pagebreak odd-header-name="html_myHTMLHeader2" odd-header-value="1" even-header-name="html_myHTMLHeader2Even" even-header-value="1" />
 
 
105
 
106
  <h2>Advanced Headers</h2>
107
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
@@ -117,5 +106,5 @@ $form = RGFormsModel::get_form_meta($form_id);
117
  ?>
118
 
119
  <?php } ?>
120
- </body>
121
  </html>
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
58
 
59
  <htmlpageheader name="myHTMLHeader1">
60
  <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
61
+ <td width="50%">First header p <span style="font-size:14pt;">{PAGENO}</span></td>
62
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader1</span></td>
63
  </tr></table>
64
  </htmlpageheader>
65
 
 
 
 
 
 
 
 
66
  <htmlpageheader name="myHTMLHeader2">
67
+ <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
68
+ <td width="50%">Second header p <span style="font-size:14pt;">{PAGENO}</span></td>
69
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader2</span></td>
70
  </tr></table>
71
  </htmlpageheader>
72
 
 
 
 
 
 
 
73
 
74
 
75
  <!-- set the headers/footers - they will occur from here on in the document -->
76
 
77
+ <sethtmlpageheader name="myHTMLHeader1" value="on" show-this-page="1" />
78
+
79
 
80
  <div>
81
+ <img src="<?php echo PDF_PLUGIN_DIR; ?>/resources/images/gravityformspdfextended.jpg" width="311" height="110" />
82
  <h2>Advanced Headers</h2>
83
 
84
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
88
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
89
 
90
  <!-- Note the html_ prefix when referencing an HTML header using one of the pagebreaks -->
91
+ <pagebreak />
92
+
93
+ <sethtmlpageheader name="myHTMLHeader2" value="on" show-this-page="1" />
94
 
95
  <h2>Advanced Headers</h2>
96
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
106
  ?>
107
 
108
  <?php } ?>
109
+ </body>
110
  </html>
initialisation/templates/example-backgrounds-and-borders02.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
@@ -88,7 +88,7 @@ $form = RGFormsModel::get_form_meta($form_id);
88
  * Store your form fields from the $form_data array into variables here
89
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
90
  *
91
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
92
  *
93
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
94
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
88
  * Store your form fields from the $form_data array into variables here
89
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
90
  *
91
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
92
  *
93
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
94
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
initialisation/templates/example-basic-html01.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
@@ -46,7 +46,7 @@ $form = RGFormsModel::get_form_meta($form_id);
46
  * Store your form fields from the $form_data array into variables here
47
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
48
  *
49
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
50
  *
51
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
52
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
@@ -75,7 +75,7 @@ $form = RGFormsModel::get_form_meta($form_id);
75
  Vestibulum elit. Vestibulum et arcu at diam mattis commodo. Nam ipsum sem,
76
  ultricies at, rutrum sit amet, posuere nec, velit. Sed molestie mollis dui.</pre>
77
  <div><a href="#top">Hyperlink (&lt;a&gt;)</a></div>
78
- <div><a href="http://www.gravityformspdfextended.com">Hyperlink (&lt;a&gt;)</a></div>
79
  <div>Styles - <tt>tt(teletype)</tt> <i>italic</i> <b>bold</b> <big>big</big> <small>small</small> <em>emphasis</em> <strong>strong</strong> <br />new lines<br>
80
  <code>code</code> <samp>sample</samp> <kbd>keyboard</kbd> <var>variable</var> <cite>citation</cite> <abbr>abbr.</abbr> <acronym>ACRONYM</acronym> <sup>sup</sup> <sub>sub</sub> <strike>strike</strike> <s>strike-s</s> <u>underline</u> <del>delete</del> <ins>insert</ins> <q>To be or not to be</q> <font face="sans-serif" color="#880000" size="5">font changing face, size and color</font>
81
  </div>
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
46
  * Store your form fields from the $form_data array into variables here
47
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
48
  *
49
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
50
  *
51
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
52
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
75
  Vestibulum elit. Vestibulum et arcu at diam mattis commodo. Nam ipsum sem,
76
  ultricies at, rutrum sit amet, posuere nec, velit. Sed molestie mollis dui.</pre>
77
  <div><a href="#top">Hyperlink (&lt;a&gt;)</a></div>
78
+ <div><a href="https://gravitypdf.com">Hyperlink (&lt;a&gt;)</a></div>
79
  <div>Styles - <tt>tt(teletype)</tt> <i>italic</i> <b>bold</b> <big>big</big> <small>small</small> <em>emphasis</em> <strong>strong</strong> <br />new lines<br>
80
  <code>code</code> <samp>sample</samp> <kbd>keyboard</kbd> <var>variable</var> <cite>citation</cite> <abbr>abbr.</abbr> <acronym>ACRONYM</acronym> <sup>sup</sup> <sub>sub</sub> <strike>strike</strike> <s>strike-s</s> <u>underline</u> <del>delete</del> <ins>insert</ins> <q>To be or not to be</q> <font face="sans-serif" color="#880000" size="5">font changing face, size and color</font>
81
  </div>
initialisation/templates/example-different-page-size_08.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
@@ -45,7 +45,7 @@ $form = RGFormsModel::get_form_meta($form_id);
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
@@ -58,7 +58,7 @@ $form = RGFormsModel::get_form_meta($form_id);
58
  /*
59
  * The initial page size is set using the 'page_size' configuration option
60
  * The default is A4 Portrait
61
- * See Configuration page for more details on page_size : http://gravityformspdfextended.com/documentation-v3-x-x/configuration-options-examples/
62
  */
63
  ?>
64
 
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
58
  /*
59
  * The initial page size is set using the 'page_size' configuration option
60
  * The default is A4 Portrait
61
+ * See Configuration page for more details on page_size : https://developer.gravitypdf.com/documentation/configuration-options-examples/
62
  */
63
  ?>
64
 
initialisation/templates/example-float-and-positioning05.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  <style>
31
  .gradient {
@@ -91,7 +91,7 @@ $form = RGFormsModel::get_form_meta($form_id);
91
  * Store your form fields from the $form_data array into variables here
92
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
93
  *
94
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
95
  *
96
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
97
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  <style>
31
  .gradient {
91
  * Store your form fields from the $form_data array into variables here
92
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
93
  *
94
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
95
  *
96
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
97
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
initialisation/templates/example-header-and-footer_06.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <?php
@@ -60,7 +60,7 @@ $form = RGFormsModel::get_form_meta($form_id);
60
  * Store your form fields from the $form_data array into variables here
61
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
62
  *
63
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
64
  *
65
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
66
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
@@ -74,7 +74,7 @@ $form = RGFormsModel::get_form_meta($form_id);
74
 
75
  <htmlpageheader name="myHTMLHeader1">
76
  <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
77
- <td width="50%">Left header p <span style="font-size:14pt;">{PAGENO}</span></td>
78
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader1</span></td>
79
  </tr></table>
80
  </htmlpageheader>
@@ -89,7 +89,7 @@ $form = RGFormsModel::get_form_meta($form_id);
89
  </htmlpagefooter>
90
 
91
  <div>
92
- <img src="<?php echo PDF_PLUGIN_DIR; ?>resources/images/gravityformspdfextended.jpg" width="311" height="110" />
93
  <h2>Basic Headers</h2>
94
 
95
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
@@ -105,5 +105,5 @@ $form = RGFormsModel::get_form_meta($form_id);
105
  </div>
106
 
107
  <?php } ?>
108
- </body>
109
  </html>
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <?php
60
  * Store your form fields from the $form_data array into variables here
61
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
62
  *
63
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
64
  *
65
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
66
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
74
 
75
  <htmlpageheader name="myHTMLHeader1">
76
  <table width="100%" style="border-bottom: 1px solid #000000; vertical-align: bottom; font-family: serif; font-size: 9pt; color: #000088;"><tr>
77
+ <td width="50%">Main Header p <span style="font-size:14pt;">{PAGENO}</span></td>
78
  <td width="50%" style="text-align: right;"><span style="font-weight: bold;">myHTMLHeader1</span></td>
79
  </tr></table>
80
  </htmlpageheader>
89
  </htmlpagefooter>
90
 
91
  <div>
92
+ <img src="<?php echo PDF_PLUGIN_DIR; ?>resources/images/gravityformspdfextended.jpg" width="311" height="110" />
93
  <h2>Basic Headers</h2>
94
 
95
  <p>Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis, malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>
105
  </div>
106
 
107
  <?php } ?>
108
+ </body>
109
  </html>
initialisation/templates/example-images03.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
@@ -51,7 +51,7 @@ $form = RGFormsModel::get_form_meta($form_id);
51
  * Store your form fields from the $form_data array into variables here
52
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
53
  *
54
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
55
  *
56
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
57
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
51
  * Store your form fields from the $form_data array into variables here
52
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
53
  *
54
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
55
  *
56
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
57
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
initialisation/templates/example-tables04.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
@@ -386,7 +386,7 @@ $form = RGFormsModel::get_form_meta($form_id);
386
  * Store your form fields from the $form_data array into variables here
387
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
388
  *
389
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
390
  *
391
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
392
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
 
31
  <style>
386
  * Store your form fields from the $form_data array into variables here
387
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
388
  *
389
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
390
  *
391
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
392
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
initialisation/templates/example-template.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
@@ -45,7 +45,7 @@ $form = RGFormsModel::get_form_meta($form_id);
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
@@ -66,9 +66,9 @@ $form = RGFormsModel::get_form_meta($form_id);
66
 
67
  <p class="whom_concern_intro">Dear User,</p>
68
 
69
- <p class="body_text">Gravity Forms PDF Extended allows you to directly access Gravity Form field data so you can create custom PDFs like this one.
70
- If you haven't reviewed our five part installation and configuration guide yet, we recommend <a target="_blank" href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/">taking a look</a>.
71
- There's also a <a target="_blank" href="http://gravityformspdfextended.com/documentation-v3-x-x/configuration-options-examples/">large number of configuration options</a> that can be applied to any PDF.</p>
72
  </p>
73
 
74
  <p class="body_text">Now you've got an understanding on configuring the software, let's take a look at custom templates.
@@ -79,13 +79,13 @@ $form = RGFormsModel::get_form_meta($form_id);
79
  <p class="body_text">Once you have your new template file open in your browser window you can access the $form_data array (which contains all the Gravity Form entry data) by appending the URL with &amp;data=1. <strong>Note: this only works if you copied a template file with example- in the name.</strong></p>
80
  <p><strong>Example:</strong> http://www.yourdomain.com/?gf_pdf=1&amp;fid=2&amp;lid=6&amp;template=new-example-template.php&amp;data=1 </p>
81
 
82
- <p>For more information about custom templates <a target="_blank" href="http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/">review the plugin's documentation</a><br /><br />
83
  </p>
84
  <p class="signature">
85
  Jake Jackson<br />
86
  <img src="<?php echo PDF_PLUGIN_DIR ?>resources/images/signature.png" alt="Signature" width="100" height="60" /><br />
87
- Developer, Gravity Forms PDF Extended<br />
88
- <a target="_blank" href="http://www.gravityformspdfextended.com">www.gravityformspdfextended.com</a>
89
  </p>
90
 
91
  </div>
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
66
 
67
  <p class="whom_concern_intro">Dear User,</p>
68
 
69
+ <p class="body_text">Gravity PDF allows you to directly access Gravity Form field data so you can create custom PDFs like this one.
70
+ If you haven't reviewed our five part installation and configuration guide yet, we recommend <a target="_blank" href="https://developer.gravitypdf.com/documentation/getting-started-with-gravity-pdf-configuration/">taking a look</a>.
71
+ There's also a <a target="_blank" href="https://developer.gravitypdf.com/documentation/configuration-options-examples/">large number of configuration options</a> that can be applied to any PDF.</p>
72
  </p>
73
 
74
  <p class="body_text">Now you've got an understanding on configuring the software, let's take a look at custom templates.
79
  <p class="body_text">Once you have your new template file open in your browser window you can access the $form_data array (which contains all the Gravity Form entry data) by appending the URL with &amp;data=1. <strong>Note: this only works if you copied a template file with example- in the name.</strong></p>
80
  <p><strong>Example:</strong> http://www.yourdomain.com/?gf_pdf=1&amp;fid=2&amp;lid=6&amp;template=new-example-template.php&amp;data=1 </p>
81
 
82
+ <p>For more information about custom templates <a target="_blank" href="https://developer.gravitypdf.com/documentation/custom-templates-introduction/">review the plugin's documentation</a><br /><br />
83
  </p>
84
  <p class="signature">
85
  Jake Jackson<br />
86
  <img src="<?php echo PDF_PLUGIN_DIR ?>resources/images/signature.png" alt="Signature" width="100" height="60" /><br />
87
+ Developer, Gravity PDF<br />
88
+ <a target="_blank" href="http://gravitypdf.com">gravitypdf.com</a>
89
  </p>
90
 
91
  </div>
initialisation/templates/example-watermark09.php CHANGED
@@ -25,7 +25,7 @@ $form = RGFormsModel::get_form_meta($form_id);
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
- <title>Gravity Forms PDF Extended</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
@@ -45,7 +45,7 @@ $form = RGFormsModel::get_form_meta($form_id);
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
- * For an example of accessing $form_data fields see http://gravityformspdfextended.com/documentation-v3-x-x/templates/getting-started/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
25
  * The plugin stylesheet is overridden every update
26
  */
27
  ?>
28
+ <title>Gravity PDF</title>
29
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
  </head>
31
  <body>
45
  * Store your form fields from the $form_data array into variables here
46
  * To see your entire $form_data array, view your PDF via the admin area and add &data=1 to the url
47
  *
48
+ * For an example of accessing $form_data fields see https://developer.gravitypdf.com/documentation/custom-templates-introduction/
49
  *
50
  * Alternatively, as of v3.4.0 you can use merge tags (except {allfields}) in your templates.
51
  * Just add merge tags to your HTML and they'll be parsed before generating the PDF.
languages/pdfextended-en_GB.po CHANGED
@@ -1,8 +1,8 @@
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: Gravity Forms PDF Extended\n"
4
- "POT-Creation-Date: 2014-09-15 16:14+1000\n"
5
- "PO-Revision-Date: 2014-09-15 16:14+1000\n"
6
  "Last-Translator: Blue Liquid Designs <enquire@blueliquiddesigns.com.au>\n"
7
  "Language-Team: <enquire@blueliquiddesigns.com.au>\n"
8
  "Language: en\n"
@@ -14,7 +14,7 @@ msgstr ""
14
  "X-Poedit-Basepath: /\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-SearchPath-0: G:\\Blue Liquid Designs\\4) BLUE LIQUID DESIGNS\\19) "
17
- "GRAVITY FORMS PDF EXTENDED\\1) github\n"
18
 
19
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
20
  #: EXTENDED\1) github/helper/api.php:142
@@ -44,7 +44,7 @@ msgstr ""
44
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
45
  #: EXTENDED\1) github/helper/notices.php:54
46
  #, php-format
47
- msgid "%sGravity Forms PDF Extended Automated Installer%s: "
48
  msgstr ""
49
 
50
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
@@ -57,8 +57,7 @@ msgstr ""
57
  #: EXTENDED\1) github/helper/notices.php:74
58
  msgid ""
59
  "The font files have been successfully installed. A font can be used by "
60
- "adding its file name (without .ttf and in lower case) in a CSS font-family "
61
- "declaration."
62
  msgstr ""
63
 
64
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
@@ -69,7 +68,7 @@ msgstr ""
69
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
70
  #: EXTENDED\1) github/helper/notices.php:101
71
  msgid ""
72
- "Gravity Forms PDF Extended detected a configuration problem. Please "
73
  "reinitialise the plugin."
74
  msgstr ""
75
 
@@ -77,14 +76,14 @@ msgstr ""
77
  #: EXTENDED\1) github/helper/notices.php:105
78
  #, php-format
79
  msgid ""
80
- "Gravity Forms PDF Extended detected a configuration problem. Please go to "
81
  "the %splugin's settings page%s to reinitialise."
82
  msgstr ""
83
 
84
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
85
  #: EXTENDED\1) github/helper/notices.php:122
86
  msgid ""
87
- "Gravity Forms PDF Extended detected a server compatibility problem which "
88
  "prevented the software from running. See the System Status section below for "
89
  "details."
90
  msgstr ""
@@ -93,7 +92,7 @@ msgstr ""
93
  #: EXTENDED\1) github/helper/notices.php:126
94
  #, php-format
95
  msgid ""
96
- "Gravity Forms PDF Extended detected a server compatibility problem which "
97
  "prevented the software from running. Please go to the %splugin's settings "
98
  "page%s to view the issue."
99
  msgstr ""
@@ -101,7 +100,7 @@ msgstr ""
101
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
102
  #: EXTENDED\1) github/helper/notices.php:142
103
  msgid ""
104
- "Welcome to Gravity Forms PDF Extended. Before you can use the plugin "
105
  "correctly you need to initilise it."
106
  msgstr ""
107
 
@@ -109,7 +108,7 @@ msgstr ""
109
  #: EXTENDED\1) github/helper/notices.php:146
110
  #, php-format
111
  msgid ""
112
- "Welcome to Gravity Forms PDF Extended. Before you can use the plugin "
113
  "correctly you need to initilise it. Please go to the %splugin's settings page"
114
  "%s to initialise."
115
  msgstr ""
@@ -118,120 +117,148 @@ msgstr ""
118
  #: EXTENDED\1) github/helper/notices.php:158
119
  #, php-format
120
  msgid ""
121
- "Gravity Forms PDF Extended only works with Gravity Forms version %s and "
122
  "higher. Please %supgrade your copy of Gravity Forms%s to use this plugin."
123
  msgstr ""
124
 
125
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
126
- #: EXTENDED\1) github/helper/notices.php:172
 
127
  msgid ""
128
- "We could not create a template folder in your active theme's directory. "
129
- "Please ensure your active theme directory is writable by your web server and "
130
- "try again."
131
  msgstr ""
132
 
133
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
134
- #: EXTENDED\1) github/helper/notices.php:187
135
  #, php-format
136
  msgid ""
137
- "We could not remove the default template files from the Gravity Forms PDF "
138
- "Extended folder in your active theme's directory. Please ensure %s is "
139
- "wriable by your web server and try again."
140
  msgstr ""
141
 
142
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
143
- #: EXTENDED\1) github/helper/notices.php:200
144
  #, php-format
145
  msgid ""
146
- "We could not move the template files to the PDF_EXTENDED_TEMPLATES folder. "
147
- "Please ensure %s is wriable by your web server and try again."
148
  msgstr ""
149
 
150
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
151
- #: EXTENDED\1) github/helper/notices.php:218
152
  #, php-format
153
  msgid ""
154
- "Gravity Forms PDF Extended needs to keep your configuration and templates "
155
- "folder in sync with your current active theme. %sSync Now%s"
156
  msgstr ""
157
 
158
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
159
- #: EXTENDED\1) github/helper/notices.php:227
160
  #, php-format
161
- msgid "%sGravity Forms PDF Extended Automated Theme Sync%s: "
 
 
162
  msgstr ""
163
 
164
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
165
- #: EXTENDED\1) github/helper/notices.php:229
 
 
 
 
 
 
 
166
  msgid ""
167
- "Your PDF configuration and template folder was successfully synced to your "
168
- "new theme."
169
  msgstr ""
170
 
171
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
172
- #: EXTENDED\1) github/helper/notices.php:241
173
  msgid ""
174
- "Gravity Forms PDF Extended Auto Initialisation Complete across the entire "
175
  "network."
176
  msgstr ""
177
 
178
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
179
- #: EXTENDED\1) github/helper/notices.php:245
180
  msgid ""
181
- "Gravity Forms PDF Extended Initialisation Complete across the entire network."
182
  msgstr ""
183
 
184
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
185
- #: EXTENDED\1) github/helper/notices.php:250 github/helper/notices.php:262
186
  #, php-format
187
  msgid "%sLearn how to configuring the plugin%s."
188
  msgstr ""
189
 
190
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
191
- #: EXTENDED\1) github/helper/notices.php:258
192
- msgid "Gravity Forms PDF Extended Auto Initialisation Complete."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
193
  msgstr ""
194
 
195
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
196
- #: EXTENDED\1) github/helper/notices.php:276
197
  msgid "There was a network initialisation issue on the following sites;"
198
  msgstr ""
199
 
200
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
201
- #: EXTENDED\1) github/helper/notices.php:289
202
  msgid "Please try manually initialise the software"
203
  msgstr ""
204
 
205
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
206
- #: EXTENDED\1) github/helper/notices.php:293
207
  msgid ""
208
  "An unknown network initialisation error occured. Please try initialise again."
209
  msgstr ""
210
 
211
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
212
- #: EXTENDED\1) github/helper/notices.php:300
213
- msgid "You've successfully initialised Gravity Forms PDF Extended."
214
  msgstr ""
215
 
216
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
217
- #: EXTENDED\1) github/helper/notices.php:307
218
  #: github/view/templates/settings/system-status.php:34
219
  #: github/view/templates/settings/system-status.php:41
220
  msgid "Gravity Forms "
221
  msgstr ""
222
 
223
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
224
- #: EXTENDED\1) github/helper/notices.php:313
225
  msgid "Wordpress "
226
  msgstr ""
227
 
228
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
229
- #: EXTENDED\1) github/helper/notices.php:325
230
  msgid "PHP "
231
  msgstr ""
232
 
233
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
234
- #: EXTENDED\1) github/helper/notices.php:331
235
  #, php-format
236
  msgid ""
237
  "If you reinitialise and enable this option %syou will overwrite%s the "
@@ -239,155 +266,160 @@ msgid ""
239
  msgstr ""
240
 
241
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
242
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:240
243
  msgid "Order"
244
  msgstr ""
245
 
246
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
247
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:251
248
  msgid "Product"
249
  msgstr ""
250
 
251
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
252
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:252
253
  msgid "Qty"
254
  msgstr ""
255
 
256
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
257
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:253
258
  msgid "Unit Price"
259
  msgstr ""
260
 
261
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
262
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:254
263
  msgid "Price"
264
  msgstr ""
265
 
266
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
267
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:317
268
  msgid "Total"
269
  msgstr ""
270
 
271
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
272
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:927
273
  msgid ""
274
  "Activate Gravity Forms Quiz Add On to see global quiz statistics for this "
275
  "form"
276
  msgstr ""
277
 
278
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
279
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1339
280
- #: github/helper/pdf-entry-detail.php:1704
281
  msgid "Qty: "
282
  msgstr ""
283
 
284
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
285
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1339
286
- #: github/helper/pdf-entry-detail.php:1704
287
  msgid "Price: "
288
  msgstr ""
289
 
290
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
291
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1638
292
  msgid "Title"
293
  msgstr ""
294
 
295
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
296
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1639
297
  msgid "Caption"
298
  msgstr ""
299
 
300
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
301
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1640
302
  msgid "Description"
303
  msgstr ""
304
 
305
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
306
- #: EXTENDED\1) github/helper/pdf-entry-detail.php:1645
307
- #: github/helper/pdf-entry-detail.php:1664
308
  msgid "Click to view"
309
  msgstr ""
310
 
311
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
312
- #: EXTENDED\1) github/model/pdf.php:136
313
  msgid "View"
314
  msgstr ""
315
 
316
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
317
- #: EXTENDED\1) github/model/pdf.php:137
318
  msgid "Download"
319
  msgstr ""
320
 
321
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
322
- #: EXTENDED\1) github/model/pdf.php:179
323
  msgid "View PDFs"
324
  msgstr ""
325
 
326
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
327
- #: EXTENDED\1) github/model/pdf.php:210
328
  msgid "View PDF"
329
  msgstr ""
330
 
331
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
332
- #: EXTENDED\1) github/model/settings.php:367
 
 
 
 
 
333
  msgid "Plugin not yet initialised"
334
  msgstr ""
335
 
336
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
337
- #: EXTENDED\1) github/model/settings.php:422
338
  msgid ""
339
  "There was a problem with your submission. Please reload the page and try "
340
  "again"
341
  msgstr ""
342
 
343
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
344
- #: EXTENDED\1) github/model/settings.php:439
345
  msgid "Please enter a valid email address"
346
  msgstr ""
347
 
348
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
349
- #: EXTENDED\1) github/model/settings.php:442
350
  msgid "Problem"
351
  msgstr ""
352
 
353
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
354
- #: EXTENDED\1) github/model/settings.php:442
355
  msgid "Question"
356
  msgstr ""
357
 
358
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
359
- #: EXTENDED\1) github/model/settings.php:442
360
  msgid "Suggestion"
361
  msgstr ""
362
 
363
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
364
- #: EXTENDED\1) github/model/settings.php:446
365
  msgid "Please select a valid support type."
366
  msgstr ""
367
 
368
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
369
- #: EXTENDED\1) github/model/settings.php:451
370
  msgid ""
371
  "Please enter information about your support query so we can aid you more "
372
  "easily."
373
  msgstr ""
374
 
375
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
376
- #: EXTENDED\1) github/model/settings.php:456
377
  msgid ""
378
  "There is a problem with your support request. Please correct the marked "
379
  "issues above."
380
  msgstr ""
381
 
382
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
383
- #: EXTENDED\1) github/model/settings.php:466
384
  msgid ""
385
  "Thank you for your support request. We'll respond to your request in the "
386
  "next 24-48 hours."
387
  msgstr ""
388
 
389
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
390
- #: EXTENDED\1) github/model/settings.php:524
391
  msgid "Support request received. We will responed in 24 to 48 hours."
392
  msgstr ""
393
 
@@ -398,13 +430,13 @@ msgstr ""
398
 
399
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
400
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:41
401
- msgid "Gravity Forms PDF Extended"
402
  msgstr ""
403
 
404
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
405
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:42
406
  msgid ""
407
- "Your web server isn't compatible with Gravity Forms PDF Extended. Please see "
408
  "the problem areas below."
409
  msgstr ""
410
 
@@ -417,14 +449,14 @@ msgstr ""
417
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:53
418
  #, php-format
419
  msgid ""
420
- "Does Gravity Forms PDF Extended detect a problem that your web host won't "
421
  "fix? %sWe recommend you move to a quality web hosting service like WP Engine"
422
  "%s which runs our software straight out of the box."
423
  msgstr ""
424
 
425
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
426
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:19
427
- msgid "Welcome to Gravity Forms PDF Extended"
428
  msgstr ""
429
 
430
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
@@ -512,13 +544,13 @@ msgstr ""
512
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
513
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:45
514
  msgid ""
515
- "To complete the installation, Gravity Forms PDF Extended needs to be "
516
  "initialised."
517
  msgstr ""
518
 
519
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
520
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:47
521
- msgid "Does does initialisation do?"
522
  msgstr ""
523
 
524
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
@@ -579,7 +611,7 @@ msgstr ""
579
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
580
  #: EXTENDED\1) github/view/templates/settings/support-form.php:26
581
  msgid ""
582
- "Gravity Forms PDF Extended's support hours are from 9:00am-5:00pm Monday to "
583
  "Friday, Sydney Australia time."
584
  msgstr ""
585
 
@@ -717,10 +749,9 @@ msgstr ""
717
  #: EXTENDED\1) github/view/templates/settings/system-status.php:54
718
  #: github/view/templates/settings/system-status.php:62
719
  #: github/view/templates/settings/system-status.php:94
720
- #: github/view/templates/settings/system-status.php:101
721
  #: github/view/templates/settings/system-status.php:110
722
  #: github/view/templates/settings/system-status.php:117
723
- #: github/view/templates/settings/system-status.php:124
724
  msgid "Yes"
725
  msgstr ""
726
 
@@ -728,10 +759,9 @@ msgstr ""
728
  #: EXTENDED\1) github/view/templates/settings/system-status.php:54
729
  #: github/view/templates/settings/system-status.php:62
730
  #: github/view/templates/settings/system-status.php:94
731
- #: github/view/templates/settings/system-status.php:101
732
  #: github/view/templates/settings/system-status.php:110
733
  #: github/view/templates/settings/system-status.php:117
734
- #: github/view/templates/settings/system-status.php:124
735
  msgid "No"
736
  msgstr ""
737
 
@@ -772,39 +802,25 @@ msgstr ""
772
 
773
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
774
  #: EXTENDED\1) github/view/templates/settings/system-status.php:94
775
- msgid "Plugin Directory Writable?"
776
  msgstr ""
777
 
778
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
779
  #: EXTENDED\1) github/view/templates/settings/system-status.php:97
780
  #, php-format
781
  msgid ""
782
- "The plugin folder is not writable by your web server. Check the directory "
783
- "\"%s\" is writable by your web server otherwise we will attempt to use the "
784
- "FTP installer to initialise."
785
- msgstr ""
786
-
787
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
788
- #: EXTENDED\1) github/view/templates/settings/system-status.php:101
789
- msgid "Theme Directory Writable?"
790
- msgstr ""
791
-
792
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
793
- #: EXTENDED\1) github/view/templates/settings/system-status.php:104
794
- #, php-format
795
- msgid ""
796
- "Your active theme folder is not writable by your web server. Check that \"%s"
797
- "\" is writable by your web server otherwise we will attempt to use the FTP "
798
  "installer to initialise."
799
  msgstr ""
800
 
801
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
802
- #: EXTENDED\1) github/view/templates/settings/system-status.php:110
803
  msgid "PDF Output Directory Writable?"
804
  msgstr ""
805
 
806
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
807
- #: EXTENDED\1) github/view/templates/settings/system-status.php:113
808
  #, php-format
809
  msgid ""
810
  "The plugin's output folder is not writable by your web server. PDFs will not "
@@ -813,12 +829,12 @@ msgid ""
813
  msgstr ""
814
 
815
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
816
- #: EXTENDED\1) github/view/templates/settings/system-status.php:117
817
  msgid "PDF Font Directory Writable?"
818
  msgstr ""
819
 
820
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
821
- #: EXTENDED\1) github/view/templates/settings/system-status.php:120
822
  #, php-format
823
  msgid ""
824
  "The plugin's font folder is not writable by your web server. Check that \"%s"
@@ -827,13 +843,14 @@ msgid ""
827
  msgstr ""
828
 
829
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
830
- #: EXTENDED\1) github/view/templates/settings/system-status.php:124
831
  msgid "mPDF Temporary Directory Writable?"
832
  msgstr ""
833
 
834
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
835
- #: EXTENDED\1) github/view/templates/settings/system-status.php:127
 
836
  msgid ""
837
- "mPDF temporary directory not writable (mPDF/tmp/). Memory and image "
838
- "processing time will increase."
839
  msgstr ""
1
  msgid ""
2
  msgstr ""
3
+ "Project-Id-Version: Gravity PDF\n"
4
+ "POT-Creation-Date: 2014-12-04 13:00+1000\n"
5
+ "PO-Revision-Date: 2014-12-04 13:00+1000\n"
6
  "Last-Translator: Blue Liquid Designs <enquire@blueliquiddesigns.com.au>\n"
7
  "Language-Team: <enquire@blueliquiddesigns.com.au>\n"
8
  "Language: en\n"
14
  "X-Poedit-Basepath: /\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-SearchPath-0: G:\\Blue Liquid Designs\\4) BLUE LIQUID DESIGNS\\19) "
17
+ "Gravity PDF\\1) github\n"
18
 
19
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
20
  #: EXTENDED\1) github/helper/api.php:142
44
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
45
  #: EXTENDED\1) github/helper/notices.php:54
46
  #, php-format
47
+ msgid "%sGravity PDF Automated Installer%s: "
48
  msgstr ""
49
 
50
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
57
  #: EXTENDED\1) github/helper/notices.php:74
58
  msgid ""
59
  "The font files have been successfully installed. A font can be used by "
60
+ "adding its file name (without .ttf) in a CSS font-family declaration."
 
61
  msgstr ""
62
 
63
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
68
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
69
  #: EXTENDED\1) github/helper/notices.php:101
70
  msgid ""
71
+ "Gravity PDF detected a configuration problem. Please "
72
  "reinitialise the plugin."
73
  msgstr ""
74
 
76
  #: EXTENDED\1) github/helper/notices.php:105
77
  #, php-format
78
  msgid ""
79
+ "Gravity PDF detected a configuration problem. Please go to "
80
  "the %splugin's settings page%s to reinitialise."
81
  msgstr ""
82
 
83
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
84
  #: EXTENDED\1) github/helper/notices.php:122
85
  msgid ""
86
+ "Gravity PDF detected a server compatibility problem which "
87
  "prevented the software from running. See the System Status section below for "
88
  "details."
89
  msgstr ""
92
  #: EXTENDED\1) github/helper/notices.php:126
93
  #, php-format
94
  msgid ""
95
+ "Gravity PDF detected a server compatibility problem which "
96
  "prevented the software from running. Please go to the %splugin's settings "
97
  "page%s to view the issue."
98
  msgstr ""
100
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
101
  #: EXTENDED\1) github/helper/notices.php:142
102
  msgid ""
103
+ "Welcome to Gravity PDF. Before you can use the plugin "
104
  "correctly you need to initilise it."
105
  msgstr ""
106
 
108
  #: EXTENDED\1) github/helper/notices.php:146
109
  #, php-format
110
  msgid ""
111
+ "Welcome to Gravity PDF. Before you can use the plugin "
112
  "correctly you need to initilise it. Please go to the %splugin's settings page"
113
  "%s to initialise."
114
  msgstr ""
117
  #: EXTENDED\1) github/helper/notices.php:158
118
  #, php-format
119
  msgid ""
120
+ "Gravity PDF only works with Gravity Forms version %s and "
121
  "higher. Please %supgrade your copy of Gravity Forms%s to use this plugin."
122
  msgstr ""
123
 
124
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
125
+ #: EXTENDED\1) github/helper/notices.php:174
126
+ #, php-format
127
  msgid ""
128
+ "We could not create a template folder in your uploads directory. Please "
129
+ "ensure %s is writable by your web server and try again."
 
130
  msgstr ""
131
 
132
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
133
+ #: EXTENDED\1) github/helper/notices.php:189
134
  #, php-format
135
  msgid ""
136
+ "We could not create a site folder in your uploads/%s directory. Please "
137
+ "ensure %s is writable by your web server and try again."
 
138
  msgstr ""
139
 
140
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
141
+ #: EXTENDED\1) github/helper/notices.php:202
142
  #, php-format
143
  msgid ""
144
+ "We could not remove the default template files from %s in your uploads "
145
+ "directory. Please ensure %s is wriable by your web server and try again."
146
  msgstr ""
147
 
148
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
149
+ #: EXTENDED\1) github/helper/notices.php:215
150
  #, php-format
151
  msgid ""
152
+ "We could not move the template files to the %s folder. Please ensure %s is "
153
+ "wriable by your web server and try again."
154
  msgstr ""
155
 
156
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
157
+ #: EXTENDED\1) github/helper/notices.php:233
158
  #, php-format
159
+ msgid ""
160
+ "Gravity PDF directory structure has been changed. %sMigrate "
161
+ "Now%s %sUnsure what this means?%s"
162
  msgstr ""
163
 
164
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
165
+ #: EXTENDED\1) github/helper/notices.php:242
166
+ #, php-format
167
+ msgid "%sGravity PDF Automated Template Migration:%s"
168
+ msgstr ""
169
+
170
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
171
+ #: EXTENDED\1) github/helper/notices.php:244
172
+ #, php-format
173
  msgid ""
174
+ "Your PDF template folder structure was successfully migrated to %s. %sUnsure "
175
+ "what this means?%s"
176
  msgstr ""
177
 
178
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
179
+ #: EXTENDED\1) github/helper/notices.php:256
180
  msgid ""
181
+ "Gravity PDF Auto Initialisation Complete across the entire "
182
  "network."
183
  msgstr ""
184
 
185
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
186
+ #: EXTENDED\1) github/helper/notices.php:260
187
  msgid ""
188
+ "Gravity PDF Initialisation Complete across the entire network."
189
  msgstr ""
190
 
191
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
192
+ #: EXTENDED\1) github/helper/notices.php:265 github/helper/notices.php:277
193
  #, php-format
194
  msgid "%sLearn how to configuring the plugin%s."
195
  msgstr ""
196
 
197
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
198
+ #: EXTENDED\1) github/helper/notices.php:273
199
+ msgid "Gravity PDF Auto Initialisation Complete."
200
+ msgstr ""
201
+
202
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
203
+ #: EXTENDED\1) github/helper/notices.php:291
204
+ msgid ""
205
+ "There was a problem merging the PDF templates folder on the following sites;"
206
+ msgstr ""
207
+
208
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
209
+ #: EXTENDED\1) github/helper/notices.php:304
210
+ msgid ""
211
+ "Follow the site links above and try run the PDF template merging function "
212
+ "again, or reinitialise the software."
213
+ msgstr ""
214
+
215
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
216
+ #: EXTENDED\1) github/helper/notices.php:308
217
+ msgid ""
218
+ "An unknown error occured while merging the PDF template folders. Please try "
219
+ "again."
220
  msgstr ""
221
 
222
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
223
+ #: EXTENDED\1) github/helper/notices.php:323
224
  msgid "There was a network initialisation issue on the following sites;"
225
  msgstr ""
226
 
227
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
228
+ #: EXTENDED\1) github/helper/notices.php:336
229
  msgid "Please try manually initialise the software"
230
  msgstr ""
231
 
232
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
233
+ #: EXTENDED\1) github/helper/notices.php:340
234
  msgid ""
235
  "An unknown network initialisation error occured. Please try initialise again."
236
  msgstr ""
237
 
238
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
239
+ #: EXTENDED\1) github/helper/notices.php:347
240
+ msgid "You've successfully initialised Gravity PDF."
241
  msgstr ""
242
 
243
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
244
+ #: EXTENDED\1) github/helper/notices.php:354
245
  #: github/view/templates/settings/system-status.php:34
246
  #: github/view/templates/settings/system-status.php:41
247
  msgid "Gravity Forms "
248
  msgstr ""
249
 
250
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
251
+ #: EXTENDED\1) github/helper/notices.php:360
252
  msgid "Wordpress "
253
  msgstr ""
254
 
255
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
256
+ #: EXTENDED\1) github/helper/notices.php:366
257
  msgid "PHP "
258
  msgstr ""
259
 
260
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
261
+ #: EXTENDED\1) github/helper/notices.php:372
262
  #, php-format
263
  msgid ""
264
  "If you reinitialise and enable this option %syou will overwrite%s the "
266
  msgstr ""
267
 
268
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
269
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:255
270
  msgid "Order"
271
  msgstr ""
272
 
273
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
274
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:266
275
  msgid "Product"
276
  msgstr ""
277
 
278
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
279
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:267
280
  msgid "Qty"
281
  msgstr ""
282
 
283
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
284
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:268
285
  msgid "Unit Price"
286
  msgstr ""
287
 
288
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
289
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:269
290
  msgid "Price"
291
  msgstr ""
292
 
293
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
294
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:332
295
  msgid "Total"
296
  msgstr ""
297
 
298
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
299
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:940
300
  msgid ""
301
  "Activate Gravity Forms Quiz Add On to see global quiz statistics for this "
302
  "form"
303
  msgstr ""
304
 
305
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
306
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1371
307
+ #: github/helper/pdf-entry-detail.php:1746
308
  msgid "Qty: "
309
  msgstr ""
310
 
311
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
312
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1371
313
+ #: github/helper/pdf-entry-detail.php:1746
314
  msgid "Price: "
315
  msgstr ""
316
 
317
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
318
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1680
319
  msgid "Title"
320
  msgstr ""
321
 
322
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
323
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1681
324
  msgid "Caption"
325
  msgstr ""
326
 
327
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
328
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1682
329
  msgid "Description"
330
  msgstr ""
331
 
332
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
333
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1687
334
+ #: github/helper/pdf-entry-detail.php:1706
335
  msgid "Click to view"
336
  msgstr ""
337
 
338
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
339
+ #: EXTENDED\1) github/model/pdf.php:142
340
  msgid "View"
341
  msgstr ""
342
 
343
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
344
+ #: EXTENDED\1) github/model/pdf.php:143
345
  msgid "Download"
346
  msgstr ""
347
 
348
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
349
+ #: EXTENDED\1) github/model/pdf.php:199
350
  msgid "View PDFs"
351
  msgstr ""
352
 
353
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
354
+ #: EXTENDED\1) github/model/pdf.php:234
355
  msgid "View PDF"
356
  msgstr ""
357
 
358
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
359
+ #: EXTENDED\1) github/model/pdf.php:321
360
+ msgid "Access Denied"
361
+ msgstr ""
362
+
363
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
364
+ #: EXTENDED\1) github/model/settings.php:359
365
  msgid "Plugin not yet initialised"
366
  msgstr ""
367
 
368
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
369
+ #: EXTENDED\1) github/model/settings.php:414
370
  msgid ""
371
  "There was a problem with your submission. Please reload the page and try "
372
  "again"
373
  msgstr ""
374
 
375
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
376
+ #: EXTENDED\1) github/model/settings.php:431
377
  msgid "Please enter a valid email address"
378
  msgstr ""
379
 
380
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
381
+ #: EXTENDED\1) github/model/settings.php:434
382
  msgid "Problem"
383
  msgstr ""
384
 
385
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
386
+ #: EXTENDED\1) github/model/settings.php:434
387
  msgid "Question"
388
  msgstr ""
389
 
390
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
391
+ #: EXTENDED\1) github/model/settings.php:434
392
  msgid "Suggestion"
393
  msgstr ""
394
 
395
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
396
+ #: EXTENDED\1) github/model/settings.php:438
397
  msgid "Please select a valid support type."
398
  msgstr ""
399
 
400
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
401
+ #: EXTENDED\1) github/model/settings.php:443
402
  msgid ""
403
  "Please enter information about your support query so we can aid you more "
404
  "easily."
405
  msgstr ""
406
 
407
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
408
+ #: EXTENDED\1) github/model/settings.php:448
409
  msgid ""
410
  "There is a problem with your support request. Please correct the marked "
411
  "issues above."
412
  msgstr ""
413
 
414
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
415
+ #: EXTENDED\1) github/model/settings.php:458
416
  msgid ""
417
  "Thank you for your support request. We'll respond to your request in the "
418
  "next 24-48 hours."
419
  msgstr ""
420
 
421
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
422
+ #: EXTENDED\1) github/model/settings.php:516
423
  msgid "Support request received. We will responed in 24 to 48 hours."
424
  msgstr ""
425
 
430
 
431
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
432
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:41
433
+ msgid "Gravity PDF"
434
  msgstr ""
435
 
436
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
437
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:42
438
  msgid ""
439
+ "Your web server isn't compatible with Gravity PDF. Please see "
440
  "the problem areas below."
441
  msgstr ""
442
 
449
  #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:53
450
  #, php-format
451
  msgid ""
452
+ "Does Gravity PDF detect a problem that your web host won't "
453
  "fix? %sWe recommend you move to a quality web hosting service like WP Engine"
454
  "%s which runs our software straight out of the box."
455
  msgstr ""
456
 
457
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
458
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:19
459
+ msgid "Welcome to Gravity PDF"
460
  msgstr ""
461
 
462
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
544
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
545
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:45
546
  msgid ""
547
+ "To complete the installation, Gravity PDF needs to be "
548
  "initialised."
549
  msgstr ""
550
 
551
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
552
  #: EXTENDED\1) github/view/templates/settings/initialisation.php:47
553
+ msgid "What does initialisation do?"
554
  msgstr ""
555
 
556
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
611
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
612
  #: EXTENDED\1) github/view/templates/settings/support-form.php:26
613
  msgid ""
614
+ "Gravity PDF's support hours are from 9:00am-5:00pm Monday to "
615
  "Friday, Sydney Australia time."
616
  msgstr ""
617
 
749
  #: EXTENDED\1) github/view/templates/settings/system-status.php:54
750
  #: github/view/templates/settings/system-status.php:62
751
  #: github/view/templates/settings/system-status.php:94
752
+ #: github/view/templates/settings/system-status.php:103
753
  #: github/view/templates/settings/system-status.php:110
754
  #: github/view/templates/settings/system-status.php:117
 
755
  msgid "Yes"
756
  msgstr ""
757
 
759
  #: EXTENDED\1) github/view/templates/settings/system-status.php:54
760
  #: github/view/templates/settings/system-status.php:62
761
  #: github/view/templates/settings/system-status.php:94
762
+ #: github/view/templates/settings/system-status.php:103
763
  #: github/view/templates/settings/system-status.php:110
764
  #: github/view/templates/settings/system-status.php:117
 
765
  msgid "No"
766
  msgstr ""
767
 
802
 
803
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
804
  #: EXTENDED\1) github/view/templates/settings/system-status.php:94
805
+ msgid "Uploads Directory Writable?"
806
  msgstr ""
807
 
808
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
809
  #: EXTENDED\1) github/view/templates/settings/system-status.php:97
810
  #, php-format
811
  msgid ""
812
+ "Your upload folder is not writable by your web server. Check that \"%s\" is "
813
+ "writable by your web server otherwise we will attempt to use the FTP "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
814
  "installer to initialise."
815
  msgstr ""
816
 
817
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
818
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:103
819
  msgid "PDF Output Directory Writable?"
820
  msgstr ""
821
 
822
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
823
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:106
824
  #, php-format
825
  msgid ""
826
  "The plugin's output folder is not writable by your web server. PDFs will not "
829
  msgstr ""
830
 
831
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
832
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:110
833
  msgid "PDF Font Directory Writable?"
834
  msgstr ""
835
 
836
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
837
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:113
838
  #, php-format
839
  msgid ""
840
  "The plugin's font folder is not writable by your web server. Check that \"%s"
843
  msgstr ""
844
 
845
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
846
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:117
847
  msgid "mPDF Temporary Directory Writable?"
848
  msgstr ""
849
 
850
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
851
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:120
852
+ #, php-format
853
  msgid ""
854
+ "mPDF temporary directory not writable (%s). Memory and image processing time "
855
+ "will increase."
856
  msgstr ""
languages/pdfextended-fr_FR.mo CHANGED
Binary file
languages/pdfextended-fr_FR.po CHANGED
@@ -1,62 +1,61 @@
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: Gravity Forms PDF Extended\n"
4
- "POT-Creation-Date: 2014-06-05 13:39+1000\n"
5
- "PO-Revision-Date: 2014-09-15 00:31-0000\n"
6
- "Last-Translator: Marie-Aude Koiransky <contact@lumieredelune.com>\n"
7
  "Language-Team: Lumiere de Lune <contact@lumieredelune.com>\n"
8
  "Language: fr\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.3\n"
13
  "X-Poedit-KeywordsList: __;_e\n"
14
  "X-Poedit-Basepath: /\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
  "X-Poedit-SearchPath-0: G:\\Blue Liquid Designs\\4) BLUE LIQUID DESIGNS\\19) "
18
- "GRAVITY FORMS PDF EXTENDED\\2) WP SVN repository\\tags\\3.5.0\n"
19
 
20
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
21
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/api.php:142
22
  msgid "Bad Request."
23
  msgstr "Mauvais requête."
24
 
25
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
26
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/api.php:150
27
- #: repository\tags\3.5.0/helper/api.php:261
28
  msgid "Unauthorized Access."
29
  msgstr "Accès non authorisé."
30
 
31
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
32
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/api.php:172
33
  msgid "Method not allowed."
34
  msgstr "Méthode non autorisée."
35
 
36
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
37
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/api.php:180
38
  msgid "Internal API Error."
39
  msgstr "Erreur interne de l'API."
40
 
41
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
42
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/api.php:188
43
  msgid "API Unavailable."
44
  msgstr "API non disponible."
45
 
46
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
47
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:54
48
  #, php-format
49
- msgid "%sGravity Forms PDF Extended Automated Installer%s: "
50
- msgstr "%sInstallateur automatique de Gravity Forms PDF Extended%s : "
51
 
52
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
53
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:64
54
  #, php-format
55
  msgid " %sGo to installer%s."
56
  msgstr " %sAller à l'installateur%s."
57
 
58
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
59
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:74
60
  msgid ""
61
  "The font files have been successfully installed. A font can be used by "
62
  "adding its file name (without .ttf and in lower case) in a CSS font-family "
@@ -67,196 +66,214 @@ msgstr ""
67
  "minuscule) dans une déclaration CSS font-family."
68
 
69
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
70
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:85
71
- msgid ""
72
- "There was a problem installing the font files. Check the file permissions in "
73
- "the plugin folder and try again."
74
- msgstr ""
75
- "Il y a eu un problème lors de l'installation des polices de caractères. "
76
- "Vérifiez les permissions dans le dossier du plugin et réessayer."
77
-
78
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
79
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:96
80
  msgid "Could not create font configuration file. Try initialise again."
81
  msgstr ""
82
  "Impossible de créer le fichier de configuration. Essayez à nouveau de faire "
83
  "l'initialisation."
84
 
85
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
86
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:112
87
  msgid ""
88
- "Gravity Forms PDF Extended detected a configuration problem. Please "
89
  "reinitialise the plugin."
90
  msgstr ""
91
- "Gravity Forms PDF Extended a détecté un problème de configuration. Merci de "
92
  "réinitialiser l'extension."
93
 
94
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
95
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:116
96
  #, php-format
97
  msgid ""
98
- "Gravity Forms PDF Extended detected a configuration problem. Please go to "
99
  "the %splugin's settings page%s to reinitialise."
100
  msgstr ""
101
- "Gravity Forms PDF Extended a détecté un problème de configuration. Merci "
102
  "d'aller sur la page des %sréglages de l'extension%s pour la réinitialiser."
103
 
104
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
105
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:133
106
  msgid ""
107
- "Gravity Forms PDF Extended detected a server compatibility problem which "
108
  "prevented the software from running. See the System Status section below for "
109
  "details."
110
  msgstr ""
111
- "Gravity Forms PDF Extended a détecté un problème de compatibilité avec le "
112
  "serveur qui empêche l'extension de fonctionner. Regardez la section \"Etat "
113
  "du Système\" ci-dessous pour plus de détails."
114
 
115
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
116
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:137
117
  #, php-format
118
  msgid ""
119
- "Gravity Forms PDF Extended detected a server compatibility problem which "
120
  "prevented the software from running. Please go to the %splugin's settings "
121
  "page%s to view the issue."
122
  msgstr ""
123
- "Gravity Forms PDF Extended a détecté un problème de compatibilité avec le "
124
  "serveur qui empêche l'extension de fonctionner. Merci d'aller sur la page "
125
  "des %sréglages de l'extension%s pour voir les détails."
126
 
127
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
128
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:153
129
  msgid ""
130
- "Welcome to Gravity Forms PDF Extended. Before you can use the plugin "
131
  "correctly you need to initilise it."
132
  msgstr ""
133
- "Bienvenue chez Gravity Forms PDF Extended. Avant d'utiliser l'extension, "
134
  "vous devez l'initialiser."
135
 
136
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
137
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:157
138
  #, php-format
139
  msgid ""
140
- "Welcome to Gravity Forms PDF Extended. Before you can use the plugin "
141
  "correctly you need to initilise it. Please go to the %splugin's settings page"
142
  "%s to initialise."
143
  msgstr ""
144
- "Bienvenue chez Gravity Forms PDF Extended. Avant d'utiliser l'extension, "
145
  "vous devez l'initialiser. Merci d'aller sur la page des %sréglages de "
146
  "l'extension%s pour l'initialisation."
147
 
148
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
149
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:169
150
  #, php-format
151
  msgid ""
152
- "Gravity Forms PDF Extended only works with Gravity Forms version %s and "
153
  "higher. Please %supgrade your copy of Gravity Forms%s to use this plugin."
154
  msgstr ""
155
- "Gravity Forms PDF Extended a besoin de Gravity Forms (version %s et "
156
  "supérieures). Merci de %smettre votre version de Gravity Forms à jour%s pour "
157
  "utiliser l'extension. "
158
 
159
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
160
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:183
 
161
  msgid ""
162
- "We could not create a template folder in your active theme's directory. "
163
- "Please ensure your active theme directory is writable by your web server and "
164
- "try again."
165
  msgstr ""
166
  "Nous n'avons pas pu créer un dossier de modèles dans le répertoire de votre "
167
  "thème actif. Merci de vérifier qu'il est accessible en écriture par le "
168
  "serveur web et de réessayer."
169
 
170
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
171
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:198
172
- #, php-format
173
  msgid ""
174
- "We could not remove the default template files from the Gravity Forms PDF "
175
- "Extended folder in your active theme's directory. Please ensure %s is "
176
- "wriable by your web server and try again."
 
 
 
 
 
 
 
 
 
 
177
  msgstr ""
178
  "Nous n'avons pas pu supprimer les modèles par défaut du répertoire Gravity "
179
- "Forms PDF Extended dans le répertoire de votre thème actif. Merci de "
180
  "vérifier qu'%s est accessible en écriture pour le serveur et de réessayer."
181
 
182
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
183
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:211
184
- #, php-format
185
  msgid ""
186
- "We could not move the template files to the PDF_EXTENDED_TEMPLATES folder. "
187
- "Please ensure %s is wriable by your web server and try again."
188
  msgstr ""
189
  "Nous n'avons pas pu déplacer les modèles vers le répertoire "
190
  "PDF_EXTENDED_TEMPLATES. Merci de vérifier que %s est accessible en écriture "
191
  "pour le serveur et de vérifier."
192
 
193
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
194
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:229
195
  #, php-format
196
  msgid ""
197
- "Gravity Forms PDF Extended needs to keep your configuration and templates "
198
- "folder in sync with your current active theme. %sSync Now%s"
199
  msgstr ""
200
- "Gravity Forms PDF Extended a besoin de synchroniser votre configuration et "
201
- "votre répertoire de modèles avec votre thème actif. %sSynchroniser maintenant"
202
- "%s"
203
 
204
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
205
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:238
206
- #, php-format
207
- msgid "%sGravity Forms PDF Extended Automated Theme Sync%s: "
208
- msgstr ""
209
- "%sSynchronisation automatique des thèmes avec Gravity Forms PDF Extended%s : "
210
 
211
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
212
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:240
 
213
  msgid ""
214
- "Your PDF configuration and template folder was successfully synced to your "
215
- "new theme."
216
  msgstr ""
217
  "Votre configuration PDF et votre dossier de modèle a été transféré avec "
218
  "succès vers votre nouveau thème."
219
 
220
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
221
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:252
222
  msgid ""
223
- "Gravity Forms PDF Extended Auto Initialisation Complete across the entire "
224
  "network."
225
  msgstr ""
226
  "Initialisation automatique de Gravity Forms Extended terminée sur la "
227
  "totalité du réseau."
228
 
229
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
230
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:256
231
  msgid ""
232
- "Gravity Forms PDF Extended Initialisation Complete across the entire network."
233
  msgstr ""
234
  "Initialisation de Gravity Forms Extended terminée sur la totalité du réseau."
235
 
236
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
237
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:261
238
- #: repository\tags\3.5.0/helper/notices.php:273
239
  #, php-format
240
  msgid "%sLearn how to configuring the plugin%s."
241
  msgstr "%sDécouvrez comment configurer cette extension%s."
242
 
243
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
244
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:269
245
- msgid "Gravity Forms PDF Extended Auto Initialisation Complete."
246
  msgstr "Initialisation automatique de Gravity Forms Extended terminée."
247
 
248
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
249
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:287
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250
  msgid "There was a network initialisation issue on the following sites;"
251
  msgstr "Il y a eu un problème d'initialisation avec les sites suivants :"
252
 
253
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
254
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:300
255
  msgid "Please try manually initialise the software"
256
  msgstr "Essayez d'initialiser l'extension manuellement"
257
 
258
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
259
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:304
260
  msgid ""
261
  "An unknown network initialisation error occured. Please try initialise again."
262
  msgstr ""
@@ -264,29 +281,29 @@ msgstr ""
264
  "réessayer."
265
 
266
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
267
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:311
268
- msgid "You've successfully initialised Gravity Forms PDF Extended."
269
- msgstr "Vous avez bien réussi à initialiser Gravity Forms PDF Extended."
270
 
271
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
272
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:318
273
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:34
274
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:41
275
  msgid "Gravity Forms "
276
  msgstr "Gravity Forms "
277
 
278
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
279
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:324
280
  msgid "Wordpress "
281
  msgstr "Wordpress "
282
 
283
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
284
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:336
285
  msgid "PHP "
286
  msgstr "PHP "
287
 
288
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
289
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/notices.php:342
290
  #, php-format
291
  msgid ""
292
  "If you reinitialise and enable this option %syou will overwrite%s the "
@@ -297,37 +314,37 @@ msgstr ""
297
  "actif."
298
 
299
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
300
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:240
301
  msgid "Order"
302
  msgstr "Commander"
303
 
304
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
305
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:251
306
  msgid "Product"
307
  msgstr "Produit"
308
 
309
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
310
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:252
311
  msgid "Qty"
312
  msgstr "Qté"
313
 
314
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
315
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:253
316
  msgid "Unit Price"
317
  msgstr "Prix unitaire"
318
 
319
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
320
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:254
321
  msgid "Price"
322
  msgstr "PRix"
323
 
324
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
325
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:317
326
  msgid "Total"
327
  msgstr "Total"
328
 
329
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
330
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:927
331
  msgid ""
332
  "Activate Gravity Forms Quiz Add On to see global quiz statistics for this "
333
  "form"
@@ -336,72 +353,71 @@ msgstr ""
336
  "quiz pour ce formulaire"
337
 
338
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
339
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1340
340
- #: repository\tags\3.5.0/helper/pdf-entry-detail.php:1705
341
  msgid "Qty: "
342
  msgstr "Qté : "
343
 
344
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
345
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1340
346
- #: repository\tags\3.5.0/helper/pdf-entry-detail.php:1705
347
  msgid "Price: "
348
  msgstr "Prix : "
349
 
350
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
351
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1639
352
  msgid "Title"
353
  msgstr "Titre"
354
 
355
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
356
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1640
357
  msgid "Caption"
358
  msgstr "Légende"
359
 
360
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
361
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1641
362
  msgid "Description"
363
  msgstr "Description"
364
 
365
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
366
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/helper/pdf-entry-detail.php:1646
367
- #: repository\tags\3.5.0/helper/pdf-entry-detail.php:1665
368
  msgid "Click to view"
369
  msgstr "Cliquer pour voir"
370
 
371
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
372
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/pdf.php:127
373
- #: repository\tags\3.5.0/model/pdf.php:142
374
  msgid "View"
375
  msgstr "Voir"
376
 
377
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
378
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/pdf.php:128
379
- #: repository\tags\3.5.0/model/pdf.php:143
380
  msgid "Download"
381
  msgstr "Télécharger"
382
 
383
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
384
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/pdf.php:142
385
- msgid "PDF"
386
- msgstr "PDF"
387
-
388
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
389
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/pdf.php:182
390
  msgid "View PDFs"
391
  msgstr "Voir les PDFs"
392
 
393
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
394
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/pdf.php:213
395
  msgid "View PDF"
396
  msgstr "Voir le PDF"
397
 
398
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
399
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:355
 
 
 
 
 
 
400
  msgid "Plugin not yet initialised"
401
  msgstr "L'extension n'est pas encore initialisée"
402
 
403
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
404
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:410
405
  msgid ""
406
  "There was a problem with your submission. Please reload the page and try "
407
  "again"
@@ -410,32 +426,32 @@ msgstr ""
410
  "de réessayer"
411
 
412
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
413
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:427
414
  msgid "Please enter a valid email address"
415
  msgstr "Merci de saisir une adresse email valide"
416
 
417
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
418
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:430
419
  msgid "Problem"
420
  msgstr "Problème"
421
 
422
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
423
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:430
424
  msgid "Question"
425
  msgstr "Question"
426
 
427
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
428
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:430
429
  msgid "Suggestion"
430
  msgstr "Suggestion"
431
 
432
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
433
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:434
434
  msgid "Please select a valid support type."
435
  msgstr "Merci de choisir un type de support valide."
436
 
437
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
438
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:439
439
  msgid ""
440
  "Please enter information about your support query so we can aid you more "
441
  "easily."
@@ -444,7 +460,7 @@ msgstr ""
444
  "puissions vous aider plus facilement."
445
 
446
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
447
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:444
448
  msgid ""
449
  "There is a problem with your support request. Please correct the marked "
450
  "issues above."
@@ -453,7 +469,7 @@ msgstr ""
453
  "problèmes indiqués ci-dessus."
454
 
455
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
456
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:454
457
  msgid ""
458
  "Thank you for your support request. We'll respond to your request in the "
459
  "next 24-48 hours."
@@ -462,69 +478,61 @@ msgstr ""
462
  "les prochaines 24 à 48 heures."
463
 
464
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
465
- #: EXTENDED\2) WP SVN repository\tags\3.5.0/model/settings.php:512
466
  msgid "Support request received. We will responed in 24 to 48 hours."
467
  msgstr ""
468
  "Demande de support reçue. Nous répondrons dans les prochaines 24 à 48 heures."
469
 
470
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
471
- #: EXTENDED\2) WP SVN
472
- #: repository\tags\3.5.0/view/templates/settings/changelog.php:19
473
  msgid "Changelog"
474
  msgstr "Changelog"
475
 
476
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
477
- #: EXTENDED\2) WP SVN
478
- #: repository\tags\3.5.0/view/templates/settings/initialisation-tab.php:41
479
- msgid "Gravity Forms PDF Extended"
480
- msgstr "Gravity Forms PDF Extended"
481
 
482
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
483
- #: EXTENDED\2) WP SVN
484
- #: repository\tags\3.5.0/view/templates/settings/initialisation-tab.php:42
485
  msgid ""
486
- "Your web server isn't compatible with Gravity Forms PDF Extended. Please see "
487
  "the problem areas below."
488
  msgstr ""
489
- "Votre serveur web n'est pas compatible avec Gravity Forms PDF Extended.. "
490
  "Merci de résoudre les problèmes ci-dessous."
491
 
492
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
493
- #: EXTENDED\2) WP SVN
494
- #: repository\tags\3.5.0/view/templates/settings/initialisation-tab.php:52
495
  msgid "Can't Resolve the Issue?"
496
  msgstr "Impossible de résoudre le problème ?"
497
 
498
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
499
- #: EXTENDED\2) WP SVN
500
- #: repository\tags\3.5.0/view/templates/settings/initialisation-tab.php:53
501
  #, php-format
502
  msgid ""
503
- "Does Gravity Forms PDF Extended detect a problem that your web host won't "
504
  "fix? %sWe recommend you move to a quality web hosting service like WP Engine"
505
  "%s which runs our software straight out of the box."
506
  msgstr ""
507
- "Est-ce que Gravity Forms PDF Extended détecte un problème que votre "
508
  "hébergeur ne peut pas résoudre ? %sNous vous recommandons de changer pour un "
509
  "service d'hébergement de qualité comme WP Engine%s qui peut faire tourner "
510
  "notre extension sans aucun problème."
511
 
512
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
513
- #: EXTENDED\2) WP SVN
514
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:19
515
- msgid "Welcome to Gravity Forms PDF Extended"
516
- msgstr "Bienvenue dans Gravity Forms PDF Extended"
517
 
518
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
519
- #: EXTENDED\2) WP SVN
520
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:19
521
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:66
522
  msgid "Initialise Plugin"
523
  msgstr "Initiailiser l'extension"
524
 
525
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
526
- #: EXTENDED\2) WP SVN
527
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:23
528
  msgid ""
529
  "The plugin has successfully installed and is ready to start automating your "
530
  "documents."
@@ -533,14 +541,12 @@ msgstr ""
533
  "automatiser vos documents."
534
 
535
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
536
- #: EXTENDED\2) WP SVN
537
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:25
538
  msgid "What's next?"
539
  msgstr "Et maintenant ?"
540
 
541
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
542
- #: EXTENDED\2) WP SVN
543
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:26
544
  msgid ""
545
  "The next step is to correctly configured the plugin so that you can generate "
546
  "PDF documents."
@@ -549,8 +555,7 @@ msgstr ""
549
  "pouvoir générer des documents PDF."
550
 
551
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
552
- #: EXTENDED\2) WP SVN
553
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:27
554
  msgid ""
555
  "To help you get started, we've put together a five-part video series with "
556
  "the most common plugin configurations."
@@ -560,22 +565,19 @@ msgstr ""
560
  "l'extension."
561
 
562
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
563
- #: EXTENDED\2) WP SVN
564
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:29
565
  msgid "The Basics: Only Download PDF through the Admin Area"
566
  msgstr ""
567
  "La base : le téléchargement des PDF se fait seulement à partir de "
568
  "l'administration"
569
 
570
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
571
- #: EXTENDED\2) WP SVN
572
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:30
573
  msgid "The Email: Send Completed PDF via Email"
574
  msgstr "L'email : l'envoi du PDF terminé par mail"
575
 
576
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
577
- #: EXTENDED\2) WP SVN
578
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:31
579
  msgid ""
580
  "The Download: User Downloads PDF after Submitting Form (using a link or auto "
581
  "redirecting)"
@@ -584,24 +586,21 @@ msgstr ""
584
  "un formulaire (en utilisant un lien ou via la redirection)"
585
 
586
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
587
- #: EXTENDED\2) WP SVN
588
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:32
589
  msgid "The Email Advanced: Manually Review User Submission before Emailing PDF"
590
  msgstr ""
591
  "Les fonctionnalités avancées de l'email : vérification manuelle des données "
592
  "soumises par l'utilisateur avant d'envoyer le PDF par mail"
593
 
594
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
595
- #: EXTENDED\2) WP SVN
596
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:33
597
  msgid "The Payment: Send PDF after Capturing Payment using Paypal Standard"
598
  msgstr ""
599
  "Le paiement : l'envoir du PDF après la réception du paiement via Paypal "
600
  "Standard"
601
 
602
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
603
- #: EXTENDED\2) WP SVN
604
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:36
605
  #, php-format
606
  msgid ""
607
  "If you know little about PHP we recommend starting with %sPart 1:The Basics"
@@ -614,14 +613,12 @@ msgstr ""
614
  "dont vous avez besoin pour configurer l'extension. "
615
 
616
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
617
- #: EXTENDED\2) WP SVN
618
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:38
619
  msgid "Custom Templates"
620
  msgstr "Modèles personnalisés"
621
 
622
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
623
- #: EXTENDED\2) WP SVN
624
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:39
625
  #, php-format
626
  msgid ""
627
  "Creating a custom template gives you ultimate control of the look and feel "
@@ -634,30 +631,26 @@ msgstr ""
634
  "savoir comment créer et personnaliser vos fichiers de modèles."
635
 
636
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
637
- #: EXTENDED\2) WP SVN
638
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:45
639
  msgid ""
640
- "To complete the installation, Gravity Forms PDF Extended needs to be "
641
  "initialised."
642
  msgstr ""
643
- "Pour terminer l'installation, Gravity Forms PDF Extended doit être "
644
  "initialisé."
645
 
646
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
647
- #: EXTENDED\2) WP SVN
648
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:47
649
- msgid "Does does initialisation do?"
650
- msgstr "Que fait l'initialisation ?"
651
 
652
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
653
- #: EXTENDED\2) WP SVN
654
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:50
655
  msgid "Install the template files"
656
  msgstr "Installation des fichiers de modèles"
657
 
658
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
659
- #: EXTENDED\2) WP SVN
660
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:50
661
  msgid ""
662
  "We create a folder called PDF_EXTENDED_TEMPLATE in your active theme "
663
  "directory and move over all the templates and configuration files. This "
@@ -670,14 +663,12 @@ msgstr ""
670
  "configurer l'extension et créer vos modèles PDF. "
671
 
672
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
673
- #: EXTENDED\2) WP SVN
674
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:62
675
  msgid "Have a problem with the software?"
676
  msgstr "Avez-vous un problème avec l'extension ?"
677
 
678
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
679
- #: EXTENDED\2) WP SVN
680
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:63
681
  msgid ""
682
  "Did you switch themes and something went wrong syncing the template folder? "
683
  "Try reinitialise the software."
@@ -686,26 +677,22 @@ msgstr ""
686
  "synchronisation du dossier de modèles ? Essayez de réinitialiser l'extension."
687
 
688
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
689
- #: EXTENDED\2) WP SVN
690
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:66
691
  msgid "Reinitialise Plugin"
692
  msgstr "Réinitialisation de l'extension"
693
 
694
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
695
- #: EXTENDED\2) WP SVN
696
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:68
697
  msgid "Reinstall Default and Example Templates"
698
  msgstr "Réinstallation des modèles par défaut et des exemples"
699
 
700
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
701
- #: EXTENDED\2) WP SVN
702
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:74
703
  msgid "Install a new font?"
704
  msgstr "Installer une nouvelle police ?"
705
 
706
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
707
- #: EXTENDED\2) WP SVN
708
- #: repository\tags\3.5.0/view/templates/settings/initialisation.php:75
709
  #, php-format
710
  msgid ""
711
  "Do you want to use a custom font in your template? %sSee our documentation "
@@ -717,32 +704,33 @@ msgstr ""
717
  "police personnalisée%s avant de faire l'installation ci-dessous."
718
 
719
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
720
- #: EXTENDED\2) WP SVN
721
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:26
 
 
 
 
722
  msgid ""
723
- "Gravity Forms PDF Extended's support hours are from 9:00am-5:00pm Monday to "
724
  "Friday, Sydney Australia time."
725
  msgstr ""
726
- "Les heures de disponibilité du service de Gravity Forms PDF Extended sont de "
727
  "9:00 à 17:00 du Lundi au Vendredi, heure de Sydney (Australie)."
728
 
729
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
730
- #: EXTENDED\2) WP SVN
731
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:29
732
  #, php-format
733
  msgid "The current time in Sydney Australia is %s."
734
  msgstr "En ce moment, à Sydney en Australie, il est %s."
735
 
736
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
737
- #: EXTENDED\2) WP SVN
738
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:55
739
  msgid "Enter the email address you want us to contact you on."
740
  msgstr ""
741
  "Saisir l'adresse email à laquelle vous voulez que nous vous contactions."
742
 
743
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
744
- #: EXTENDED\2) WP SVN
745
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:56
746
  msgid ""
747
  "Note: To ensure the best support possible, please use the above email to "
748
  "respond to all support communications."
@@ -751,44 +739,37 @@ msgstr ""
751
  "dessus pour toutes les réponses au support."
752
 
753
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
754
- #: EXTENDED\2) WP SVN
755
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:92
756
  msgid "Enter as much detail about the problem as you can."
757
  msgstr "Donnez autant de détails que possible sur le problème."
758
 
759
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
760
- #: EXTENDED\2) WP SVN
761
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:93
762
  msgid "Please enter as much detail about the problem as you can."
763
  msgstr "Merci de donner autant de détails que possible sur le problème."
764
 
765
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
766
- #: EXTENDED\2) WP SVN
767
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:94
768
  msgid "Note: Our support representatives can only communicate in English."
769
  msgstr "NB : notre support communique uniquement en anglais."
770
 
771
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
772
- #: EXTENDED\2) WP SVN
773
- #: repository\tags\3.5.0/view/templates/settings/support-form.php:97
774
  msgid "Request Support"
775
  msgstr "Envoyer au support"
776
 
777
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
778
- #: EXTENDED\2) WP SVN
779
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:20
780
  msgid "Frequently Asked Questions"
781
  msgstr "F.A.Q."
782
 
783
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
784
- #: EXTENDED\2) WP SVN
785
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:22
786
  msgid "Can I exclude a field from showing up in the PDF?"
787
  msgstr "Puis-je empêcher un champ d'apparaitre dans le PDF ?"
788
 
789
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
790
- #: EXTENDED\2) WP SVN
791
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:23
792
  msgid ""
793
  "I want to have multiple PDF template files generated on one form. How do I "
794
  "do it?"
@@ -796,21 +777,18 @@ msgstr ""
796
  "Je veux avoir plusieurs modèles PDF pour un formulaire. Comment faire ?"
797
 
798
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
799
- #: EXTENDED\2) WP SVN
800
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:24
801
  msgid "I want users to be able to download the PDF from the server."
802
  msgstr ""
803
  "Je veux que les utilisateurs puissent télécharger le PDF à partir du serveur."
804
 
805
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
806
- #: EXTENDED\2) WP SVN
807
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:25
808
  msgid "How do I change the PDF size or create a landscape PDF?"
809
  msgstr "Comment changer la taille du PDF ou créer un PDF en mode paysage ?"
810
 
811
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
812
- #: EXTENDED\2) WP SVN
813
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:26
814
  msgid ""
815
  "I am created a custom template. How do I know the names of my fields in the "
816
  "$form_data array?"
@@ -819,14 +797,12 @@ msgstr ""
819
  "champs dans $form_data array ?"
820
 
821
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
822
- #: EXTENDED\2) WP SVN
823
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:27
824
  msgid "How large a PDF are you able to create/process?"
825
  msgstr "Quelle est la taille maximum de PDF que vous pouvez créer / traiter ?"
826
 
827
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
828
- #: EXTENDED\2) WP SVN
829
- #: repository\tags\3.5.0/view/templates/settings/support-sidebar.php:30
830
  #, php-format
831
  msgid ""
832
  "Got a question that isn't answered above? %sHead to our support forum%s and "
@@ -836,86 +812,72 @@ msgstr ""
836
  "notre forum de support (en)%s."
837
 
838
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
839
- #: EXTENDED\2) WP SVN
840
- #: repository\tags\3.5.0/view/templates/settings/support.php:20
841
  msgid "Support"
842
  msgstr "Support"
843
 
844
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
845
- #: EXTENDED\2) WP SVN
846
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:19
847
  msgid "System Status"
848
  msgstr "Statut du système"
849
 
850
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
851
- #: EXTENDED\2) WP SVN
852
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:22
853
  msgid "Wordpress Version"
854
  msgstr "Version de WordPress"
855
 
856
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
857
- #: EXTENDED\2) WP SVN
858
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:25
859
  msgid "Wordpress Version "
860
  msgstr "Version de Wordpress "
861
 
862
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
863
- #: EXTENDED\2) WP SVN
864
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:30
865
  msgid "Gravity Forms"
866
  msgstr "Gravity Forms"
867
 
868
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
869
- #: EXTENDED\2) WP SVN
870
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:32
871
  msgid "Not Installed"
872
  msgstr "Pas installé"
873
 
874
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
875
- #: EXTENDED\2) WP SVN
876
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:47
877
  msgid "PHP Version"
878
  msgstr " Version de PHP"
879
 
880
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
881
- #: EXTENDED\2) WP SVN
882
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:50
883
  msgid "PHP Version "
884
  msgstr "Version de PHP "
885
 
886
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
887
- #: EXTENDED\2) WP SVN
888
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:54
889
  msgid "MB String"
890
  msgstr "MB String"
891
 
892
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
893
- #: EXTENDED\2) WP SVN
894
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:54
895
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:62
896
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:94
897
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:101
898
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:110
899
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:117
900
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:124
901
  msgid "Yes"
902
  msgstr "Oui"
903
 
904
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
905
- #: EXTENDED\2) WP SVN
906
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:54
907
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:62
908
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:94
909
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:101
910
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:110
911
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:117
912
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:124
913
  msgid "No"
914
  msgstr "Non"
915
 
916
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
917
- #: EXTENDED\2) WP SVN
918
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:58
919
  msgid ""
920
  "The PHP extension MB String and MB String Regex functions are required to "
921
  "use this plugin. Contact your web host to have it enabled."
@@ -925,14 +887,12 @@ msgstr ""
925
  "activer."
926
 
927
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
928
- #: EXTENDED\2) WP SVN
929
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:62
930
  msgid "GD Library"
931
  msgstr "GD Library"
932
 
933
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
934
- #: EXTENDED\2) WP SVN
935
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:66
936
  msgid ""
937
  "The PHP extension GD Library is required to use this plugin. Contact your "
938
  "web host to have it enabled."
@@ -941,14 +901,12 @@ msgstr ""
941
  "Contactez votre hébergeur pour la faire activer."
942
 
943
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
944
- #: EXTENDED\2) WP SVN
945
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:84
946
  msgid "Available RAM"
947
  msgstr "RAM disponible"
948
 
949
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
950
- #: EXTENDED\2) WP SVN
951
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:87
952
  #, php-format
953
  msgid ""
954
  "We recommend you have 128MB of available RAM to run this plugin. The minimum "
@@ -965,52 +923,31 @@ msgstr ""
965
  "des formulaires Gravity Forms."
966
 
967
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
968
- #: EXTENDED\2) WP SVN
969
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:94
970
- msgid "Plugin Directory Writable?"
971
  msgstr "Répertoire des extensions accessible en écriture ?"
972
 
973
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
974
- #: EXTENDED\2) WP SVN
975
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:97
976
- #, php-format
977
- msgid ""
978
- "The plugin folder is not writable by your web server. Check the directory "
979
- "\"%s\" is writable by your web server otherwise we will attempt to use the "
980
- "FTP installer to initialise."
981
- msgstr ""
982
- "Le dossier de l'extension n'est pas accessible en écriture par le serveur. "
983
- "Vérifiez que le répertoire \"%s\" est accessible en écriture, ou bien nous "
984
- "essayerons d'utiliser l'installateur FTP pour l'initialisation. "
985
-
986
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
987
- #: EXTENDED\2) WP SVN
988
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:101
989
- msgid "Theme Directory Writable?"
990
- msgstr "Répertoire des thèmes accessible en écriture ?"
991
-
992
- #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
993
- #: EXTENDED\2) WP SVN
994
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:104
995
- #, php-format
996
  msgid ""
997
- "Your active theme folder is not writable by your web server. Check that \"%s"
998
- "\" is writable by your web server otherwise we will attempt to use the FTP "
999
  "installer to initialise."
1000
  msgstr ""
1001
- "Le répertoire de votre thème actif n'est pas accessible en écriture par le "
1002
- "serveur. Vérifiez que le répertoire \"%s\" est accessible en écriture, ou "
1003
- "bien nous essayerons d'utiliser l'installateur FTP pour l'initialisation. "
 
1004
 
1005
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1006
- #: EXTENDED\2) WP SVN
1007
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:110
1008
  msgid "PDF Output Directory Writable?"
1009
  msgstr "Répertoire de sortie des PDF accessible en écriture ?"
1010
 
1011
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1012
- #: EXTENDED\2) WP SVN
1013
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:113
1014
  #, php-format
1015
  msgid ""
1016
  "The plugin's output folder is not writable by your web server. PDFs will not "
@@ -1023,14 +960,12 @@ msgstr ""
1023
  "accessible en écriture. "
1024
 
1025
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1026
- #: EXTENDED\2) WP SVN
1027
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:117
1028
  msgid "PDF Font Directory Writable?"
1029
  msgstr "Répertoire des polices de caractère PDF accessible en écriture ?"
1030
 
1031
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1032
- #: EXTENDED\2) WP SVN
1033
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:120
1034
  #, php-format
1035
  msgid ""
1036
  "The plugin's font folder is not writable by your web server. Check that \"%s"
@@ -1043,22 +978,47 @@ msgstr ""
1043
  "l'initialisation. "
1044
 
1045
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1046
- #: EXTENDED\2) WP SVN
1047
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:124
1048
  msgid "mPDF Temporary Directory Writable?"
1049
  msgstr "Répertoire temporaire de mPDF accessible en écriture ?"
1050
 
1051
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
1052
- #: EXTENDED\2) WP SVN
1053
- #: repository\tags\3.5.0/view/templates/settings/system-status.php:127
1054
  msgid ""
1055
- "mPDF temporary directory not writable (mPDF/tmp/). Memory and image "
1056
- "processing time will increase."
1057
  msgstr ""
1058
  "Le répertoire temporaire de mPDF (mPDF/tmp/) n'est pas accessible en "
1059
  "écriture. La mémoire utilisée et le temps de traitement des images vont "
1060
  "augmenter."
1061
 
1062
- #: view/templates/settings/initialisation.php:76
1063
- msgid "Initialise Fonts"
1064
- msgstr "Installer les polices de caractères"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  msgid ""
2
  msgstr ""
3
+ "Project-Id-Version: Gravity PDF\n"
4
+ "POT-Creation-Date: 2014-11-17 16:14+1000\n"
5
+ "PO-Revision-Date: 2014-11-17 16:14+1000\n"
6
+ "Last-Translator: Blue Liquid Designs <enquire@blueliquiddesigns.com.au>\n"
7
  "Language-Team: Lumiere de Lune <contact@lumieredelune.com>\n"
8
  "Language: fr\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.6.5\n"
13
  "X-Poedit-KeywordsList: __;_e\n"
14
  "X-Poedit-Basepath: /\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
  "X-Poedit-SearchPath-0: G:\\Blue Liquid Designs\\4) BLUE LIQUID DESIGNS\\19) "
18
+ "Gravity PDF\\1) github\n"
19
 
20
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
21
+ #: EXTENDED\1) github/helper/api.php:142
22
  msgid "Bad Request."
23
  msgstr "Mauvais requête."
24
 
25
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
26
+ #: EXTENDED\1) github/helper/api.php:150 github/helper/api.php:261
 
27
  msgid "Unauthorized Access."
28
  msgstr "Accès non authorisé."
29
 
30
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
31
+ #: EXTENDED\1) github/helper/api.php:172
32
  msgid "Method not allowed."
33
  msgstr "Méthode non autorisée."
34
 
35
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
36
+ #: EXTENDED\1) github/helper/api.php:180
37
  msgid "Internal API Error."
38
  msgstr "Erreur interne de l'API."
39
 
40
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
41
+ #: EXTENDED\1) github/helper/api.php:188
42
  msgid "API Unavailable."
43
  msgstr "API non disponible."
44
 
45
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
46
+ #: EXTENDED\1) github/helper/notices.php:54
47
  #, php-format
48
+ msgid "%sGravity PDF Automated Installer%s: "
49
+ msgstr "%sInstallateur automatique de Gravity PDF%s : "
50
 
51
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
52
+ #: EXTENDED\1) github/helper/notices.php:64
53
  #, php-format
54
  msgid " %sGo to installer%s."
55
  msgstr " %sAller à l'installateur%s."
56
 
57
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
58
+ #: EXTENDED\1) github/helper/notices.php:74
59
  msgid ""
60
  "The font files have been successfully installed. A font can be used by "
61
  "adding its file name (without .ttf and in lower case) in a CSS font-family "
66
  "minuscule) dans une déclaration CSS font-family."
67
 
68
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
69
+ #: EXTENDED\1) github/helper/notices.php:85
 
 
 
 
 
 
 
 
 
70
  msgid "Could not create font configuration file. Try initialise again."
71
  msgstr ""
72
  "Impossible de créer le fichier de configuration. Essayez à nouveau de faire "
73
  "l'initialisation."
74
 
75
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
76
+ #: EXTENDED\1) github/helper/notices.php:101
77
  msgid ""
78
+ "Gravity PDF detected a configuration problem. Please "
79
  "reinitialise the plugin."
80
  msgstr ""
81
+ "Gravity PDF a détecté un problème de configuration. Merci de "
82
  "réinitialiser l'extension."
83
 
84
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
85
+ #: EXTENDED\1) github/helper/notices.php:105
86
  #, php-format
87
  msgid ""
88
+ "Gravity PDF detected a configuration problem. Please go to "
89
  "the %splugin's settings page%s to reinitialise."
90
  msgstr ""
91
+ "Gravity PDF a détecté un problème de configuration. Merci "
92
  "d'aller sur la page des %sréglages de l'extension%s pour la réinitialiser."
93
 
94
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
95
+ #: EXTENDED\1) github/helper/notices.php:122
96
  msgid ""
97
+ "Gravity PDF detected a server compatibility problem which "
98
  "prevented the software from running. See the System Status section below for "
99
  "details."
100
  msgstr ""
101
+ "Gravity PDF a détecté un problème de compatibilité avec le "
102
  "serveur qui empêche l'extension de fonctionner. Regardez la section \"Etat "
103
  "du Système\" ci-dessous pour plus de détails."
104
 
105
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
106
+ #: EXTENDED\1) github/helper/notices.php:126
107
  #, php-format
108
  msgid ""
109
+ "Gravity PDF detected a server compatibility problem which "
110
  "prevented the software from running. Please go to the %splugin's settings "
111
  "page%s to view the issue."
112
  msgstr ""
113
+ "Gravity PDF a détecté un problème de compatibilité avec le "
114
  "serveur qui empêche l'extension de fonctionner. Merci d'aller sur la page "
115
  "des %sréglages de l'extension%s pour voir les détails."
116
 
117
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
118
+ #: EXTENDED\1) github/helper/notices.php:142
119
  msgid ""
120
+ "Welcome to Gravity PDF. Before you can use the plugin "
121
  "correctly you need to initilise it."
122
  msgstr ""
123
+ "Bienvenue chez Gravity PDF. Avant d'utiliser l'extension, "
124
  "vous devez l'initialiser."
125
 
126
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
127
+ #: EXTENDED\1) github/helper/notices.php:146
128
  #, php-format
129
  msgid ""
130
+ "Welcome to Gravity PDF. Before you can use the plugin "
131
  "correctly you need to initilise it. Please go to the %splugin's settings page"
132
  "%s to initialise."
133
  msgstr ""
134
+ "Bienvenue chez Gravity PDF. Avant d'utiliser l'extension, "
135
  "vous devez l'initialiser. Merci d'aller sur la page des %sréglages de "
136
  "l'extension%s pour l'initialisation."
137
 
138
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
139
+ #: EXTENDED\1) github/helper/notices.php:158
140
  #, php-format
141
  msgid ""
142
+ "Gravity PDF only works with Gravity Forms version %s and "
143
  "higher. Please %supgrade your copy of Gravity Forms%s to use this plugin."
144
  msgstr ""
145
+ "Gravity PDF a besoin de Gravity Forms (version %s et "
146
  "supérieures). Merci de %smettre votre version de Gravity Forms à jour%s pour "
147
  "utiliser l'extension. "
148
 
149
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
150
+ #: EXTENDED\1) github/helper/notices.php:174
151
+ #, fuzzy, php-format
152
  msgid ""
153
+ "We could not create a template folder in your uploads directory. Please "
154
+ "ensure %s is writable by your web server and try again."
 
155
  msgstr ""
156
  "Nous n'avons pas pu créer un dossier de modèles dans le répertoire de votre "
157
  "thème actif. Merci de vérifier qu'il est accessible en écriture par le "
158
  "serveur web et de réessayer."
159
 
160
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
161
+ #: EXTENDED\1) github/helper/notices.php:189
162
+ #, fuzzy, php-format
163
  msgid ""
164
+ "We could not create a site folder in your uploads/%s directory. Please "
165
+ "ensure %s is writable by your web server and try again."
166
+ msgstr ""
167
+ "Nous n'avons pas pu créer un dossier de modèles dans le répertoire de votre "
168
+ "thème actif. Merci de vérifier qu'il est accessible en écriture par le "
169
+ "serveur web et de réessayer."
170
+
171
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
172
+ #: EXTENDED\1) github/helper/notices.php:202
173
+ #, fuzzy, php-format
174
+ msgid ""
175
+ "We could not remove the default template files from %s in your uploads "
176
+ "directory. Please ensure %s is wriable by your web server and try again."
177
  msgstr ""
178
  "Nous n'avons pas pu supprimer les modèles par défaut du répertoire Gravity "
179
+ "PDF dans le répertoire de votre thème actif. Merci de "
180
  "vérifier qu'%s est accessible en écriture pour le serveur et de réessayer."
181
 
182
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
183
+ #: EXTENDED\1) github/helper/notices.php:215
184
+ #, fuzzy, php-format
185
  msgid ""
186
+ "We could not move the template files to the %s folder. Please ensure %s is "
187
+ "wriable by your web server and try again."
188
  msgstr ""
189
  "Nous n'avons pas pu déplacer les modèles vers le répertoire "
190
  "PDF_EXTENDED_TEMPLATES. Merci de vérifier que %s est accessible en écriture "
191
  "pour le serveur et de vérifier."
192
 
193
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
194
+ #: EXTENDED\1) github/helper/notices.php:233
195
  #, php-format
196
  msgid ""
197
+ "Gravity PDF directory structure has been changed. %sMigrate "
198
+ "Now%s %sUnsure what this means?%s"
199
  msgstr ""
 
 
 
200
 
201
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
202
+ #: EXTENDED\1) github/helper/notices.php:242
203
+ #, fuzzy, php-format
204
+ msgid "%sGravity PDF Automated Template Migration:%s"
205
+ msgstr "%sInstallateur automatique de Gravity PDF%s : "
 
206
 
207
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
208
+ #: EXTENDED\1) github/helper/notices.php:244
209
+ #, fuzzy, php-format
210
  msgid ""
211
+ "Your PDF template folder structure was successfully migrated to %s. %sUnsure "
212
+ "what this means?%s"
213
  msgstr ""
214
  "Votre configuration PDF et votre dossier de modèle a été transféré avec "
215
  "succès vers votre nouveau thème."
216
 
217
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
218
+ #: EXTENDED\1) github/helper/notices.php:256
219
  msgid ""
220
+ "Gravity PDF Auto Initialisation Complete across the entire "
221
  "network."
222
  msgstr ""
223
  "Initialisation automatique de Gravity Forms Extended terminée sur la "
224
  "totalité du réseau."
225
 
226
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
227
+ #: EXTENDED\1) github/helper/notices.php:260
228
  msgid ""
229
+ "Gravity PDF Initialisation Complete across the entire network."
230
  msgstr ""
231
  "Initialisation de Gravity Forms Extended terminée sur la totalité du réseau."
232
 
233
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
234
+ #: EXTENDED\1) github/helper/notices.php:265 github/helper/notices.php:277
 
235
  #, php-format
236
  msgid "%sLearn how to configuring the plugin%s."
237
  msgstr "%sDécouvrez comment configurer cette extension%s."
238
 
239
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
240
+ #: EXTENDED\1) github/helper/notices.php:273
241
+ msgid "Gravity PDF Auto Initialisation Complete."
242
  msgstr "Initialisation automatique de Gravity Forms Extended terminée."
243
 
244
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
245
+ #: EXTENDED\1) github/helper/notices.php:291
246
+ #, fuzzy
247
+ msgid ""
248
+ "There was a problem merging the PDF templates folder on the following sites;"
249
+ msgstr "Il y a eu un problème d'initialisation avec les sites suivants :"
250
+
251
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
252
+ #: EXTENDED\1) github/helper/notices.php:304
253
+ msgid ""
254
+ "Follow the site links above and try run the PDF template merging function "
255
+ "again, or reinitialise the software."
256
+ msgstr ""
257
+
258
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
259
+ #: EXTENDED\1) github/helper/notices.php:308
260
+ msgid ""
261
+ "An unknown error occured while merging the PDF template folders. Please try "
262
+ "again."
263
+ msgstr ""
264
+
265
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
266
+ #: EXTENDED\1) github/helper/notices.php:323
267
  msgid "There was a network initialisation issue on the following sites;"
268
  msgstr "Il y a eu un problème d'initialisation avec les sites suivants :"
269
 
270
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
271
+ #: EXTENDED\1) github/helper/notices.php:336
272
  msgid "Please try manually initialise the software"
273
  msgstr "Essayez d'initialiser l'extension manuellement"
274
 
275
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
276
+ #: EXTENDED\1) github/helper/notices.php:340
277
  msgid ""
278
  "An unknown network initialisation error occured. Please try initialise again."
279
  msgstr ""
281
  "réessayer."
282
 
283
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
284
+ #: EXTENDED\1) github/helper/notices.php:347
285
+ msgid "You've successfully initialised Gravity PDF."
286
+ msgstr "Vous avez bien réussi à initialiser Gravity PDF."
287
 
288
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
289
+ #: EXTENDED\1) github/helper/notices.php:354
290
+ #: github/view/templates/settings/system-status.php:34
291
+ #: github/view/templates/settings/system-status.php:41
292
  msgid "Gravity Forms "
293
  msgstr "Gravity Forms "
294
 
295
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
296
+ #: EXTENDED\1) github/helper/notices.php:360
297
  msgid "Wordpress "
298
  msgstr "Wordpress "
299
 
300
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
301
+ #: EXTENDED\1) github/helper/notices.php:366
302
  msgid "PHP "
303
  msgstr "PHP "
304
 
305
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
306
+ #: EXTENDED\1) github/helper/notices.php:372
307
  #, php-format
308
  msgid ""
309
  "If you reinitialise and enable this option %syou will overwrite%s the "
314
  "actif."
315
 
316
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
317
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:255
318
  msgid "Order"
319
  msgstr "Commander"
320
 
321
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
322
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:266
323
  msgid "Product"
324
  msgstr "Produit"
325
 
326
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
327
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:267
328
  msgid "Qty"
329
  msgstr "Qté"
330
 
331
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
332
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:268
333
  msgid "Unit Price"
334
  msgstr "Prix unitaire"
335
 
336
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
337
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:269
338
  msgid "Price"
339
  msgstr "PRix"
340
 
341
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
342
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:332
343
  msgid "Total"
344
  msgstr "Total"
345
 
346
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
347
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:940
348
  msgid ""
349
  "Activate Gravity Forms Quiz Add On to see global quiz statistics for this "
350
  "form"
353
  "quiz pour ce formulaire"
354
 
355
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
356
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1371
357
+ #: github/helper/pdf-entry-detail.php:1746
358
  msgid "Qty: "
359
  msgstr "Qté : "
360
 
361
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
362
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1371
363
+ #: github/helper/pdf-entry-detail.php:1746
364
  msgid "Price: "
365
  msgstr "Prix : "
366
 
367
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
368
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1680
369
  msgid "Title"
370
  msgstr "Titre"
371
 
372
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
373
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1681
374
  msgid "Caption"
375
  msgstr "Légende"
376
 
377
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
378
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1682
379
  msgid "Description"
380
  msgstr "Description"
381
 
382
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
383
+ #: EXTENDED\1) github/helper/pdf-entry-detail.php:1687
384
+ #: github/helper/pdf-entry-detail.php:1706
385
  msgid "Click to view"
386
  msgstr "Cliquer pour voir"
387
 
388
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
389
+ #: EXTENDED\1) github/model/pdf.php:142
 
390
  msgid "View"
391
  msgstr "Voir"
392
 
393
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
394
+ #: EXTENDED\1) github/model/pdf.php:143
 
395
  msgid "Download"
396
  msgstr "Télécharger"
397
 
398
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
399
+ #: EXTENDED\1) github/model/pdf.php:199
 
 
 
 
 
400
  msgid "View PDFs"
401
  msgstr "Voir les PDFs"
402
 
403
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
404
+ #: EXTENDED\1) github/model/pdf.php:234
405
  msgid "View PDF"
406
  msgstr "Voir le PDF"
407
 
408
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
409
+ #: EXTENDED\1) github/model/pdf.php:321
410
+ #, fuzzy
411
+ msgid "Access Denied"
412
+ msgstr "Accès non authorisé."
413
+
414
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
415
+ #: EXTENDED\1) github/model/settings.php:359
416
  msgid "Plugin not yet initialised"
417
  msgstr "L'extension n'est pas encore initialisée"
418
 
419
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
420
+ #: EXTENDED\1) github/model/settings.php:414
421
  msgid ""
422
  "There was a problem with your submission. Please reload the page and try "
423
  "again"
426
  "de réessayer"
427
 
428
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
429
+ #: EXTENDED\1) github/model/settings.php:431
430
  msgid "Please enter a valid email address"
431
  msgstr "Merci de saisir une adresse email valide"
432
 
433
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
434
+ #: EXTENDED\1) github/model/settings.php:434
435
  msgid "Problem"
436
  msgstr "Problème"
437
 
438
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
439
+ #: EXTENDED\1) github/model/settings.php:434
440
  msgid "Question"
441
  msgstr "Question"
442
 
443
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
444
+ #: EXTENDED\1) github/model/settings.php:434
445
  msgid "Suggestion"
446
  msgstr "Suggestion"
447
 
448
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
449
+ #: EXTENDED\1) github/model/settings.php:438
450
  msgid "Please select a valid support type."
451
  msgstr "Merci de choisir un type de support valide."
452
 
453
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
454
+ #: EXTENDED\1) github/model/settings.php:443
455
  msgid ""
456
  "Please enter information about your support query so we can aid you more "
457
  "easily."
460
  "puissions vous aider plus facilement."
461
 
462
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
463
+ #: EXTENDED\1) github/model/settings.php:448
464
  msgid ""
465
  "There is a problem with your support request. Please correct the marked "
466
  "issues above."
469
  "problèmes indiqués ci-dessus."
470
 
471
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
472
+ #: EXTENDED\1) github/model/settings.php:458
473
  msgid ""
474
  "Thank you for your support request. We'll respond to your request in the "
475
  "next 24-48 hours."
478
  "les prochaines 24 à 48 heures."
479
 
480
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
481
+ #: EXTENDED\1) github/model/settings.php:516
482
  msgid "Support request received. We will responed in 24 to 48 hours."
483
  msgstr ""
484
  "Demande de support reçue. Nous répondrons dans les prochaines 24 à 48 heures."
485
 
486
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
487
+ #: EXTENDED\1) github/view/templates/settings/changelog.php:19
 
488
  msgid "Changelog"
489
  msgstr "Changelog"
490
 
491
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
492
+ #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:41
493
+ msgid "Gravity PDF"
494
+ msgstr "Gravity PDF"
 
495
 
496
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
497
+ #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:42
 
498
  msgid ""
499
+ "Your web server isn't compatible with Gravity PDF. Please see "
500
  "the problem areas below."
501
  msgstr ""
502
+ "Votre serveur web n'est pas compatible avec Gravity PDF.. "
503
  "Merci de résoudre les problèmes ci-dessous."
504
 
505
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
506
+ #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:52
 
507
  msgid "Can't Resolve the Issue?"
508
  msgstr "Impossible de résoudre le problème ?"
509
 
510
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
511
+ #: EXTENDED\1) github/view/templates/settings/initialisation-tab.php:53
 
512
  #, php-format
513
  msgid ""
514
+ "Does Gravity PDF detect a problem that your web host won't "
515
  "fix? %sWe recommend you move to a quality web hosting service like WP Engine"
516
  "%s which runs our software straight out of the box."
517
  msgstr ""
518
+ "Est-ce que Gravity PDF détecte un problème que votre "
519
  "hébergeur ne peut pas résoudre ? %sNous vous recommandons de changer pour un "
520
  "service d'hébergement de qualité comme WP Engine%s qui peut faire tourner "
521
  "notre extension sans aucun problème."
522
 
523
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
524
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:19
525
+ msgid "Welcome to Gravity PDF"
526
+ msgstr "Bienvenue dans Gravity PDF"
 
527
 
528
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
529
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:19
530
+ #: github/view/templates/settings/initialisation.php:66
 
531
  msgid "Initialise Plugin"
532
  msgstr "Initiailiser l'extension"
533
 
534
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
535
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:23
 
536
  msgid ""
537
  "The plugin has successfully installed and is ready to start automating your "
538
  "documents."
541
  "automatiser vos documents."
542
 
543
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
544
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:25
 
545
  msgid "What's next?"
546
  msgstr "Et maintenant ?"
547
 
548
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
549
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:26
 
550
  msgid ""
551
  "The next step is to correctly configured the plugin so that you can generate "
552
  "PDF documents."
555
  "pouvoir générer des documents PDF."
556
 
557
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
558
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:27
 
559
  msgid ""
560
  "To help you get started, we've put together a five-part video series with "
561
  "the most common plugin configurations."
565
  "l'extension."
566
 
567
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
568
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:29
 
569
  msgid "The Basics: Only Download PDF through the Admin Area"
570
  msgstr ""
571
  "La base : le téléchargement des PDF se fait seulement à partir de "
572
  "l'administration"
573
 
574
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
575
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:30
 
576
  msgid "The Email: Send Completed PDF via Email"
577
  msgstr "L'email : l'envoi du PDF terminé par mail"
578
 
579
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
580
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:31
 
581
  msgid ""
582
  "The Download: User Downloads PDF after Submitting Form (using a link or auto "
583
  "redirecting)"
586
  "un formulaire (en utilisant un lien ou via la redirection)"
587
 
588
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
589
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:32
 
590
  msgid "The Email Advanced: Manually Review User Submission before Emailing PDF"
591
  msgstr ""
592
  "Les fonctionnalités avancées de l'email : vérification manuelle des données "
593
  "soumises par l'utilisateur avant d'envoyer le PDF par mail"
594
 
595
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
596
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:33
 
597
  msgid "The Payment: Send PDF after Capturing Payment using Paypal Standard"
598
  msgstr ""
599
  "Le paiement : l'envoir du PDF après la réception du paiement via Paypal "
600
  "Standard"
601
 
602
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
603
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:36
 
604
  #, php-format
605
  msgid ""
606
  "If you know little about PHP we recommend starting with %sPart 1:The Basics"
613
  "dont vous avez besoin pour configurer l'extension. "
614
 
615
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
616
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:38
 
617
  msgid "Custom Templates"
618
  msgstr "Modèles personnalisés"
619
 
620
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
621
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:39
 
622
  #, php-format
623
  msgid ""
624
  "Creating a custom template gives you ultimate control of the look and feel "
631
  "savoir comment créer et personnaliser vos fichiers de modèles."
632
 
633
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
634
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:45
 
635
  msgid ""
636
+ "To complete the installation, Gravity PDF needs to be "
637
  "initialised."
638
  msgstr ""
639
+ "Pour terminer l'installation, Gravity PDF doit être "
640
  "initialisé."
641
 
642
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
643
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:47
644
+ msgid "What does initialisation do?"
645
+ msgstr "Qu'est-ce que l'initialisation ne?"
 
646
 
647
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
648
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:50
 
649
  msgid "Install the template files"
650
  msgstr "Installation des fichiers de modèles"
651
 
652
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
653
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:50
 
654
  msgid ""
655
  "We create a folder called PDF_EXTENDED_TEMPLATE in your active theme "
656
  "directory and move over all the templates and configuration files. This "
663
  "configurer l'extension et créer vos modèles PDF. "
664
 
665
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
666
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:62
 
667
  msgid "Have a problem with the software?"
668
  msgstr "Avez-vous un problème avec l'extension ?"
669
 
670
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
671
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:63
 
672
  msgid ""
673
  "Did you switch themes and something went wrong syncing the template folder? "
674
  "Try reinitialise the software."
677
  "synchronisation du dossier de modèles ? Essayez de réinitialiser l'extension."
678
 
679
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
680
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:66
 
681
  msgid "Reinitialise Plugin"
682
  msgstr "Réinitialisation de l'extension"
683
 
684
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
685
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:68
 
686
  msgid "Reinstall Default and Example Templates"
687
  msgstr "Réinstallation des modèles par défaut et des exemples"
688
 
689
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
690
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:74
 
691
  msgid "Install a new font?"
692
  msgstr "Installer une nouvelle police ?"
693
 
694
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
695
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:75
 
696
  #, php-format
697
  msgid ""
698
  "Do you want to use a custom font in your template? %sSee our documentation "
704
  "police personnalisée%s avant de faire l'installation ci-dessous."
705
 
706
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
707
+ #: EXTENDED\1) github/view/templates/settings/initialisation.php:76
708
+ msgid "Initialise Fonts"
709
+ msgstr "Installer les polices de caractères"
710
+
711
+ #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
712
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:26
713
  msgid ""
714
+ "Gravity PDF's support hours are from 9:00am-5:00pm Monday to "
715
  "Friday, Sydney Australia time."
716
  msgstr ""
717
+ "Les heures de disponibilité du service de Gravity PDF sont de "
718
  "9:00 à 17:00 du Lundi au Vendredi, heure de Sydney (Australie)."
719
 
720
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
721
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:29
 
722
  #, php-format
723
  msgid "The current time in Sydney Australia is %s."
724
  msgstr "En ce moment, à Sydney en Australie, il est %s."
725
 
726
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
727
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:55
 
728
  msgid "Enter the email address you want us to contact you on."
729
  msgstr ""
730
  "Saisir l'adresse email à laquelle vous voulez que nous vous contactions."
731
 
732
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
733
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:56
 
734
  msgid ""
735
  "Note: To ensure the best support possible, please use the above email to "
736
  "respond to all support communications."
739
  "dessus pour toutes les réponses au support."
740
 
741
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
742
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:92
 
743
  msgid "Enter as much detail about the problem as you can."
744
  msgstr "Donnez autant de détails que possible sur le problème."
745
 
746
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
747
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:93
 
748
  msgid "Please enter as much detail about the problem as you can."
749
  msgstr "Merci de donner autant de détails que possible sur le problème."
750
 
751
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
752
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:94
 
753
  msgid "Note: Our support representatives can only communicate in English."
754
  msgstr "NB : notre support communique uniquement en anglais."
755
 
756
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
757
+ #: EXTENDED\1) github/view/templates/settings/support-form.php:97
 
758
  msgid "Request Support"
759
  msgstr "Envoyer au support"
760
 
761
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
762
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:20
 
763
  msgid "Frequently Asked Questions"
764
  msgstr "F.A.Q."
765
 
766
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
767
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:22
 
768
  msgid "Can I exclude a field from showing up in the PDF?"
769
  msgstr "Puis-je empêcher un champ d'apparaitre dans le PDF ?"
770
 
771
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
772
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:23
 
773
  msgid ""
774
  "I want to have multiple PDF template files generated on one form. How do I "
775
  "do it?"
777
  "Je veux avoir plusieurs modèles PDF pour un formulaire. Comment faire ?"
778
 
779
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
780
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:24
 
781
  msgid "I want users to be able to download the PDF from the server."
782
  msgstr ""
783
  "Je veux que les utilisateurs puissent télécharger le PDF à partir du serveur."
784
 
785
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
786
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:25
 
787
  msgid "How do I change the PDF size or create a landscape PDF?"
788
  msgstr "Comment changer la taille du PDF ou créer un PDF en mode paysage ?"
789
 
790
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
791
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:26
 
792
  msgid ""
793
  "I am created a custom template. How do I know the names of my fields in the "
794
  "$form_data array?"
797
  "champs dans $form_data array ?"
798
 
799
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
800
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:27
 
801
  msgid "How large a PDF are you able to create/process?"
802
  msgstr "Quelle est la taille maximum de PDF que vous pouvez créer / traiter ?"
803
 
804
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
805
+ #: EXTENDED\1) github/view/templates/settings/support-sidebar.php:30
 
806
  #, php-format
807
  msgid ""
808
  "Got a question that isn't answered above? %sHead to our support forum%s and "
812
  "notre forum de support (en)%s."
813
 
814
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
815
+ #: EXTENDED\1) github/view/templates/settings/support.php:20
 
816
  msgid "Support"
817
  msgstr "Support"
818
 
819
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
820
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:19
 
821
  msgid "System Status"
822
  msgstr "Statut du système"
823
 
824
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
825
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:22
 
826
  msgid "Wordpress Version"
827
  msgstr "Version de WordPress"
828
 
829
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
830
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:25
 
831
  msgid "Wordpress Version "
832
  msgstr "Version de Wordpress "
833
 
834
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
835
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:30
 
836
  msgid "Gravity Forms"
837
  msgstr "Gravity Forms"
838
 
839
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
840
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:32
 
841
  msgid "Not Installed"
842
  msgstr "Pas installé"
843
 
844
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
845
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:47
 
846
  msgid "PHP Version"
847
  msgstr " Version de PHP"
848
 
849
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
850
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:50
 
851
  msgid "PHP Version "
852
  msgstr "Version de PHP "
853
 
854
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
855
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:54
 
856
  msgid "MB String"
857
  msgstr "MB String"
858
 
859
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
860
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:54
861
+ #: github/view/templates/settings/system-status.php:62
862
+ #: github/view/templates/settings/system-status.php:94
863
+ #: github/view/templates/settings/system-status.php:103
864
+ #: github/view/templates/settings/system-status.php:110
865
+ #: github/view/templates/settings/system-status.php:117
 
 
866
  msgid "Yes"
867
  msgstr "Oui"
868
 
869
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
870
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:54
871
+ #: github/view/templates/settings/system-status.php:62
872
+ #: github/view/templates/settings/system-status.php:94
873
+ #: github/view/templates/settings/system-status.php:103
874
+ #: github/view/templates/settings/system-status.php:110
875
+ #: github/view/templates/settings/system-status.php:117
 
 
876
  msgid "No"
877
  msgstr "Non"
878
 
879
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
880
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:58
 
881
  msgid ""
882
  "The PHP extension MB String and MB String Regex functions are required to "
883
  "use this plugin. Contact your web host to have it enabled."
887
  "activer."
888
 
889
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
890
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:62
 
891
  msgid "GD Library"
892
  msgstr "GD Library"
893
 
894
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
895
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:66
 
896
  msgid ""
897
  "The PHP extension GD Library is required to use this plugin. Contact your "
898
  "web host to have it enabled."
901
  "Contactez votre hébergeur pour la faire activer."
902
 
903
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
904
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:84
 
905
  msgid "Available RAM"
906
  msgstr "RAM disponible"
907
 
908
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
909
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:87
 
910
  #, php-format
911
  msgid ""
912
  "We recommend you have 128MB of available RAM to run this plugin. The minimum "
923
  "des formulaires Gravity Forms."
924
 
925
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
926
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:94
927
+ #, fuzzy
928
+ msgid "Uploads Directory Writable?"
929
  msgstr "Répertoire des extensions accessible en écriture ?"
930
 
931
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
932
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:97
933
+ #, fuzzy, php-format
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
934
  msgid ""
935
+ "Your upload folder is not writable by your web server. Check that \"%s\" is "
936
+ "writable by your web server otherwise we will attempt to use the FTP "
937
  "installer to initialise."
938
  msgstr ""
939
+ "Le répertoire des polices de l'extension n'est pas accessible en écriture "
940
+ "par le serveur. Vérifiez que le répertoire \"%s\" est accessible en "
941
+ "écriture, ou bien nous essayerons d'utiliser l'installateur FTP pour "
942
+ "l'initialisation. "
943
 
944
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
945
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:103
 
946
  msgid "PDF Output Directory Writable?"
947
  msgstr "Répertoire de sortie des PDF accessible en écriture ?"
948
 
949
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
950
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:106
 
951
  #, php-format
952
  msgid ""
953
  "The plugin's output folder is not writable by your web server. PDFs will not "
960
  "accessible en écriture. "
961
 
962
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
963
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:110
 
964
  msgid "PDF Font Directory Writable?"
965
  msgstr "Répertoire des polices de caractère PDF accessible en écriture ?"
966
 
967
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
968
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:113
 
969
  #, php-format
970
  msgid ""
971
  "The plugin's font folder is not writable by your web server. Check that \"%s"
978
  "l'initialisation. "
979
 
980
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
981
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:117
 
982
  msgid "mPDF Temporary Directory Writable?"
983
  msgstr "Répertoire temporaire de mPDF accessible en écriture ?"
984
 
985
  #: G:\Blue Liquid Designs\4) BLUE LIQUID DESIGNS\19) GRAVITY FORMS PDF
986
+ #: EXTENDED\1) github/view/templates/settings/system-status.php:120
987
+ #, fuzzy, php-format
988
  msgid ""
989
+ "mPDF temporary directory not writable (%s). Memory and image processing time "
990
+ "will increase."
991
  msgstr ""
992
  "Le répertoire temporaire de mPDF (mPDF/tmp/) n'est pas accessible en "
993
  "écriture. La mémoire utilisée et le temps de traitement des images vont "
994
  "augmenter."
995
 
996
+ #~ msgid ""
997
+ #~ "There was a problem installing the font files. Check the file permissions "
998
+ #~ "in the plugin folder and try again."
999
+ #~ msgstr ""
1000
+ #~ "Il y a eu un problème lors de l'installation des polices de caractères. "
1001
+ #~ "Vérifiez les permissions dans le dossier du plugin et réessayer."
1002
+
1003
+ #~ msgid ""
1004
+ #~ "Gravity PDF needs to keep your configuration and templates "
1005
+ #~ "folder in sync with your current active theme. %sSync Now%s"
1006
+ #~ msgstr ""
1007
+ #~ "Gravity PDF a besoin de synchroniser votre configuration "
1008
+ #~ "et votre répertoire de modèles avec votre thème actif. %sSynchroniser "
1009
+ #~ "maintenant%s"
1010
+
1011
+ #~ msgid "PDF"
1012
+ #~ msgstr "PDF"
1013
+
1014
+ #~ msgid ""
1015
+ #~ "The plugin folder is not writable by your web server. Check the directory "
1016
+ #~ "\"%s\" is writable by your web server otherwise we will attempt to use "
1017
+ #~ "the FTP installer to initialise."
1018
+ #~ msgstr ""
1019
+ #~ "Le dossier de l'extension n'est pas accessible en écriture par le "
1020
+ #~ "serveur. Vérifiez que le répertoire \"%s\" est accessible en écriture, ou "
1021
+ #~ "bien nous essayerons d'utiliser l'installateur FTP pour l'initialisation. "
1022
+
1023
+ #~ msgid "Theme Directory Writable?"
1024
+ #~ msgstr "Répertoire des thèmes accessible en écriture ?"
mPDF/classes/cssmgr.php CHANGED
@@ -198,7 +198,7 @@ function ReadCSS($html) {
198
  for ($i=0;$i<count($cxtem[0]);$i++) {
199
  $embedded = $cxtem[2][$i];
200
  if (!preg_match('/^data:image/i', $embedded)) { // mPDF 5.5.13
201
- $this->mpdf->GetFullPath($embedded);
202
  $tmpCSSstr = preg_replace('/'.preg_quote($cxtem[0][$i],'/').'/', ($cxtem[1][$i].$embedded.$cxtem[3][$i]), $tmpCSSstr );
203
  }
204
  }
@@ -221,9 +221,8 @@ function ReadCSS($html) {
221
  }
222
  }
223
 
224
- // mPDF 5.5.13
225
  // Replace any background: url(data:image... with temporary image file reference
226
- preg_match_all("/(url\(data:image\/(jpeg|gif|png);base64,(.*)\))/siU", $CSSstr, $idata);
227
  if (count($idata[0])) {
228
  for($i=0;$i<count($idata[0]);$i++) {
229
  $file = _MPDF_TEMP_PATH.'_tempCSSidata'.RAND(1,10000).'_'.$i.'.'.$idata[2][$i];
@@ -262,6 +261,10 @@ function ReadCSS($html) {
262
  $tagarr = explode(',',$tagstr);
263
  $pageselectors = false; // used to turn on $this->mpdf->mirrorMargins
264
  foreach($tagarr AS $tg) {
 
 
 
 
265
  $tags = preg_split('/\s+/',trim($tg));
266
  $level = count($tags);
267
  $t = '';
@@ -287,7 +290,7 @@ function ReadCSS($html) {
287
  }
288
 
289
  else if ($level == 1) { // e.g. p or .class or #id or p.class or p#id
290
- if (isset($tags[0])) { $t = trim($tags[0]); }
291
  if ($t) {
292
  $tag = '';
293
  if (preg_match('/^[.](.*)$/',$t,$m)) { $tag = 'CLASS>>'.$m[1]; }
@@ -699,6 +702,13 @@ function fixCSS($prop) {
699
  }
700
  else { $newprop[$k] = $v; }
701
  }
 
 
 
 
 
 
 
702
 
703
  else {
704
  $newprop[$k] = $v;
@@ -979,17 +989,13 @@ function _mergeFullCSS($p, &$t, $tag, $classes, $id) {
979
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
980
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
981
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
982
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
983
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
984
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
985
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
986
  }
987
  }
988
  else if ($tag=='TD' || $tag=='TH') {
989
- if ($m[1]=='ODD' && ($this->mpdf->col % 2) == 0) { $select = true; }
990
- else if ($m[1]=='EVEN' && ($this->mpdf->col % 2) == 1) { $select = true; }
991
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
992
- if ((($this->mpdf->col + 1) % $a[1]) == $a[2]) { $select = true; }
993
  }
994
  }
995
  if ($select) {
@@ -1241,8 +1247,13 @@ function MergeCSS($inherit,$tag,$attr) {
1241
  }
1242
  //===============================================
1243
  /*-- TABLES --*/
 
 
 
 
 
1244
  // cellPadding overwrites TD/TH default but not specific CSS set on cell
1245
- if (($tag=='TD' || $tag=='TH') && isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding']) && ($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'] || $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding']===0)) {
1246
  $p['PADDING-LEFT'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
1247
  $p['PADDING-RIGHT'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
1248
  $p['PADDING-TOP'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
@@ -1283,17 +1294,13 @@ function MergeCSS($inherit,$tag,$attr) {
1283
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
1284
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
1285
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
1286
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
1287
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
1288
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
1289
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
1290
  }
1291
  }
1292
  else if ($tag=='TD' || $tag=='TH') {
1293
- if ($m[1]=='ODD' && ($this->mpdf->col % 2) == 0) { $select = true; }
1294
- else if ($m[1]=='EVEN' && ($this->mpdf->col % 2) == 1) { $select = true; }
1295
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
1296
- if ((($this->mpdf->col+1) % $a[1]) == $a[2]) { $select = true; }
1297
  }
1298
  }
1299
  if ($select) {
@@ -1381,17 +1388,13 @@ function MergeCSS($inherit,$tag,$attr) {
1381
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
1382
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
1383
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
1384
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
1385
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
1386
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
1387
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
1388
  }
1389
  }
1390
  else if ($tag=='TD' || $tag=='TH') {
1391
- if ($m[1]=='ODD' && ($this->mpdf->col % 2) == 0) { $select = true; }
1392
- else if ($m[1]=='EVEN' && ($this->mpdf->col % 2) == 1) { $select = true; }
1393
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
1394
- if ((($this->mpdf->col + 1) % $a[1]) == $a[2]) { $select = true; }
1395
  }
1396
  }
1397
  if ($select) {
@@ -1557,7 +1560,40 @@ function PreviewBlockCSS($tag,$attr) {
1557
  return $p;
1558
  }
1559
 
1560
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1561
 
1562
 
1563
 
198
  for ($i=0;$i<count($cxtem[0]);$i++) {
199
  $embedded = $cxtem[2][$i];
200
  if (!preg_match('/^data:image/i', $embedded)) { // mPDF 5.5.13
201
+ //$this->mpdf->GetFullPath($embedded); /* Blue Liquid Designs Removed to allow both URL and PATHs to images */
202
  $tmpCSSstr = preg_replace('/'.preg_quote($cxtem[0][$i],'/').'/', ($cxtem[1][$i].$embedded.$cxtem[3][$i]), $tmpCSSstr );
203
  }
204
  }
221
  }
222
  }
223
 
 
224
  // Replace any background: url(data:image... with temporary image file reference
225
+ preg_match_all("/(url\(data:image\/(jpeg|gif|png);base64,(.*?)\))/si", $CSSstr, $idata); // mPDF 5.7.2
226
  if (count($idata[0])) {
227
  for($i=0;$i<count($idata[0]);$i++) {
228
  $file = _MPDF_TEMP_PATH.'_tempCSSidata'.RAND(1,10000).'_'.$i.'.'.$idata[2][$i];
261
  $tagarr = explode(',',$tagstr);
262
  $pageselectors = false; // used to turn on $this->mpdf->mirrorMargins
263
  foreach($tagarr AS $tg) {
264
+ // mPDF 5.7.4
265
+ if (preg_match('/NTH-CHILD\((\s*(([\-+]?\d*)N(\s*[\-+]\s*\d+)?|[\-+]?\d+|ODD|EVEN)\s*)\)/',$tg,$m) ) {
266
+ $tg = preg_replace('/NTH-CHILD\(.*\)/', 'NTH-CHILD('.str_replace(' ','',$m[1]).')', $tg);
267
+ }
268
  $tags = preg_split('/\s+/',trim($tg));
269
  $level = count($tags);
270
  $t = '';
290
  }
291
 
292
  else if ($level == 1) { // e.g. p or .class or #id or p.class or p#id
293
+ if (isset($tags[0])) { $t = trim($tags[0]); }
294
  if ($t) {
295
  $tag = '';
296
  if (preg_match('/^[.](.*)$/',$t,$m)) { $tag = 'CLASS>>'.$m[1]; }
702
  }
703
  else { $newprop[$k] = $v; }
704
  }
705
+ else if ($k == 'LIST-STYLE') { // mPDF 5.7.2
706
+ if (preg_match('/(lower-roman|upper-roman|lower-latin|lower-alpha|upper-latin|upper-alpha|none|decimal|disc|circle|square|arabic-indic|bengali|devanagari|gujarati|gurmukhi|kannada|malayalam|oriya|persian|tamil|telugu|thai|urdu|cambodian|khmer|lao)/i',$v,$m)
707
+ || preg_match('/U\+([a-fA-F0-9]+)/i',$v,$m)) {
708
+ $newprop['LIST-STYLE-TYPE'] = strtolower(trim($m[1]));
709
+ }
710
+ }
711
+
712
 
713
  else {
714
  $newprop[$k] = $v;
989
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
990
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
991
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
992
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
993
+ $select = $this->_nthchild($a, $row);
 
 
994
  }
995
  }
996
  else if ($tag=='TD' || $tag=='TH') {
997
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
998
+ $select = $this->_nthchild($a, $this->mpdf->col);
 
 
999
  }
1000
  }
1001
  if ($select) {
1247
  }
1248
  //===============================================
1249
  /*-- TABLES --*/
1250
+ // mPDF 5.7.3
1251
+ // cellSpacing overwrites TABLE default but not specific CSS set on table
1252
+ if ($tag=='TABLE' && isset($attr['CELLSPACING'])) {
1253
+ $p['BORDER-SPACING-H'] = $p['BORDER-SPACING-V'] = $attr['CELLSPACING'];
1254
+ }
1255
  // cellPadding overwrites TD/TH default but not specific CSS set on cell
1256
+ if (($tag=='TD' || $tag=='TH') && isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding']) && ($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'] || $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding']==='0')) { // mPDF 5.7.3
1257
  $p['PADDING-LEFT'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
1258
  $p['PADDING-RIGHT'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
1259
  $p['PADDING-TOP'] = $this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['cell_padding'];
1294
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
1295
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
1296
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
1297
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
1298
+ $select = $this->_nthchild($a, $row);
 
 
1299
  }
1300
  }
1301
  else if ($tag=='TD' || $tag=='TH') {
1302
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
1303
+ $select = $this->_nthchild($a, $this->mpdf->col);
 
 
1304
  }
1305
  }
1306
  if ($select) {
1388
  $tfnr = (isset($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) ? count($this->mpdf->table[$this->mpdf->tableLevel][$this->mpdf->tbctr[$this->mpdf->tableLevel]]['is_tfoot']) : 0);
1389
  if ($this->mpdf->tabletfoot) { $row -= $thnr; }
1390
  else if (!$this->mpdf->tablethead) { $row -= ($thnr + $tfnr); }
1391
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
1392
+ $select = $this->_nthchild($a, $row);
 
 
1393
  }
1394
  }
1395
  else if ($tag=='TD' || $tag=='TH') {
1396
+ if (preg_match('/(([\-+]?\d*)?N([\-+]\d+)?|[\-+]?\d+|ODD|EVEN)/',$m[1],$a)) { // mPDF 5.7.4
1397
+ $select = $this->_nthchild($a, $this->mpdf->col);
 
 
1398
  }
1399
  }
1400
  if ($select) {
1560
  return $p;
1561
  }
1562
 
1563
+ // mPDF 5.7.4 nth-child
1564
+ function _nthchild($f, $c) {
1565
+ // $f is formual e.g. 2N+1 spilt into a preg_match array
1566
+ // $c is the comparator value e.g row or column number
1567
+ $c += 1;
1568
+ $select = false;
1569
+ $a=1; $b=1;
1570
+ if ($f[0]=='ODD') { $a=2; $b=1; }
1571
+ else if ($f[0]=='EVEN') { $a=2; $b=0; }
1572
+ else if (count($f)==2) { $a=0; $b=$f[1]+0; } // e.g. (+6)
1573
+ else if (count($f)==3) { // e.g. (2N)
1574
+ if ($f[2]=='') { $a=1; }
1575
+ else if ($f[2]=='-') { $a=-1; }
1576
+ else { $a=$f[2]+0; }
1577
+ $b=0;
1578
+ }
1579
+ else if (count($f)==4) { // e.g. (2N+6)
1580
+ if ($f[2]=='') { $a=1; }
1581
+ else if ($f[2]=='-') { $a=-1; }
1582
+ else { $a=$f[2]+0; }
1583
+ $b=$f[3]+0;
1584
+ }
1585
+ else { return false; }
1586
+ if ($a>0) {
1587
+ if (((($c % $a) - $b) % $a) == 0 && $c >= $b) { $select = true; }
1588
+ }
1589
+ else if ($a==0) {
1590
+ if ($c == $b) { $select = true; }
1591
+ }
1592
+ else { // if ($a<0)
1593
+ if (((($c % $a) - $b) % $a) == 0 && $c <= $b) { $select = true; }
1594
+ }
1595
+ return $select;
1596
+ }
1597
 
1598
 
1599
 
mPDF/config.php CHANGED
@@ -99,7 +99,7 @@ $this->dpi = 96; // To interpret "px" pixel values in HTML/CSS (see img_dpi
99
  $this->allow_html_optional_endtags = true;
100
 
101
  $this->ignore_invalid_utf8 = true;
102
- $this->text_input_as_HTML = false; // Converts all entities in Text inputs to UTF-8 before encoding
103
  $this->useGraphs = false;
104
 
105
 
99
  $this->allow_html_optional_endtags = true;
100
 
101
  $this->ignore_invalid_utf8 = true;
102
+ $this->text_input_as_HTML = true; // Converts all entities in Text inputs to UTF-8 before encoding
103
  $this->useGraphs = false;
104
 
105
 
mPDF/config_fonts.php CHANGED
@@ -43,19 +43,19 @@ by including the font-family in $this->sans_fonts below
43
  To aid backwards compatability some are included:
44
  */
45
  $this->fonttrans = array(
46
- 'helvetica' => 'chelvetica',
47
- 'arial' => 'chelvetica',
48
- 'times' => 'ctimesnewroman',
49
- 'timesnewroman' => 'ctimesnewroman',
50
- 'courier' => 'ccourier',
51
- 'trebuchet' => 'trebuchetms',
52
- 'comic' => 'comicsansms',
53
- 'franklin' => 'franklingothicbook',
54
- 'albertus' => 'albertusmedium',
55
- 'arialuni' => 'arialunicodems',
56
- 'zn_hannom_a' => 'hannoma',
57
- 'ocr-b' => 'ocrb',
58
- 'ocr-b10bt' => 'ocrb',
59
  );
60
 
61
  /*
@@ -270,9 +270,10 @@ $this->fontdata = array(
270
  * Blue Liquid Designs Edit
271
  * Include the font configuration file defined by the plugin
272
  */
273
- if(file_exists(PDF_TEMPLATE_LOCATION.'fonts/config.php'))
 
274
  {
275
- include PDF_TEMPLATE_LOCATION.'fonts/config.php';
276
  }
277
 
278
 
43
  To aid backwards compatability some are included:
44
  */
45
  $this->fonttrans = array(
46
+ 'helvetica' => 'chelvetica',
47
+ 'arial' => 'chelvetica',
48
+ 'timesnewroman' => 'ctimes',
49
+ 'times' => 'ctimes',
50
+ 'courier' => 'ccourier',
51
+ 'trebuchet' => 'trebuchetms',
52
+ 'comic' => 'comicsansms',
53
+ 'franklin' => 'franklingothicbook',
54
+ 'albertus' => 'albertusmedium',
55
+ 'arialuni' => 'arialunicodems',
56
+ 'zn_hannom_a' => 'hannoma',
57
+ 'ocr-b' => 'ocrb',
58
+ 'ocr-b10bt' => 'ocrb',
59
  );
60
 
61
  /*
270
  * Blue Liquid Designs Edit
271
  * Include the font configuration file defined by the plugin
272
  */
273
+
274
+ if(file_exists($gfpdfe_data->template_font_location . 'config.php'))
275
  {
276
+ include $gfpdfe_data->template_font_location . 'config.php';
277
  }
278
 
279
 
mPDF/mpdf-extra-lite.php CHANGED
@@ -2397,7 +2397,8 @@ function AddFont($family,$style='') {
2397
  /*
2398
  * Try load in the font file from the PDF_TEMPLATE
2399
  */
2400
- $ttffile = PDF_TEMPLATE_LOCATION . 'fonts/' . $this->fontdata[$family][$stylekey];
 
2401
  if(!file_exists($ttffile))
2402
  {
2403
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
@@ -5926,9 +5927,11 @@ function SetXY($x,$y)
5926
 
5927
  function Output($name='',$dest='')
5928
  {
 
 
5929
  //Output PDF to some destination
5930
  if ($this->showStats) {
5931
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
5932
  }
5933
 
5934
  //Finish document if necessary
@@ -5972,7 +5975,7 @@ function Output($name='',$dest='')
5972
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
5973
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
5974
  $log .= 'Number of fonts '.count($this->fonts)."\n";
5975
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', $log, FILE_APPEND);
5976
  }
5977
 
5978
 
2397
  /*
2398
  * Try load in the font file from the PDF_TEMPLATE
2399
  */
2400
+ global $gfpdfe_data;
2401
+ $ttffile = $gfpdfe_data->template_site_location . 'fonts/' . $this->fontdata[$family][$stylekey];
2402
  if(!file_exists($ttffile))
2403
  {
2404
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
5927
 
5928
  function Output($name='',$dest='')
5929
  {
5930
+
5931
+ global $gfpdfe_data;
5932
  //Output PDF to some destination
5933
  if ($this->showStats) {
5934
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
5935
  }
5936
 
5937
  //Finish document if necessary
5975
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
5976
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
5977
  $log .= 'Number of fonts '.count($this->fonts)."\n";
5978
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', $log, FILE_APPEND);
5979
  }
5980
 
5981
 
mPDF/mpdf-lite.php CHANGED
@@ -2723,7 +2723,8 @@ function AddFont($family,$style='') {
2723
  /*
2724
  * Try load in the font file from the PDF_TEMPLATE
2725
  */
2726
- $ttffile = PDF_TEMPLATE_LOCATION . 'fonts/' . $this->fontdata[$family][$stylekey];
 
2727
  if(!file_exists($ttffile))
2728
  {
2729
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
@@ -6456,9 +6457,10 @@ function SetXY($x,$y)
6456
 
6457
  function Output($name='',$dest='')
6458
  {
 
6459
  //Output PDF to some destination
6460
  if ($this->showStats) {
6461
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
6462
  }
6463
 
6464
  //Finish document if necessary
@@ -6502,7 +6504,7 @@ function Output($name='',$dest='')
6502
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
6503
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
6504
  $log .= 'Number of fonts '.count($this->fonts)."\n";
6505
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', $log, FILE_APPEND);
6506
  }
6507
 
6508
 
2723
  /*
2724
  * Try load in the font file from the PDF_TEMPLATE
2725
  */
2726
+ global $gfpdfe_data;
2727
+ $ttffile = $gfpdfe_data->template_site_location . 'fonts/' . $this->fontdata[$family][$stylekey];
2728
  if(!file_exists($ttffile))
2729
  {
2730
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
6457
 
6458
  function Output($name='',$dest='')
6459
  {
6460
+ global $gfpdfe_data;
6461
  //Output PDF to some destination
6462
  if ($this->showStats) {
6463
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
6464
  }
6465
 
6466
  //Finish document if necessary
6504
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
6505
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
6506
  $log .= 'Number of fonts '.count($this->fonts)."\n";
6507
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', $log, FILE_APPEND);
6508
  }
6509
 
6510
 
mPDF/mpdf.php CHANGED
@@ -3022,19 +3022,24 @@ function AddFont($family,$style='') {
3022
  $ttffile = _MPDF_SYSTEM_TTFONTS.$this->fontdata[$family][$stylekey];
3023
  if (!file_exists($ttffile)) { $ttffile = ''; }
3024
  }
 
3025
  if (!$ttffile) {
3026
  $ttffile = _MPDF_TTFONTPATH.$this->fontdata[$family][$stylekey];
 
3027
  if (!file_exists($ttffile)) {
3028
  /*
3029
  * Try load in the font file from the PDF_TEMPLATE
3030
  */
3031
- $ttffile = PDF_TEMPLATE_LOCATION . 'fonts/' . $this->fontdata[$family][$stylekey];
 
 
3032
  if(!file_exists($ttffile))
3033
  {
3034
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
3035
  }
3036
  }
3037
  }
 
3038
  $ttfstat = stat($ttffile);
3039
 
3040
  if (isset($this->fontdata[$family]['TTCfontID'][$stylekey])) { $TTCfontID = $this->fontdata[$family]['TTCfontID'][$stylekey]; }
@@ -7336,9 +7341,11 @@ function SetXY($x,$y)
7336
 
7337
  function Output($name='',$dest='')
7338
  {
 
 
7339
  //Output PDF to some destination
7340
  if ($this->showStats) {
7341
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
7342
  }
7343
  //Finish document if necessary
7344
  if ($this->progressBar) { $this->UpdateProgressBar(1,'100','Finished'); } // *PROGRESS-BAR*
@@ -7382,7 +7389,7 @@ function Output($name='',$dest='')
7382
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
7383
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
7384
  $log .= 'Number of fonts '.count($this->fonts)."\n";
7385
- file_put_contents(PDF_SAVE_LOCATION . 'mPDF_performance_log.txt', $log, FILE_APPEND);
7386
  }
7387
 
7388
 
3022
  $ttffile = _MPDF_SYSTEM_TTFONTS.$this->fontdata[$family][$stylekey];
3023
  if (!file_exists($ttffile)) { $ttffile = ''; }
3024
  }
3025
+
3026
  if (!$ttffile) {
3027
  $ttffile = _MPDF_TTFONTPATH.$this->fontdata[$family][$stylekey];
3028
+
3029
  if (!file_exists($ttffile)) {
3030
  /*
3031
  * Try load in the font file from the PDF_TEMPLATE
3032
  */
3033
+ global $gfpdfe_data;
3034
+ $ttffile = $gfpdfe_data->template_site_location . 'fonts/' . $this->fontdata[$family][$stylekey];
3035
+
3036
  if(!file_exists($ttffile))
3037
  {
3038
  die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile);
3039
  }
3040
  }
3041
  }
3042
+
3043
  $ttfstat = stat($ttffile);
3044
 
3045
  if (isset($this->fontdata[$family]['TTCfontID'][$stylekey])) { $TTCfontID = $this->fontdata[$family]['TTCfontID'][$stylekey]; }
7341
 
7342
  function Output($name='',$dest='')
7343
  {
7344
+ global $gfpdfe_data;
7345
+
7346
  //Output PDF to some destination
7347
  if ($this->showStats) {
7348
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', date('Y-m-d h:i:s') . ' Generated in '.sprintf('%.2F',(microtime(true) - $this->time0))." seconds\r\n", FILE_APPEND);
7349
  }
7350
  //Finish document if necessary
7351
  if ($this->progressBar) { $this->UpdateProgressBar(1,'100','Finished'); } // *PROGRESS-BAR*
7389
  $log .= 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2)." MB\n";
7390
  $log .= 'PDF file size '.number_format((strlen($this->buffer)/1024))." kB\n";
7391
  $log .= 'Number of fonts '.count($this->fonts)."\n";
7392
+ file_put_contents($gfpdfe_data->template_save_location . 'mPDF_performance_log.txt', $log, FILE_APPEND);
7393
  }
7394
 
7395
 
model/pdf.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: model/pdf.php
6
  *
7
  * The model that does all the processing and interacts with our controller and view (if necisarry)
@@ -73,7 +73,7 @@ class GFPDF_Core_Model
73
  return false;
74
  }
75
 
76
- if( ($gfpdfe_data->fresh_install === true) || (!is_dir(PDF_TEMPLATE_LOCATION)) )
77
  {
78
  return false;
79
  }
@@ -107,31 +107,37 @@ class GFPDF_Core_Model
107
  * Class: PDFGenerator
108
  * File: pdf-configuration-indexer.php
109
  */
110
- $templates = $gfpdf->get_template($form_id, true);
 
 
 
 
 
 
 
 
 
 
 
111
 
112
  /* exit early if templates not found */
113
- if($templates === false)
114
  {
115
  return;
116
  }
117
 
118
- if(!is_array($templates))
119
- {
120
- $index = (isset($gfpdf->index[$form_id])) ? $gfpdf->index[$form_id] : array(-1); /* if no index (no actual configuration) we use the default name - bypassing the naming function below */
121
- $templates = array($index[0] => array('template' => $templates));
122
- }
123
 
124
  ?>
125
  <strong>PDFs</strong><br />
126
 
127
- <?php foreach($templates as $id => $val):
128
  $name = $gfpdf->get_pdf_name($id, $form_id, $lead['id']);
129
- $aid = (int) $id + 1;
130
  ?>
131
  <div class="detailed_pdf">
132
  <span><?php
133
  echo $name;
134
- $url = home_url() .'/?gf_pdf=1&aid='. $aid .'&fid=' . $form_id . '&lid=' . $lead_id . '&template=' . $val['template'];
135
  ?></span>
136
  <a href="<?php echo $url; ?>" target="_blank" class="button"><?php _e('View', 'pdfextended'); ?></a>
137
  <a href="<?php echo $url.'&download=1'; ?>" target="_blank" class="button"><?php _e('Download', 'pdfextended'); ?></a>
@@ -155,24 +161,38 @@ class GFPDF_Core_Model
155
  if(!GFCommon::current_user_can_any("gravityforms_view_entries"))
156
  {
157
  return;
158
- }
159
-
160
- $lead_id = $lead['id'];
161
 
 
 
162
  /*
163
  * Get the template name
164
  * Class: PDFGenerator
165
  * File: pdf-configuration-indexer.php
166
  */
167
- $templates = $gfpdf->get_template($form_id, true);
 
 
 
 
 
 
 
 
 
 
 
168
 
169
  /* exit early if templates not found */
170
- if($templates === false)
171
  {
172
  return;
173
  }
174
 
175
- if(is_array($templates))
 
 
 
176
  {
177
  ?>
178
  <span class="gf_form_toolbar_settings gf_form_action_has_submenu">
@@ -184,8 +204,8 @@ class GFPDF_Core_Model
184
  /*
185
  * Replace MergeTags in filename
186
  */
187
- $name = $gfpdf->get_pdf_name($id, $form_id, $lead['id']);
188
- $aid = (int) $id + 1;
189
  ?>
190
  <li class="">
191
  <?php
@@ -204,7 +224,11 @@ class GFPDF_Core_Model
204
  else
205
  {
206
 
207
- $url = home_url() . '/?gf_pdf=1&fid=' . $form_id .'&lid=' . $lead_id . '&template=' . $templates;
 
 
 
 
208
 
209
  ?>
210
  | <a href="<?php echo $url; ?>" target="_blank"><?php _e('View PDF', 'pdfextended'); ?></a>
@@ -486,6 +510,7 @@ class GFPDF_Core_Model
486
  {
487
  $template = (isset($gfpdf->configuration[$index]['template'])) ? $gfpdf->configuration[$index]['template'] : '';
488
 
 
489
  /* Get notifications user wants PDF attached to and check if the correct notifications hook is running */
490
  $notifications = self::get_form_notifications($form, $index);
491
 
@@ -560,7 +585,7 @@ class GFPDF_Core_Model
560
  public static function get_form_notifications($form, $index)
561
  {
562
  global $gfpdf;
563
-
564
  /*
565
  * Check if notification field even exists
566
  */
@@ -579,6 +604,7 @@ class GFPDF_Core_Model
579
  /*
580
  * If notifications is true the user wants to attach the PDF to all notifications
581
  */
 
582
  if($gfpdf->configuration[$index]['notifications'] === true)
583
  {
584
  $new_notifications = $notifications;
@@ -618,8 +644,7 @@ class GFPDF_Core_Model
618
  {
619
  global $gfpdf;
620
 
621
- $config = $gfpdf->configuration[$index];
622
-
623
 
624
  $pdf_name = (isset($config['filename']) && strlen($config['filename']) > 0) ? $gfpdf->get_pdf_name($index, $form_id, $lead_id) : PDF_Common::get_pdf_filename($form_id, $lead_id);
625
  $template = (isset($template) && strlen($template) > 0) ? $template : $gfpdf->get_template($index);
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: model/pdf.php
6
  *
7
  * The model that does all the processing and interacts with our controller and view (if necisarry)
73
  return false;
74
  }
75
 
76
+ if( ($gfpdfe_data->fresh_install === true) || (!is_dir($gfpdfe_data->template_site_location)) )
77
  {
78
  return false;
79
  }
107
  * Class: PDFGenerator
108
  * File: pdf-configuration-indexer.php
109
  */
110
+ $template = $gfpdf->get_template($form_id);
111
+
112
+ /*
113
+ * Before setting up PDF options we will check if a configuration is found
114
+ * If not, we will set up defaults defined in configuration.php
115
+ */
116
+ $index = self::check_configuration($form_id, $template);
117
+
118
+ /*
119
+ * Now all the correct configuration and indexes are in place lets get our configuration nodes
120
+ */
121
+ $templates = $gfpdf->get_form_configuration($form_id);
122
 
123
  /* exit early if templates not found */
124
+ if($templates === false || sizeof($templates) === 0)
125
  {
126
  return;
127
  }
128
 
 
 
 
 
 
129
 
130
  ?>
131
  <strong>PDFs</strong><br />
132
 
133
+ <?php foreach($templates as $id => $template):
134
  $name = $gfpdf->get_pdf_name($id, $form_id, $lead['id']);
135
+ $aid = $gfpdf->get_aid($id, $form_id);
136
  ?>
137
  <div class="detailed_pdf">
138
  <span><?php
139
  echo $name;
140
+ $url = home_url() .'/?gf_pdf=1&aid='. $aid .'&fid=' . $form_id . '&lid=' . $lead_id . '&template=' . $template['template'];
141
  ?></span>
142
  <a href="<?php echo $url; ?>" target="_blank" class="button"><?php _e('View', 'pdfextended'); ?></a>
143
  <a href="<?php echo $url.'&download=1'; ?>" target="_blank" class="button"><?php _e('Download', 'pdfextended'); ?></a>
161
  if(!GFCommon::current_user_can_any("gravityforms_view_entries"))
162
  {
163
  return;
164
+ }
 
 
165
 
166
+ $lead_id = $lead['id'];
167
+
168
  /*
169
  * Get the template name
170
  * Class: PDFGenerator
171
  * File: pdf-configuration-indexer.php
172
  */
173
+ $template = $gfpdf->get_template($form_id);
174
+
175
+ /*
176
+ * Before setting up PDF options we will check if a configuration is found
177
+ * If not, we will set up defaults defined in configuration.php
178
+ */
179
+ $index = self::check_configuration($form_id, $template);
180
+
181
+ /*
182
+ * Now all the correct configuration and indexes are in place lets get our configuration nodes
183
+ */
184
+ $templates = $gfpdf->get_form_configuration($form_id);
185
 
186
  /* exit early if templates not found */
187
+ if($templates === false || sizeof($templates) === 0)
188
  {
189
  return;
190
  }
191
 
192
+ /*
193
+ * Show if multiple PDFs assigned to single form
194
+ */
195
+ if(sizeof($templates) > 1)
196
  {
197
  ?>
198
  <span class="gf_form_toolbar_settings gf_form_action_has_submenu">
204
  /*
205
  * Replace MergeTags in filename
206
  */
207
+ $name = $gfpdf->get_pdf_name($id, $form_id, $lead['id']);
208
+ $aid = $gfpdf->get_aid($id, $form_id);
209
  ?>
210
  <li class="">
211
  <?php
224
  else
225
  {
226
 
227
+ /*
228
+ * Get the first and only item in the array
229
+ */
230
+ $template = array_shift($templates);
231
+ $url = home_url() . '/?gf_pdf=1&fid=' . $form_id .'&lid=' . $lead_id . '&template=' . $template['template'];
232
 
233
  ?>
234
  | <a href="<?php echo $url; ?>" target="_blank"><?php _e('View PDF', 'pdfextended'); ?></a>
510
  {
511
  $template = (isset($gfpdf->configuration[$index]['template'])) ? $gfpdf->configuration[$index]['template'] : '';
512
 
513
+
514
  /* Get notifications user wants PDF attached to and check if the correct notifications hook is running */
515
  $notifications = self::get_form_notifications($form, $index);
516
 
585
  public static function get_form_notifications($form, $index)
586
  {
587
  global $gfpdf;
588
+
589
  /*
590
  * Check if notification field even exists
591
  */
604
  /*
605
  * If notifications is true the user wants to attach the PDF to all notifications
606
  */
607
+
608
  if($gfpdf->configuration[$index]['notifications'] === true)
609
  {
610
  $new_notifications = $notifications;
644
  {
645
  global $gfpdf;
646
 
647
+ $config = $gfpdf->configuration[$index];
 
648
 
649
  $pdf_name = (isset($config['filename']) && strlen($config['filename']) > 0) ? $gfpdf->get_pdf_name($index, $form_id, $lead_id) : PDF_Common::get_pdf_filename($form_id, $lead_id);
650
  $template = (isset($template) && strlen($template) > 0) ? $template : $gfpdf->get_template($index);
model/settings.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: mode/settings.php
6
  *
7
  * The model that does all the processing and interacts with our controller and view
@@ -253,24 +253,15 @@ class GFPDF_Settings_Model extends GFPDF_Settings
253
  /*
254
  * Default our values
255
  */
256
- $gfpdfe_data->can_write_plugin_dir = false;
257
- $gfpdfe_data->can_write_theme_dir = false;
258
 
259
  /*
260
- * Test the plugin folder so we can unzip mPDF
261
  */
262
- if($this->test_write_permissions(PDF_PLUGIN_DIR) === true)
263
  {
264
- $gfpdfe_data->can_write_plugin_dir = true;
265
- }
266
-
267
- /*
268
- * Check if we can write in the user's active theme directory
269
- */
270
- if($this->test_write_permissions(get_stylesheet_directory() . '/') === true)
271
- {
272
- $gfpdfe_data->can_write_theme_dir = true;
273
- }
274
  }
275
  else
276
  {
@@ -284,12 +275,12 @@ class GFPDF_Settings_Model extends GFPDF_Settings
284
  /*
285
  * The PDF_EXTENDED_TEMPLATE folder is created so lets check our permissions
286
  */
287
- if($this->test_write_permissions(PDF_SAVE_LOCATION) === true)
288
  {
289
  $gfpdfe_data->can_write_output_dir = true;
290
  }
291
 
292
- if($this->test_write_permissions(PDF_FONT_LOCATION) === true)
293
  {
294
  $gfpdfe_data->can_write_font_dir = true;
295
  }
@@ -354,13 +345,14 @@ class GFPDF_Settings_Model extends GFPDF_Settings
354
  if(isset($gfpdfe_data->configuration_file))
355
  {
356
  return $gfpdfe_data->configuration_file;
357
- }
 
358
  /*
359
  * Include the current configuration, if available
360
  */
361
- if(file_exists(PDF_TEMPLATE_LOCATION . 'configuration.php'))
362
  {
363
- return esc_html(file_get_contents(PDF_TEMPLATE_LOCATION . 'configuration.php'));
364
  }
365
  else
366
  {
@@ -368,20 +360,23 @@ class GFPDF_Settings_Model extends GFPDF_Settings
368
  }
369
  }
370
 
371
- private static function get_system_status_html()
372
  {
373
  global $gfpdfe_data;
374
 
375
- if(isset($gfpdfe_data->system_status))
376
- {
377
- return $gfpdfe_data->system_status;
378
- }
379
-
380
  ob_start();
381
  include PDF_PLUGIN_DIR . 'view/templates/settings/system-status.php';
382
  $content = ob_get_contents();
383
  ob_end_clean();
384
- return esc_html($content);
 
 
 
 
 
 
 
 
385
  }
386
 
387
  private static function get_active_plugins()
@@ -459,7 +454,7 @@ class GFPDF_Settings_Model extends GFPDF_Settings
459
  }
460
 
461
  /*
462
- * Do our POST request to the Gravity Forms PDF Extended API
463
  */
464
  self::send_support_request($email, $countType, $comments);
465
 
@@ -471,43 +466,23 @@ class GFPDF_Settings_Model extends GFPDF_Settings
471
  public static function send_support_request($email, $countType, $comments)
472
  {
473
  global $gfpdfe_data;
474
- /*
475
- * Include our API class
476
- */
477
- $api = new gfpdfe_API();
478
-
479
  /*
480
  * Build our support request array
481
  */
482
 
483
  $active_plugins = self::get_active_plugins();
484
- $system_status = self::get_system_status_html();
485
- $configuration = self::get_configuration_file();
486
  $website = site_url('/');
487
- $comments = stripslashes($comments);
488
-
489
- $body = array(
490
- 'support_type' => $countType,
491
- 'email' => $email,
492
- 'website' => $website,
493
- 'active_plugins' => $active_plugins,
494
- 'system_status' => $system_status,
495
- 'configuration' => $configuration,
496
- 'comments' => $comments,
497
- );
498
 
499
- if($api->support_request($body) === false)
500
- {
501
- /*
502
- * API could not send
503
- * Draft a plain text email and send to support
504
- */
505
  $configuration = htmlspecialchars_decode($configuration, ENT_QUOTES);
506
 
507
- $subject = 'Gravity Forms PDF Extended Support Request';
508
- $to = 'support@gravityformspdfextended.com';
509
  $from = $email;
510
- $message = "Support Type: $countType\r\nWebsite: $website\r\n\r\nComments\r\n\r\n$comments\r\n\r\n\r\nActive Plugins\r\n\r\n$active_plugins\r\n\r\n\r\nConfiguration\r\n\r\n$configuration";
511
 
512
  $headers[] = 'From: '. $email;
513
 
@@ -524,7 +499,6 @@ class GFPDF_Settings_Model extends GFPDF_Settings
524
  print json_encode(array('msg' => __('Support request received. We will responed in 24 to 48 hours.', 'pdfextended')));
525
  exit;
526
  }
527
- }
528
 
529
  /*
530
  * Create our
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: mode/settings.php
6
  *
7
  * The model that does all the processing and interacts with our controller and view
253
  /*
254
  * Default our values
255
  */
256
+ $gfpdfe_data->can_write_upload_dir = false;
 
257
 
258
  /*
259
+ * Test the upload folder where our templates are stored
260
  */
261
+ if($this->test_write_permissions($gfpdfe_data->upload_dir) === true)
262
  {
263
+ $gfpdfe_data->can_write_upload_dir = true;
264
+ }
 
 
 
 
 
 
 
 
265
  }
266
  else
267
  {
275
  /*
276
  * The PDF_EXTENDED_TEMPLATE folder is created so lets check our permissions
277
  */
278
+ if($this->test_write_permissions($gfpdfe_data->template_save_location) === true)
279
  {
280
  $gfpdfe_data->can_write_output_dir = true;
281
  }
282
 
283
+ if($this->test_write_permissions($gfpdfe_data->template_font_location) === true)
284
  {
285
  $gfpdfe_data->can_write_font_dir = true;
286
  }
345
  if(isset($gfpdfe_data->configuration_file))
346
  {
347
  return $gfpdfe_data->configuration_file;
348
+ }
349
+
350
  /*
351
  * Include the current configuration, if available
352
  */
353
+ if(file_exists($gfpdfe_data->template_site_location . 'configuration.php'))
354
  {
355
+ return esc_html(file_get_contents($gfpdfe_data->template_site_location . '/configuration.php'));
356
  }
357
  else
358
  {
360
  }
361
  }
362
 
363
+ private static function get_system_status_html($strip_html = false)
364
  {
365
  global $gfpdfe_data;
366
 
 
 
 
 
 
367
  ob_start();
368
  include PDF_PLUGIN_DIR . 'view/templates/settings/system-status.php';
369
  $content = ob_get_contents();
370
  ob_end_clean();
371
+
372
+ if($strip_html)
373
+ {
374
+ return wp_strip_all_tags($content, true);
375
+ }
376
+ else
377
+ {
378
+ return esc_html($content);
379
+ }
380
  }
381
 
382
  private static function get_active_plugins()
454
  }
455
 
456
  /*
457
+ * Do our POST request to the Gravity PDF API
458
  */
459
  self::send_support_request($email, $countType, $comments);
460
 
466
  public static function send_support_request($email, $countType, $comments)
467
  {
468
  global $gfpdfe_data;
469
+
 
 
 
 
470
  /*
471
  * Build our support request array
472
  */
473
 
474
  $active_plugins = self::get_active_plugins();
475
+ $system_status = self::get_system_status_html(true);
476
+ $configuration = self::get_configuration_file() ;
477
  $website = site_url('/');
478
+ $comments = stripslashes($comments);
 
 
 
 
 
 
 
 
 
 
479
 
 
 
 
 
 
 
480
  $configuration = htmlspecialchars_decode($configuration, ENT_QUOTES);
481
 
482
+ $subject = $countType . ': Automated Ticket for "'. get_bloginfo('name') . '"';
483
+ $to = 'support@gravitypdf.com';
484
  $from = $email;
485
+ $message = "Support Type: $countType\r\n\r\nWebsite: $website\r\n\r\n----------------\r\n\r\n$comments\r\n\r\n----------------\r\n\r\n$system_status\r\n\r\n\r\nActive Plugins\r\n\r\n$active_plugins\r\n\r\n\r\n**Configuration**\r\n\r\n$configuration";
486
 
487
  $headers[] = 'From: '. $email;
488
 
499
  print json_encode(array('msg' => __('Support request received. We will responed in 24 to 48 hours.', 'pdfextended')));
500
  exit;
501
  }
 
502
 
503
  /*
504
  * Create our
pdf-settings.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  /**
4
- * Plugin: Gravity Forms PDF Extended
5
  * File: pdf-settings.php
6
  *
7
  * The controller that handles the Gravity Forms Settings page in Wordpress
@@ -41,6 +41,8 @@ class GFPDF_Settings
41
  */
42
  protected function run_setting_routing()
43
  {
 
 
44
  /*
45
  * Check if we need to redeploy default PDF templates/styles to the theme folder
46
  */
@@ -49,8 +51,18 @@ class GFPDF_Settings
49
  {
50
  /*
51
  * Check if the user wants to upgrade the system or only initialise the fonts
52
- */
53
- if(rgpost('upgrade'))
 
 
 
 
 
 
 
 
 
 
54
  {
55
  /*
56
  * Deploy new template styles
@@ -62,16 +74,6 @@ class GFPDF_Settings
62
  return true;
63
  }
64
  }
65
- elseif(PDF_Common::post('font-initialise'))
66
- {
67
- /*
68
- * We only want to reinitialise the font files and configuration
69
- */
70
- if(GFPDF_InstallUpdater::initialise_fonts() === false)
71
- {
72
- return true;
73
- }
74
- }
75
  }
76
 
77
  /*
@@ -83,11 +85,10 @@ class GFPDF_Settings
83
  /*
84
  * Check if we want to copy the theme files
85
  */
86
- if(wp_verify_nonce(PDF_Common::get('_wpnonce'), 'gfpdfe_sync_now') )
87
- {
88
- $themes = get_option('gfpdfe_switch_theme');
89
-
90
- if(isset($themes['old']) && isset($themes['new']) && GFPDF_InstallUpdater::do_theme_switch($themes['old'], $themes['new']) === 'false')
91
  {
92
  return true;
93
  }
@@ -107,11 +108,17 @@ class GFPDF_Settings
107
  */
108
  if(is_multisite() && is_super_admin() && ($gfpdfe_data->fresh_install === true) )
109
  {
110
- $results = GFPDF_InstallUpdater::run_multisite_deployment();
111
- if($results === 'false')
 
112
  {
113
- return $results;
114
- }
 
 
 
 
 
115
  }
116
  else
117
  {
1
  <?php
2
 
3
  /**
4
+ * Plugin: Gravity PDF
5
  * File: pdf-settings.php
6
  *
7
  * The controller that handles the Gravity Forms Settings page in Wordpress
41
  */
42
  protected function run_setting_routing()
43
  {
44
+ global $gfpdfe_data;
45
+
46
  /*
47
  * Check if we need to redeploy default PDF templates/styles to the theme folder
48
  */
51
  {
52
  /*
53
  * Check if the user wants to upgrade the system or only initialise the fonts
54
+ */
55
+ if(PDF_Common::post('font-initialise'))
56
+ {
57
+ /*
58
+ * We only want to reinitialise the font files and configuration
59
+ */
60
+ if(GFPDF_InstallUpdater::initialise_fonts() === false)
61
+ {
62
+ return true;
63
+ }
64
+ }
65
+ else if(rgpost('upgrade'))
66
  {
67
  /*
68
  * Deploy new template styles
74
  return true;
75
  }
76
  }
 
 
 
 
 
 
 
 
 
 
77
  }
78
 
79
  /*
85
  /*
86
  * Check if we want to copy the theme files
87
  */
88
+ if(is_dir($gfpdfe_data->old_template_location) && wp_verify_nonce(PDF_Common::get('_wpnonce'), 'gfpdfe_migrate') )
89
+ {
90
+
91
+ if(GFPDF_InstallUpdater::run_template_migration() === 'false')
 
92
  {
93
  return true;
94
  }
108
  */
109
  if(is_multisite() && is_super_admin() && ($gfpdfe_data->fresh_install === true) )
110
  {
111
+ $results = GFPDF_InstallUpdater::run_multisite_deployment(array('GFPDF_InstallUpdater', 'do_deploy'));
112
+
113
+ if($results === true)
114
  {
115
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_network_deploy_success'));
116
+ }
117
+ elseif($results === false)
118
+ {
119
+ add_action($gfpdfe_data->notice_type, array('GFPDF_Notices', 'gf_pdf_auto_deploy_network_failure'));
120
+ }
121
+ return $results;
122
  }
123
  else
124
  {
pdf.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
 
3
  /*
4
- Plugin Name: Gravity Forms PDF Extended
5
- Plugin URI: http://www.gravityformspdfextended.com
6
- Description: Gravity Forms PDF Extended allows you to save/view/download a PDF from the front- and back-end, and automate PDF creation on form submission. Our Business Plus package also allows you to overlay field onto an existing PDF.
7
- Version: 3.5.11.1
8
  Author: Blue Liquid Designs
9
  Author URI: http://www.blueliquiddesigns.com.au
10
 
@@ -33,38 +33,40 @@ GNU General Public License for more details.
33
  /*
34
  * Define our constants
35
  */
36
- define('PDF_EXTENDED_VERSION', '3.5.11.1');
37
- define('GF_PDF_EXTENDED_SUPPORTED_VERSION', '1.7');
38
- define('GF_PDF_EXTENDED_WP_SUPPORTED_VERSION', '3.5');
39
  define('GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION', '5');
40
 
41
  define('PDF_PLUGIN_DIR', plugin_dir_path( __FILE__ ));
42
  define('PDF_PLUGIN_URL', plugin_dir_url( __FILE__ ));
43
  define("PDF_SETTINGS_URL", site_url() .'/wp-admin/admin.php?page=gf_settings&subview=PDF');
44
  define('PDF_SAVE_FOLDER', 'PDF_EXTENDED_TEMPLATES');
45
- define('PDF_SAVE_LOCATION', get_stylesheet_directory().'/'.PDF_SAVE_FOLDER.'/output/');
46
- define('PDF_FONT_LOCATION', get_stylesheet_directory().'/'.PDF_SAVE_FOLDER.'/fonts/');
47
- define('PDF_TEMPLATE_LOCATION', get_stylesheet_directory().'/'.PDF_SAVE_FOLDER.'/');
48
- define('PDF_TEMPLATE_URL_LOCATION', get_stylesheet_directory_uri().'/'. PDF_SAVE_FOLDER .'/');
49
  define('GF_PDF_EXTENDED_PLUGIN_BASENAME', plugin_basename(__FILE__));
50
 
51
  /*
52
- * Include the core helper files
53
- */
54
- include PDF_PLUGIN_DIR . 'helper/api.php';
55
  include PDF_PLUGIN_DIR . 'helper/data.php';
56
  include PDF_PLUGIN_DIR . 'helper/notices.php';
57
  include PDF_PLUGIN_DIR . 'helper/pdf-configuration-indexer.php';
58
- include PDF_PLUGIN_DIR . 'helper/installation-update-manager.php';
 
59
 
60
  /*
61
  * Initialise our data helper class
62
  */
63
  global $gfpdfe_data;
64
- $gfpdfe_data = new GFPDFE_DATA();
65
-
 
 
 
 
66
  include PDF_PLUGIN_DIR . 'pdf-settings.php';
67
- include PDF_PLUGIN_DIR . 'helper/pdf-common.php';
 
 
68
 
69
  /*
70
  * Initiate the class after Gravity Forms has been loaded using the init hook.
@@ -106,12 +108,24 @@ class GFPDF_Core extends PDFGenerator
106
  * Needs to be run before major compatibility checks so it can prompt user
107
  * about issues with WP version or PHP
108
  */
109
- if($gfpdfe_data->gf_is_compatible === true)
110
- {
 
 
 
 
 
 
111
  /*
112
- * Run our scripts and add the settings page to the admin area
113
- */
114
- add_action('admin_init', array('GFPDF_Core', 'gfe_admin_init'), 9);
 
 
 
 
 
 
115
  }
116
 
117
  /*
@@ -135,8 +149,7 @@ class GFPDF_Core extends PDFGenerator
135
  * Some functions are required to monitor changes in the admin area
136
  * and ensure the plugin functions smoothly
137
  */
138
- add_action('admin_init', array('GFPDF_Core', 'fully_loaded_admin'), 9999); /* run later than usual to give our auto initialiser a chance to fire */
139
- add_action('after_switch_theme', array('GFPDF_InstallUpdater', 'gf_pdf_on_switch_theme'), 10, 2); /* listen for a theme chance and sync our PDF_EXTENDED_TEMPLATE folder */
140
 
141
  /*
142
  * Only load the plugin if the following requirements are met:
@@ -229,6 +242,14 @@ class GFPDF_Core extends PDFGenerator
229
  public static function fully_loaded_admin()
230
  {
231
 
 
 
 
 
 
 
 
 
232
  global $gfpdfe_data;
233
 
234
  /*
@@ -244,30 +265,29 @@ class GFPDF_Core extends PDFGenerator
244
  }
245
 
246
  /*
247
- * Check if we have direct write access to the server
248
- */
249
  GFPDF_InstallUpdater::check_filesystem_api();
250
-
251
  /*
252
- * Check if we can automatically deploy the software.
253
- * 90% of sites should be able to do this as they will have 'direct' write abilities
254
- * to their server files.
255
- */
256
  GFPDF_InstallUpdater::maybe_deploy();
257
-
258
  /*
259
- * Check if we need to deploy the software
260
- */
261
- self::check_deployment();
262
-
263
- /*
264
- * Check if the user has switched themes and they haven't yet prompt user to copy over directory structure
265
- * If the plugin has just initialised we won't check for a theme swap as initialisation will reset this value
266
- */
267
- if(!rgpost('upgrade'))
268
- {
269
- GFPDF_InstallUpdater::check_theme_switch();
270
- }
271
  }
272
 
273
  /*
@@ -315,11 +335,7 @@ class GFPDF_Core extends PDFGenerator
315
  */
316
  $theme_switch = get_option('gfpdfe_switch_theme');
317
 
318
- if( (
319
- (get_option('gf_pdf_extended_installed') != 'installed')
320
- ) && (!rgpost('upgrade') )
321
- && (empty($theme_switch['old']) )
322
- )
323
  {
324
  /*
325
  * Prompt user to initialise plugin
@@ -327,13 +343,12 @@ class GFPDF_Core extends PDFGenerator
327
  add_action($gfpdfe_data->notice_type, array("GFPDF_Notices", "gf_pdf_not_deployed_fresh"));
328
  }
329
  elseif( (
330
- ( !is_dir(PDF_TEMPLATE_LOCATION)) ||
331
- ( !file_exists(PDF_TEMPLATE_LOCATION . 'configuration.php') ) ||
332
- ( !is_dir(PDF_SAVE_LOCATION) )
333
  )
334
  && (!rgpost('upgrade'))
335
- && (empty($theme_switch['old']) )
336
-
337
  )
338
  {
339
 
@@ -352,7 +367,7 @@ class GFPDF_Core extends PDFGenerator
352
  /*
353
  * Configure the settings page
354
  */
355
- wp_enqueue_style( 'pdfextended-admin-styles', PDF_PLUGIN_URL . 'resources/css/admin-styles.min.css', array('dashicons'), '1.3' );
356
  wp_enqueue_script( 'pdfextended-settings-script', PDF_PLUGIN_URL . 'resources/javascript/admin.min.js', array(), '1.3' );
357
 
358
  /*
@@ -371,8 +386,7 @@ class GFPDF_Core extends PDFGenerator
371
  add_filter('gform_noconflict_styles', array('GFPDF_Core', 'register_gravityform_styles'));
372
 
373
  add_filter('gform_tooltips', array('GFPDF_Notices', 'add_tooltips'));
374
-
375
- GFPDF_Settings::settings_page();
376
  }
377
 
378
  /*
@@ -405,40 +419,31 @@ class GFPDF_Core extends PDFGenerator
405
  */
406
  if (!function_exists('array_replace_recursive'))
407
  {
408
- function array_replace_recursive()
409
- {
410
- // Get array arguments
411
- $arrays = func_get_args();
412
-
413
- // Define the original array
414
- $original = array_shift($arrays);
415
-
416
- // Loop through arrays
417
- foreach ($arrays as $array)
418
- {
419
- // Loop through array key/value pairs
420
- foreach ($array as $key => $value)
421
- {
422
- if(!isset($original[$key]))
423
- $original[$key] = array();
424
-
425
- // Value is an array
426
- if (is_array($value))
427
- {
428
- // Traverse the array; replace or add result to original array
429
- $original[$key] = array_replace_recursive($original[$key], $array[$key]);
430
- }
431
-
432
- // Value is not an array
433
- else
434
- {
435
- // Replace or add current value to original array
436
- $original[$key] = $value;
437
- }
438
- }
439
- }
440
-
441
- // Return the joined array
442
- return $original;
443
- }
444
  }
1
  <?php
2
 
3
  /*
4
+ Plugin Name: Gravity PDF
5
+ Plugin URI: https://gravitypdf.com
6
+ Description: Gravity PDF allows you to save/view/download a PDF from the front- and back-end, and automate PDF creation on form submission. Our Business Plus package also allows you to overlay field onto an existing PDF.
7
+ Version: 3.6.0
8
  Author: Blue Liquid Designs
9
  Author URI: http://www.blueliquiddesigns.com.au
10
 
33
  /*
34
  * Define our constants
35
  */
36
+ define('PDF_EXTENDED_VERSION', '3.6.0');
37
+ define('GF_PDF_EXTENDED_SUPPORTED_VERSION', '1.8');
38
+ define('GF_PDF_EXTENDED_WP_SUPPORTED_VERSION', '3.9');
39
  define('GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION', '5');
40
 
41
  define('PDF_PLUGIN_DIR', plugin_dir_path( __FILE__ ));
42
  define('PDF_PLUGIN_URL', plugin_dir_url( __FILE__ ));
43
  define("PDF_SETTINGS_URL", site_url() .'/wp-admin/admin.php?page=gf_settings&subview=PDF');
44
  define('PDF_SAVE_FOLDER', 'PDF_EXTENDED_TEMPLATES');
 
 
 
 
45
  define('GF_PDF_EXTENDED_PLUGIN_BASENAME', plugin_basename(__FILE__));
46
 
47
  /*
48
+ * Include the core files
49
+ */
 
50
  include PDF_PLUGIN_DIR . 'helper/data.php';
51
  include PDF_PLUGIN_DIR . 'helper/notices.php';
52
  include PDF_PLUGIN_DIR . 'helper/pdf-configuration-indexer.php';
53
+ include PDF_PLUGIN_DIR . 'helper/installation-update-manager.php';
54
+ include PDF_PLUGIN_DIR . 'helper/pdf-common.php';
55
 
56
  /*
57
  * Initialise our data helper class
58
  */
59
  global $gfpdfe_data;
60
+ $gfpdfe_data = new GFPDFE_DATA();
61
+
62
+ /* set our PDF folder storage */
63
+ $gfpdfe_data->set_directory_structure();
64
+
65
+ /* include our regular files */
66
  include PDF_PLUGIN_DIR . 'pdf-settings.php';
67
+ include PDF_PLUGIN_DIR . 'depreciated.php';
68
+
69
+
70
 
71
  /*
72
  * Initiate the class after Gravity Forms has been loaded using the init hook.
108
  * Needs to be run before major compatibility checks so it can prompt user
109
  * about issues with WP version or PHP
110
  */
111
+
112
+ if($gfpdfe_data->gf_is_compatible === true && is_admin())
113
+ {
114
+ /*
115
+ * Run our settings page
116
+ */
117
+ GFPDF_Settings::settings_page();
118
+
119
  /*
120
+ * Only load our scripts if on a Gravity Forms admin page
121
+ */
122
+ if( isset($_GET['page']) && (substr($_GET['page'], 0, 3) === 'gf_') )
123
+ {
124
+ /*
125
+ * Run our scripts and add the settings page to the admin area
126
+ */
127
+ add_action('admin_init', array('GFPDF_Core', 'gfe_admin_init'), 9);
128
+ }
129
  }
130
 
131
  /*
149
  * Some functions are required to monitor changes in the admin area
150
  * and ensure the plugin functions smoothly
151
  */
152
+ add_action('admin_init', array('GFPDF_Core', 'fully_loaded_admin'), 9999); /* run later than usual to give our auto initialiser a chance to fire */
 
153
 
154
  /*
155
  * Only load the plugin if the following requirements are met:
242
  public static function fully_loaded_admin()
243
  {
244
 
245
+ /*
246
+ * Check user has the correct permissions to deploy the software
247
+ */
248
+ if(!current_user_can( 'manage_options' ))
249
+ {
250
+ return;
251
+ }
252
+
253
  global $gfpdfe_data;
254
 
255
  /*
265
  }
266
 
267
  /*
268
+ * Check if we have direct write access to the server
269
+ */
270
  GFPDF_InstallUpdater::check_filesystem_api();
271
+
272
  /*
273
+ * Check if we can automatically deploy the software.
274
+ * 90% of sites should be able to do this as they will have 'direct' write abilities
275
+ * to their server files.
276
+ */
277
  GFPDF_InstallUpdater::maybe_deploy();
278
+
279
  /*
280
+ * Check if we need to deploy the software
281
+ */
282
+ self::check_deployment();
283
+
284
+ /*
285
+ * Check if the template folder location needs to be migrated
286
+ */
287
+ if(!rgpost('upgrade'))
288
+ {
289
+ GFPDF_InstallUpdater::check_template_migration();
290
+ }
 
291
  }
292
 
293
  /*
335
  */
336
  $theme_switch = get_option('gfpdfe_switch_theme');
337
 
338
+ if( get_option('gf_pdf_extended_installed') != 'installed' && !rgpost('upgrade') )
 
 
 
 
339
  {
340
  /*
341
  * Prompt user to initialise plugin
343
  add_action($gfpdfe_data->notice_type, array("GFPDF_Notices", "gf_pdf_not_deployed_fresh"));
344
  }
345
  elseif( (
346
+ ( !is_dir($gfpdfe_data->template_site_location)) ||
347
+ ( !file_exists($gfpdfe_data->template_site_location . 'configuration.php') ) ||
348
+ ( !is_dir($gfpdfe_data->template_save_location) )
349
  )
350
  && (!rgpost('upgrade'))
351
+ && (!is_dir($gfpdfe_data->old_template_location) )
 
352
  )
353
  {
354
 
367
  /*
368
  * Configure the settings page
369
  */
370
+ wp_enqueue_style( 'pdfextended-admin-styles', PDF_PLUGIN_URL . 'resources/css/admin-styles.min.css', array(), '1.3' );
371
  wp_enqueue_script( 'pdfextended-settings-script', PDF_PLUGIN_URL . 'resources/javascript/admin.min.js', array(), '1.3' );
372
 
373
  /*
386
  add_filter('gform_noconflict_styles', array('GFPDF_Core', 'register_gravityform_styles'));
387
 
388
  add_filter('gform_tooltips', array('GFPDF_Notices', 'add_tooltips'));
389
+
 
390
  }
391
 
392
  /*
419
  */
420
  if (!function_exists('array_replace_recursive'))
421
  {
422
+ function array_replace_recursive($base, $replacements)
423
+ {
424
+ foreach (array_slice(func_get_args(), 1) as $replacements) {
425
+ $bref_stack = array(&$base);
426
+ $head_stack = array($replacements);
427
+
428
+ do {
429
+ end($bref_stack);
430
+
431
+ $bref = &$bref_stack[key($bref_stack)];
432
+ $head = array_pop($head_stack);
433
+
434
+ unset($bref_stack[key($bref_stack)]);
435
+
436
+ foreach (array_keys($head) as $key) {
437
+ if (isset($key, $bref) && isset($bref[$key]) && is_array($bref[$key]) && is_array($head[$key])) {
438
+ $bref_stack[] = &$bref[$key];
439
+ $head_stack[] = $head[$key];
440
+ } else {
441
+ $bref[$key] = $head[$key];
442
+ }
443
+ }
444
+ } while(count($head_stack));
445
+ }
446
+
447
+ return $base;
448
+ }
 
 
 
 
 
 
 
 
 
449
  }
resources/css/admin-styles.css CHANGED
@@ -101,7 +101,7 @@ border: 1px solid #CCC;
101
  border: 1px solid #d10b0b;
102
  }
103
 
104
- #support-request .icon-remove-sign {
105
  vertical-align: middle;
106
  }
107
 
@@ -125,18 +125,18 @@ margin-top: 20px;
125
  }
126
 
127
 
128
- #pdfextended-settings div.notice {
129
  margin: 5px 15px 2px;
130
  padding: 0 0.6em;
131
  }
132
 
133
- #pdfextended-settings div.notice {
134
  background-color: #FFFFFF;
135
  border-left: 4px solid #7AD03A;
136
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
137
  }
138
 
139
- .wrap #pdfextended-settings div.notice {
140
  margin: 5px 0 15px;
141
  padding: 1px 12px;
142
  }
@@ -146,67 +146,23 @@ div.notice p {
146
  padding: 2px;
147
  }
148
 
149
-
150
- /*
151
- * Icon Styles
152
- */
153
- [class^="icon-"]:before, [class*=" icon-"]:before {
154
- display: inline-block;
155
- text-decoration: inherit;
156
- -webkit-font-smoothing: antialiased;
157
- }
158
-
159
- [class^="icon-"], [class*=" icon-"] {
160
- background-image: none;
161
- background-position: 0 0;
162
- background-repeat: repeat;
163
- display: inline;
164
- height: auto;
165
- line-height: normal;
166
- margin-top: 0;
167
- vertical-align: baseline;
168
- width: auto;
169
- -webkit-font-smoothing: antialiased;
170
- }
171
- [class^="icon-"], [class*=" icon-"] {
172
- font-family: "dashicons";
173
- font-style: normal;
174
- font-weight: normal;
175
- text-decoration: inherit;
176
- }
177
-
178
- .icon-ok-sign, .icon-remove-sign, .icon-warning-sign {
179
- border-radius: 50%;
180
- font-size: 13px;
181
- margin-left: 5px;
182
- color: #FFF;
183
-
184
- }
185
-
186
- .icon-ok-sign {
187
- background: #008000;
188
- }
189
-
190
- .icon-remove-sign {
191
- background: #d10b0b;
192
- }
193
-
194
- .icon-warning-sign {
195
- background: #ff8a00;
196
  }
197
 
198
- .icon-ok-sign:before {
199
- content: "\f147";
200
- padding: 0 1px 0 0;
201
  }
202
 
203
- .icon-remove-sign:before {
204
- content: "\f335";
205
- padding: 0 1px 0 0;
206
  }
207
 
208
- .icon-warning-sign:before {
209
- content: "\f107";
210
  }
211
 
212
  #pdf-system-status label, label.inline-label {
101
  border: 1px solid #d10b0b;
102
  }
103
 
104
+ #support-request .fa-times-circle {
105
  vertical-align: middle;
106
  }
107
 
125
  }
126
 
127
 
128
+ #pdfextended-settings div.notice, .pdf-notice {
129
  margin: 5px 15px 2px;
130
  padding: 0 0.6em;
131
  }
132
 
133
+ #pdfextended-settings div.notice, .pdf-notice {
134
  background-color: #FFFFFF;
135
  border-left: 4px solid #7AD03A;
136
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
137
  }
138
 
139
+ .wrap #pdfextended-settings div.notice, .pdf-notice {
140
  margin: 5px 0 15px;
141
  padding: 1px 12px;
142
  }
146
  padding: 2px;
147
  }
148
 
149
+ #pdf-system-status .fa-check-circle, #pdf-system-status .fa-exclamation-triangle, .fa-times-circle {
150
+ font-size: 17px;
151
+ margin-left: 5px;
152
+ vertical-align: bottom;
153
+ margin-bottom: -2px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
154
  }
155
 
156
+ .fa-check-circle {
157
+ color: #008000;
 
158
  }
159
 
160
+ .fa-exclamation-triangle {
161
+ color: #ff8a00;
 
162
  }
163
 
164
+ .fa-times-circle {
165
+ color: #d10b0b;
166
  }
167
 
168
  #pdf-system-status label, label.inline-label {
resources/css/admin-styles.min.css CHANGED
@@ -1 +1 @@
1
- #pdfextended-settings{margin-top:20px}#pdfextended-settings ol,#pdfextended-settings ul{margin-left:25px}#pdfextended-settings ul>li{list-style:disc}#pdfextended-settings ol>li{list-style:decimal}#pdfextended-settings ol li>ul,#pdfextended-settings ul li>ul{margin:5px 0 0 20px}#pdfextended-settings ul ul>li{list-style:circle}#pdfextended-settings ol ul>li{list-style:disc}#gform_tab_group #icon-gf_edit_forms{display:none}.detailed_pdf{clear:left;margin-bottom:3px}.detailed_pdf span{display:block;padding:2px 0 2px 2px}#support-request label{display:block;font-weight:bold}#pdf-system-status{overflow:hidden}#pdf-system-status p{clear:left}#pdf-system-status span.details,#support-request span.details{font-size:95%;color:#444;padding-top:7px;display:block;clear:left;}#support-request input,#support-request select{width:20em}#support-request input[type="submit"]{width:auto}#support-request textarea{width:65%;height:150px}#support-request input,#support-request textarea{padding:5px 4px}#support-request #support-request-button{padding:0 8px}#support-request .gfspinner{vertical-align:middle;margin-left:5px}#support-request textarea{border:1px solid #999;color:#444}#support-request :disabled,#support-request textarea:disabled{color:#CCC;border:1px solid #CCC}#support-request input.error,#support-request textarea.error,#support-request select.error{color:#d10b0b;border:1px solid #d10b0b}#support-request .icon-remove-sign{vertical-align:middle}.icon-spinner{font-size:18px;margin-left:5px}#support-request span.msg{margin-left:5px;color:#008000}#support-request span.error{margin-left:5px;color:#d10b0b}#pdfextended-settings #changelog h3{margin-top:20px}#pdfextended-settings div.notice{margin:5px 15px 2px;padding:0 .6em}#pdfextended-settings div.notice{background-color:#fff;border-left:4px solid #7ad03a;box-shadow:0 1px 1px 0 rgba(0,0,0,0.1)}.wrap #pdfextended-settings div.notice{margin:5px 0 15px;padding:1px 12px}div.notice p{margin:.5em 0;padding:2px}[class^="icon-"]:before,[class*=" icon-"]:before{display:inline-block;text-decoration:inherit;-webkit-font-smoothing:antialiased}[class^="icon-"],[class*=" icon-"]{background-image:none;background-position:0 0;background-repeat:repeat;display:inline;height:auto;line-height:normal;margin-top:0;vertical-align:baseline;width:auto;-webkit-font-smoothing:antialiased}[class^="icon-"],[class*=" icon-"]{font-family:"dashicons";font-style:normal;font-weight:normal;text-decoration:inherit}.icon-ok-sign,.icon-remove-sign,.icon-warning-sign{border-radius:50%;font-size:13px;margin-left:5px;color:#FFF}.icon-ok-sign{background:#008000}.icon-remove-sign{background:#d10b0b}.icon-warning-sign{background:#ff8a00}.icon-ok-sign:before{content:"\f147";padding:0 1px 0 0}.icon-remove-sign:before{content:"\f335";padding:0 1px 0 0}.icon-warning-sign:before{content:"\f107"}#pdf-system-status label,label.inline-label{float:left;width:15em}#pdf-system-status strong{display:inline-block;float:left;padding-left:15px;line-height:27px}#initialisation label{line-height:26px}@media only screen and (min-width:1000px){#pdfextended-settings .leftcolumn{width:65%;float:left}#pdfextended-settings .rightcolumn{margin-left:70%}#pdf-system-status label,label.inline-label{float:none;width:auto}#pdf-system-status strong{display:inline;float:none;vertical-align:middle}[class^="icon-"],[class*=" icon-"]{vertical-align:middle}}@media only screen and (min-width:1250px){#pdf-system-status label,label.inline-label{float:left;width:15em}#pdf-system-status strong{display:inline-block;float:left}#support-request span.details.tabbed{margin-left:16em}}
1
+ #pdfextended-settings{margin-top:20px}#pdfextended-settings ol,#pdfextended-settings ul{margin-left:25px}#pdfextended-settings ul>li{list-style:disc}#pdfextended-settings ol>li{list-style:decimal}#pdfextended-settings ol li>ul,#pdfextended-settings ul li>ul{margin:5px 0 0 20px}#pdfextended-settings ul ul>li{list-style:circle}#pdfextended-settings ol ul>li{list-style:disc}#gform_tab_group #icon-gf_edit_forms{display:none}.detailed_pdf{clear:left;margin-bottom:3px}.detailed_pdf span{display:block;padding:2px 0 2px 2px}#support-request label{display:block;font-weight:700}#pdf-system-status{overflow:hidden}#pdf-system-status p{clear:left}#pdf-system-status span.details,#support-request span.details{font-size:95%;color:#444;padding-top:7px;display:block;clear:left}#support-request input,#support-request select{width:20em}#support-request input[type=submit]{width:auto}#support-request textarea{width:65%;height:150px}#support-request input,#support-request textarea{padding:5px 4px}#support-request #support-request-button{padding:0 8px}#support-request .gfspinner{vertical-align:middle;margin-left:5px}#support-request textarea{border:1px solid #999;color:#444}#support-request :disabled,#support-request textarea:disabled{color:#CCC;border:1px solid #CCC}#support-request input.error,#support-request select.error,#support-request textarea.error{color:#d10b0b;border:1px solid #d10b0b}#support-request .fa-times-circle{vertical-align:middle}.icon-spinner{font-size:18px;margin-left:5px}#support-request span.msg{margin-left:5px;color:green}#support-request span.error{margin-left:5px;color:#d10b0b}#pdfextended-settings #changelog h3{margin-top:20px}#pdfextended-settings div.notice,.pdf-notice{margin:5px 15px 2px;padding:0 .6em;background-color:#FFF;border-left:4px solid #7AD03A;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.pdf-notice,.wrap #pdfextended-settings div.notice{margin:5px 0 15px;padding:1px 12px}div.notice p{margin:.5em 0;padding:2px}#pdf-system-status .fa-check-circle,#pdf-system-status .fa-exclamation-triangle,.fa-times-circle{font-size:17px;margin-left:5px;vertical-align:bottom;margin-bottom:-2px}.fa-check-circle{color:green}.fa-exclamation-triangle{color:#ff8a00}.fa-times-circle{color:#d10b0b}#pdf-system-status label,label.inline-label{float:left;width:15em}#pdf-system-status strong{display:inline-block;float:left;padding-left:15px;line-height:27px}#initialisation label{line-height:26px}@media only screen and (min-width:1000px){#pdfextended-settings .leftcolumn{width:65%;float:left}#pdfextended-settings .rightcolumn{margin-left:70%}#pdf-system-status label,label.inline-label{float:none;width:auto}#pdf-system-status strong{display:inline;float:none;vertical-align:middle}[class*=" icon-"],[class^=icon-]{vertical-align:middle}}@media only screen and (min-width:1250px){#pdf-system-status label,label.inline-label{float:left;width:15em}#pdf-system-status strong{display:inline-block;float:left}#support-request span.details.tabbed{margin-left:16em}}
resources/images/gravityformspdfextended.jpg CHANGED
Binary file
resources/javascript/admin.js CHANGED
@@ -1,25 +1,26 @@
1
  (function($) {
2
 
3
- jQuery(document).ready(function($) {
4
- jQuery('.nav-tab-contents:not(:first)').hide();
5
 
6
- jQuery('.nav-tab').click(function() {
 
 
7
  switch_tabs($(this));
8
  return false;
9
  });
10
 
11
-
12
  /*
13
  * Check if a #hash exists and pass it to switch_tabs
14
  */
15
  if (window.location.hash) {
16
- switch_tabs($('.nav-tab[href="' + window.location.hash + '"]'));
17
  }
18
 
19
  /*
20
  * Validate Support Form
21
  */
22
- jQuery('#support-request-button').click(function() {
23
  if (validate_form() === true) {
24
  return false;
25
  } else {
@@ -75,15 +76,17 @@
75
  $('#support-request-button').after('<span class="msg">' + results.msg + '</span>');
76
  }
77
  });
78
- };
79
 
80
  function switch_tabs(obj) {
81
  // Test to see if the menu tab is already active
82
  // Only process the click if the tab is inactive
83
  if (!obj.hasClass('nav-tab-active')) {
 
 
84
  // Hide the active menu tab and all the contents panels
85
- jQuery('.nav-tab-active').removeClass('nav-tab-active');
86
- jQuery('.nav-tab-contents').hide();
87
 
88
  // Get the value of the ‘rel’ attribute of the selected element object
89
  // Translate the value into the id reference of the target panel
@@ -93,9 +96,9 @@
93
  // Show the associated contents panel with the ID
94
  // that matches the object ‘rel’ identifier
95
  obj.addClass('nav-tab-active');
96
- jQuery(id).show();
97
  }
98
- };
99
 
100
  function validate_form() {
101
  var error = false;
@@ -122,5 +125,5 @@
122
  error = true;
123
  }
124
  return error;
125
- };
126
  })(jQuery);
1
  (function($) {
2
 
3
+ $(document).ready(function($) {
4
+ var tab = $('#tab_PDF');
5
 
6
+ tab.find('.nav-tab-contents:not(:first)').hide();
7
+
8
+ tab.find('.nav-tab').click(function() {
9
  switch_tabs($(this));
10
  return false;
11
  });
12
 
 
13
  /*
14
  * Check if a #hash exists and pass it to switch_tabs
15
  */
16
  if (window.location.hash) {
17
+ switch_tabs(tab.find('.nav-tab[href="' + window.location.hash + '"]'));
18
  }
19
 
20
  /*
21
  * Validate Support Form
22
  */
23
+ $('#support-request-button').click(function() {
24
  if (validate_form() === true) {
25
  return false;
26
  } else {
76
  $('#support-request-button').after('<span class="msg">' + results.msg + '</span>');
77
  }
78
  });
79
+ }
80
 
81
  function switch_tabs(obj) {
82
  // Test to see if the menu tab is already active
83
  // Only process the click if the tab is inactive
84
  if (!obj.hasClass('nav-tab-active')) {
85
+ var tab = $('#tab_PDF');
86
+
87
  // Hide the active menu tab and all the contents panels
88
+ tab.find('.nav-tab-active').removeClass('nav-tab-active');
89
+ tab.find('.nav-tab-contents').hide();
90
 
91
  // Get the value of the ‘rel’ attribute of the selected element object
92
  // Translate the value into the id reference of the target panel
96
  // Show the associated contents panel with the ID
97
  // that matches the object ‘rel’ identifier
98
  obj.addClass('nav-tab-active');
99
+ $(id).show();
100
  }
101
+ }
102
 
103
  function validate_form() {
104
  var error = false;
125
  error = true;
126
  }
127
  return error;
128
+ }
129
  })(jQuery);
resources/javascript/admin.min.js CHANGED
@@ -1 +1 @@
1
- (function(d){jQuery(document).ready(function(e){jQuery(".nav-tab-contents:not(:first)").hide();jQuery(".nav-tab").click(function(){a(e(this));return false});if(window.location.hash){a(e('.nav-tab[href="'+window.location.hash+'"]'))}jQuery("#support-request-button").click(function(){if(c()===true){return false}else{b();return false}})});function b(){var e=d('<img alt="Loading" class="gfspinner" src="'+GFPDF.GFbaseUrl+'/images/spinner.gif" />');d("#support-request-button").after(e);d("span.msg").remove();d("span.error").remove();d.ajax({type:"POST",url:ajaxurl,dataType:"json",data:{action:"support_request",nonce:d("#pdf_settings_nonce_field").val(),email:d("#email-address").val(),supportType:d("#support-type").val(),comments:d("#comments").val()}}).done(function(h){d(".gfspinner").remove();if(h.error){if(h.error.email){var f=d("#email-address");f.addClass("error").after(d('<span class="icon-remove-sign">'))}if(h.error.supportType){var g=d("#support-type");g.addClass("error").after(d('<span class="icon-remove-sign">'))}if(h.error.comments){var i=d("#comments");i.addClass("error").after(d('<span class="icon-remove-sign">'))}d("#support-request-button").after('<span class="error">'+h.error.msg+"</span>")}else{if(h.msg){d("#support-request-button").after('<span class="msg">'+h.msg+"</span>")}}})}function a(e){if(!e.hasClass("nav-tab-active")){jQuery(".nav-tab-active").removeClass("nav-tab-active");jQuery(".nav-tab-contents").hide();var f=e.attr("href");e.addClass("nav-tab-active");jQuery(f).show()}}function c(){var f=false;var e=d("#email-address");var g=d("#comments");e.removeClass("error");g.removeClass("error");d("#support .icon-remove-sign").remove();if(e.val().length==0){e.addClass("error").after(d('<span class="icon-remove-sign">'));f=true}if(g.val().length==0){g.addClass("error").after(d('<span class="icon-remove-sign">'));f=true}return f}})(jQuery);
1
+ !function(a){function b(){var b=a('<img alt="Loading" class="gfspinner" src="'+GFPDF.GFbaseUrl+'/images/spinner.gif" />');a("#support-request-button").after(b),a("span.msg").remove(),a("span.error").remove(),a.ajax({type:"POST",url:ajaxurl,dataType:"json",data:{action:"support_request",nonce:a("#pdf_settings_nonce_field").val(),email:a("#email-address").val(),supportType:a("#support-type").val(),comments:a("#comments").val()}}).done(function(b){if(a(".gfspinner").remove(),b.error){if(b.error.email){var c=a("#email-address");c.addClass("error").after(a('<span class="icon-remove-sign">'))}if(b.error.supportType){var d=a("#support-type");d.addClass("error").after(a('<span class="icon-remove-sign">'))}if(b.error.comments){var e=a("#comments");e.addClass("error").after(a('<span class="icon-remove-sign">'))}a("#support-request-button").after('<span class="error">'+b.error.msg+"</span>")}else b.msg&&a("#support-request-button").after('<span class="msg">'+b.msg+"</span>")})}function c(b){if(!b.hasClass("nav-tab-active")){var c=a("#tab_PDF");c.find(".nav-tab-active").removeClass("nav-tab-active"),c.find(".nav-tab-contents").hide();var d=b.attr("href");b.addClass("nav-tab-active"),a(d).show()}}function d(){var b=!1,c=a("#email-address"),d=a("#comments");return c.removeClass("error"),d.removeClass("error"),a("#support .icon-remove-sign").remove(),0==c.val().length&&(c.addClass("error").after(a('<span class="icon-remove-sign">')),b=!0),0==d.val().length&&(d.addClass("error").after(a('<span class="icon-remove-sign">')),b=!0),b}a(document).ready(function(a){var e=a("#tab_PDF");e.find(".nav-tab-contents:not(:first)").hide(),e.find(".nav-tab").click(function(){return c(a(this)),!1}),window.location.hash&&c(e.find('.nav-tab[href="'+window.location.hash+'"]')),a("#support-request-button").click(function(){return d()===!0?!1:(b(),!1)})})}(jQuery);
view/templates/settings/changelog.php CHANGED
@@ -21,7 +21,30 @@
21
  <p><strong>Current Version: <?php echo PDF_EXTENDED_VERSION; ?></strong></p>
22
 
23
  <h3><?php echo PDF_EXTENDED_VERSION; ?></h3>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
 
 
 
25
  <ul>
26
  <li>Bug - Fix issue saving and sending blank PDFs due to security fix</li>
27
  </ul>
@@ -33,7 +56,7 @@
33
  <h3>3.5.10</h3>
34
  <ul>
35
  <li>Housekeeping - Include individual scoring for Gravity Form Survey Likert field in the $form_data['survey'] array</li>
36
- <li>Bug - Fix fatal error when Gravity Forms isn't activated, but PDF Extended is.</li>
37
  </ul>
38
 
39
  <h3>3.5.9</h3>
@@ -108,7 +131,7 @@
108
  <li>Feature - No longer need to reinitialise every time the software is updated. </li>
109
  <li>Feature - Add auto-initialiser on initial installation for sites that have direct write access to their server files</li>
110
  <li>Feature - Add auto-initialiser on initial installation across entire multisite network for sites who have direct write access to their server files. </li>
111
- <li>Feature - Add auto-PDF_EXTENDED_TEMPLATE theme syncer for sites that have direct write access to their server files</li>
112
  <li>Feature - Correctly added language support. The .PO file is located in the /language/ folder if anyone would like to do a translation.</li>
113
 
114
  <li>Housekeeping - Restrict initialisation process to 64MB or greater to counter problems with users reporting a 'white screen' when running in a low-RAM environment.</li>
@@ -151,21 +174,21 @@
151
 
152
  <h3>3.4.0</h3>
153
  <ul>
154
- <li>Feature - Added auto-print prompt ability when you add &amp;print=1 to the PDF URL (see https://gravityformspdfextended.com/documentation-v3-x-x/display-pdf-in-browser/ for details)</li>
155
  <li>Feature - Added ability to rotate absolute positioned text 180 degrees (previously only 90 and -90). Note: feature in beta</li>
156
- <li>Feature - Backup all template files that are overridden when initialising to a folder inside PDF_EXTENDED_TEMPLATE</li>
157
  <li>Feature - Added SSH initialisation support</li>
158
  <li>Feature - Allow MERGETAGS to be used in all PDF templates, including default template (but only in the HTML field).</li>
159
  <li>Feature - Updated mPDF to 3.7.1</li>
160
- <li>Feature - Enable text/image watermark support. Added new example template example-watermark09.php showing off its usage (see http://gravityformspdfextended.com/documentation-v3-x-x/templates/watermarks/)</li>
161
- <li>Feature - Added full survey, poll and quiz support to both the default template and $form_data (see http://gravityformspdfextended.com/documentation-v3-x-x/accessing-survey-poll-quiz-data/)</li>
162
  <li>Feature - Shortcodes will now be processed in all templates, including default template (but only in the HTML field).</li>
163
  <li>Feature - Added 'save' configuration option so PDFs are saved to the local disk when 'notifications' aren't enabled.</li>
164
  <li>Feature - Added 'dpi' configuration option to modify the PDF image DPI. Default 96dpi. Use 300dpi for printing.</li>
165
  <li>Feature - Added PDF/A1-b compliance option. Enable with 'pdfa1b' => true. See http://mpdf1.com/manual/index.php?tid=420&searchstring=pdf/a1-b for more details.</li>
166
  <li>Feature - Added PDF/X1-a compliance option. Enable with 'pdfx1a' => true. See http://mpdf1.com/manual/index.php?tid=481&searchstring=pdf/x-1a for more details.</li>
167
  <li>Feature - Added new constant option 'PDF_REPACK_FONT' which when enabled may improve function with some PostScript printers (disabled by default). Existing sites will need to add define('PDF_REPACK_FONT', true); to the bottom of their configuration.php file.</li>
168
- <li>Feature - Added a sleuth of new hooks and filters for developers. See https://gravityformspdfextended.com/documentation-v3-x-x/filters-and-hooks/ for examples.</li>
169
  <li>Feature - Added $form_data['form_description'] key to $form_data array</li>
170
  <li>Feature - Update $form_data['products'] array key to field ID</li>
171
  <li>Feature - Added survey Likert output function for custom templates (much like the product table function). It can be used with the following command 'echo GFPDFEntryDetails::get_likert($form, $lead, $field_id);' where $field_id is substituted for the form field ID.</li>
@@ -177,7 +200,7 @@
177
  <li>Housekeeping - Update settings page link to match new Gravity Forms URL structure</li>
178
  <li>Housekeeping - Check if $lead['gfsurvey_score'] exists before assigning to $form_data array</li>
179
  <li>Housekeeping - Removed table and font checksum debugging from mPDF when WP_DEBUG enabled as they produced inaccurate results.</li>
180
- <li>Housekeeping - Fixed up mPDF logging location when WP_DEBUG enabled. Files now stored in wp-content/themes/Active_Theme_Folder/PDF_EXTENDED_TEMPLATE/output/ folder.</li>
181
  <li>Housekeeping - Removed API logging locally when WP_DEBUG is enabled.</li>
182
  <li>Housekeeping - Increase API timeout interval as some overseas users reported timeout issues</li>
183
  <li>Housekeeping - Modified mPDF functions Image() and purify_utf8_text() to validate the input data so we don't have to do it every time through the template.</li>
@@ -242,7 +265,7 @@
242
  <ul>
243
  <li>Feature - Overhauled the initialisation process so that the software better reviews the host for potential problems before initialisation. This should help debug issues and make users aware there could be a problem <strong>before</strong> they begin using the software.</li>
244
  <li>Feature - Overhauled the settings page to make it easier to access features of the software</li>
245
- <li>Feature - Added a Support tab to the settings page which allows users to securely (over HTTPS) submit a support ticket to the Gravity Form PDF Extended support desk</li>
246
  <li>Feature - Changed select, multiselect and radio fields so that the default templates use the name rather than the value. $form_data now also includes the name and values for all these fields.</li>
247
  <li>Feature - $form_data now includes all miscellaneous lead information in the $form_data['misc'] array.</li>
248
  <li>Feature - $form_data now contains 24 and 12 hour time of entry submission.</li>
@@ -252,7 +275,7 @@
252
  <li>Bug - Fixed issue when Gravity Forms in No Conflict Mode</li>
253
  <li>Bug - Font config.php's array keys now in lower case</li>
254
  <li>Housekeeping - Moved all initialisation files to a folder called 'initialisation'.</li>
255
- <li>Housekeeping - Renamed the configuration.php file in the plugin folder to configuration.php.example to alleviate confusion for developers who unwittingly modify the plugin configuration file instead of the file in their active theme's PDF_EXTENDED_TEMPLATE folder.</li>
256
  <li>Housekeeping - Updated the plugin file system to a more MVC-style approach, with model and view folders.</li>
257
  <li>Housekeeping - Removed ability to directly access default and example template files.</li>
258
  <li>Housekeeping - Fixed PHP notices in default templates related to the default template-only configuration options</li>
@@ -264,14 +287,14 @@
264
  <h3>3.2.0</h3>
265
  <ul>
266
  <li>Feature - Can now view multiple PDFs assigned to a single form via the admin area. Note: You must provide a unique 'filename' parameter in configuration.php for multiple PDFs assigned to a single form. </li>
267
- <li>Feature - You can exclude a field from the default templates using the class name 'exclude'. See our <a rel="nofollow" href="http://gravityformspdfextended.com/faq/can-exclude-field-showing-pdf/">FAQ topic</a> for more details.</li>
268
  <li>Bug - Fixed issue viewing own PDF entry when logged in as anything lower than editor.</li>
269
  <li>Bug - Fixed data return bug in pdf-entry-details.php that was preventing all data returning correctly.</li>
270
  <li>Bug - Fixed PHP Warning when using products with no options</li>
271
  <li>Bug - Fixed issue with invalid characters being added to the PDF filename. Most notably the date mergetag.</li>
272
  <li>Bug - Limit filename length to 150 characters which should work on the majority of web servers.</li>
273
  <li>Bug - Fixed problem sending duplicate PDF when using mass resend notification feature</li>
274
- <li>Depreciated - Removed GF_FORM_ID and GF_LEAD_ID constants which were used in v2.x.x of the software. Ensure you follow <a rel="nofollow" href="http://gravityformspdfextended.com/documentation-v3-x-x/v3-0-0-migration-guide/">v2.x.x upgrade guide</a> to your templates before upgrading.</li>
275
  </ul>
276
 
277
  <h3>3.1.4</h3>
@@ -309,14 +332,14 @@
309
  </ul>
310
  <h3>3.1.0</h3>
311
  <ul>
312
- <li>Feature - Added defaults to configuration.php which allows users to define the default PDF settings for all Gravity Forms. See the <a rel="nofollow" href="http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/#default-configuration-options">installation and configuration documentation</a> for more details. </li>
313
- <li>Feature - Added three new configuration options 'default-show-html', 'default-show-empty' and 'default-show-page-names' which allow different display options to the three default templates. See the <a rel="nofollow" href="http://gravityformspdfextended.com/documentation-v3-x-x/installation-and-configuration/#default-template-only">installation and configuration documentation</a> for more details.</li>
314
- <li>Feature - Added filter hooks 'gfpdfe_pdf_name' and 'gfpdfe_template' which allows developers to further modify a PDF name and template file, respectively, outside of the configuration.php. This is useful if you have a special case naming convention based on user input. See <a rel="nofollow" href="http://gravityformspdfextended.com/filters-and-hooks/">http://gravityformspdfextended.com/filters-and-hooks/</a> for more details about using these filters.</li>
315
- <li>Feature - Custom font support. Any .ttf font file added to the PDF_EXTENDED_TEMPLATE/fonts/ folder will be automatically installed once the plugin has been initialised. Users also have the option to just initialise the fonts via the settings page. See the <a rel="nofollow" href="http://gravityformspdfextended.com/documentation-v3-x-x/language-support/#installing-fonts">font/language documentation </a> for details.</li>
316
  <li>Compatability - Use Gravity Forms get_upload_root() and get_upload_url_root() instead of hard coding the signature upload directory in pdf-entry-detail.php</li>
317
  <li>Compatability - Changed depreciated functions get_themes() and get_theme() to wp_get_theme() (added in WordPress v3.4). </li>
318
  <li>Compatability - The plugin now needs to be initialised on fresh installation and upgrade. This allows us to use the WP_Filesystem API for file manipulation.</li>
319
- <li>Compatability - Automatic copying of PDF_EXTENDED_TEMPLATE folder on a theme change was removed in favour of a user prompt. This allows us to take advantage of the WP_Filesystem API.</li>
320
  <li>Compatability - Added WordPress compatibility checker (minimum now 3.4 or higher).</li>
321
  <li>Bug - Removed ZipArchive in favour of WordPress's WP_Filesystem API unzip_file() command. Some users reported the plugin would stop their entire website working if this extension wasn't installed.</li>
322
  <li>Bug - Fixed Gravity Forms compatibility checker which wouldn't return the correct response.</li>
@@ -336,7 +359,7 @@
336
  <li>Feature - Options for default templates to disable HTML fields or empty fields (or both)</li>
337
  </ul>
338
  <h3>3.0.0</h3>
339
- <p>As of Gravity Forms PDF Extended v3.0.0 we have removed the DOMPDF package from our plugin and integrated the more advanced mPDF system. Along with a new HTML to PDF generator, we've rewritten the entire plugin's base code to make it more user friendly to both hobbyists and rock star web developers. Configuration time is cut in half and advanced features like adding security features is now accessible to users who have little experience with PHP.</p>
340
  <p>New Features include:</p>
341
  <ul>
342
  <li>Language Support - almost all languages are supported including RTL (right to left) languages like Arabic and Hebrew and CJK languages - Chinese, Japanese and Korean.</li>
@@ -357,7 +380,7 @@
357
  <p>Other changes include
358
  <li>Improved security - further restrictions were placed on non-administrators viewing template files.
359
  <li>$form_data array tidied up - images won't be wrapped in anchor tags.</p>
360
- <p>For more details <a rel="nofollow" href="http://gravityformspdfextended.com/documentation-v3-x-x/introduction/">view the 3.x.x online documentation</a>.</p>
361
  <h3>2.2.3</h3>
362
  <ul>
363
  <li>Bug - Fixed mb_string error in the updated DOMPDF package.</li>
21
  <p><strong>Current Version: <?php echo PDF_EXTENDED_VERSION; ?></strong></p>
22
 
23
  <h3><?php echo PDF_EXTENDED_VERSION; ?></h3>
24
+ <ul>
25
+ <li>Feature - Added support for Gravity Form's sub-field 'middle' name (1.9Beta)</li>
26
+ <li>Feature - Patch mPDF with full :nth-child support on TD and TR table cells</li>
27
+ <li>Feature - Added $form_data['products_totals']['subtotal'] key (total price without shipping costs added)</li>
28
+ <li>Feature - Added formated money to all product fields in the $form_data array</li>
29
+ <li>Feature - Default templates: only show fields who's conditional logic is true. Perfect when used with 'default-show-html'</li>
30
+ <li>Housekeeping - Move PDF_EXTENDED_TEMPLATES folder to the /wp-content/upload/ directory. Get more info about the move (see <a href="https://developer.gravitypdf.com/news/migrating-template-directory-means/">https://developer.gravitypdf.com/news/migrating-template-directory-means/</a>)</li>
31
+ <li>Housekeeping - Refined when admin resources are loaded</li>
32
+ <li>Housekeeping - Fixed typo during initial initialisation</li>
33
+ <li>Housekeeping - Switched icons back to FontAwesome which is shipped by default with Gravity Forms</li>
34
+ <li>Housekeeping - Display full path to mPDF tmp directory when there are issues writing to it</li>
35
+ <li>Housekeeping - Update example-header-and-footer_06.php and example-advanced-headers_07.php to better reflect current mPDF features</li>
36
+ <li>Bug - Fixed issue pulling the correct configuration when multiple nodes were assigned to multiple forms</li>
37
+ <li>Bug - Fixed number field formatting issue which always rounded to two decimal places</li>
38
+ <li>Bug - Fixed JS namespace issue with WordPress Leads plugin</li>
39
+ <li>Bug - Fixed error initialising fonts / backing up PDF_EXTENDED_TEMPLATES directory when using the glob() function</li>
40
+ <li>Bug - Fix issue with PHP 5.0 and 5.1 array_replace_recursive function when used with an array inside the $gf_pdf_config array</li>
41
+ <li>Bug - Fixed fatal error when logged in user attempts to view PDF they don't have access to</li>
42
+ <li>Bug - Fixed issue in $form_data array where single-column list items where being returned as an array and not a HTML list.</li>
43
+ <li>Bug - Prevent unauthorised users auto-initialising the software or migrating the templates folder</li>
44
+ </ul>
45
 
46
+
47
+ <h3>3.5.10</h3>
48
  <ul>
49
  <li>Bug - Fix issue saving and sending blank PDFs due to security fix</li>
50
  </ul>
56
  <h3>3.5.10</h3>
57
  <ul>
58
  <li>Housekeeping - Include individual scoring for Gravity Form Survey Likert field in the $form_data['survey'] array</li>
59
+ <li>Bug - Fix fatal error when Gravity Forms isn't activated, but Gravity PDF is.</li>
60
  </ul>
61
 
62
  <h3>3.5.9</h3>
131
  <li>Feature - No longer need to reinitialise every time the software is updated. </li>
132
  <li>Feature - Add auto-initialiser on initial installation for sites that have direct write access to their server files</li>
133
  <li>Feature - Add auto-initialiser on initial installation across entire multisite network for sites who have direct write access to their server files. </li>
134
+ <li>Feature - Add auto-PDF_EXTENDED_TEMPLATES theme syncer for sites that have direct write access to their server files</li>
135
  <li>Feature - Correctly added language support. The .PO file is located in the /language/ folder if anyone would like to do a translation.</li>
136
 
137
  <li>Housekeeping - Restrict initialisation process to 64MB or greater to counter problems with users reporting a 'white screen' when running in a low-RAM environment.</li>
174
 
175
  <h3>3.4.0</h3>
176
  <ul>
177
+ <li>Feature - Added auto-print prompt ability when you add &amp;print=1 to the PDF URL (see https://developer.gravitypdf.com/documentation/display-pdf-in-browser/ for details)</li>
178
  <li>Feature - Added ability to rotate absolute positioned text 180 degrees (previously only 90 and -90). Note: feature in beta</li>
179
+ <li>Feature - Backup all template files that are overridden when initialising to a folder inside PDF_EXTENDED_TEMPLATES</li>
180
  <li>Feature - Added SSH initialisation support</li>
181
  <li>Feature - Allow MERGETAGS to be used in all PDF templates, including default template (but only in the HTML field).</li>
182
  <li>Feature - Updated mPDF to 3.7.1</li>
183
+ <li>Feature - Enable text/image watermark support. Added new example template example-watermark09.php showing off its usage (see https://developer.gravitypdf.com/documentation/watermarks-pdf-template-example/)</li>
184
+ <li>Feature - Added full survey, poll and quiz support to both the default template and $form_data (see https://developer.gravitypdf.com/documentation/accessing-survey-poll-quiz-data/)</li>
185
  <li>Feature - Shortcodes will now be processed in all templates, including default template (but only in the HTML field).</li>
186
  <li>Feature - Added 'save' configuration option so PDFs are saved to the local disk when 'notifications' aren't enabled.</li>
187
  <li>Feature - Added 'dpi' configuration option to modify the PDF image DPI. Default 96dpi. Use 300dpi for printing.</li>
188
  <li>Feature - Added PDF/A1-b compliance option. Enable with 'pdfa1b' => true. See http://mpdf1.com/manual/index.php?tid=420&searchstring=pdf/a1-b for more details.</li>
189
  <li>Feature - Added PDF/X1-a compliance option. Enable with 'pdfx1a' => true. See http://mpdf1.com/manual/index.php?tid=481&searchstring=pdf/x-1a for more details.</li>
190
  <li>Feature - Added new constant option 'PDF_REPACK_FONT' which when enabled may improve function with some PostScript printers (disabled by default). Existing sites will need to add define('PDF_REPACK_FONT', true); to the bottom of their configuration.php file.</li>
191
+ <li>Feature - Added a sleuth of new hooks and filters for developers. See https://developer.gravitypdf.com/documentation/filters-and-hooks/ for examples.</li>
192
  <li>Feature - Added $form_data['form_description'] key to $form_data array</li>
193
  <li>Feature - Update $form_data['products'] array key to field ID</li>
194
  <li>Feature - Added survey Likert output function for custom templates (much like the product table function). It can be used with the following command 'echo GFPDFEntryDetails::get_likert($form, $lead, $field_id);' where $field_id is substituted for the form field ID.</li>
200
  <li>Housekeeping - Update settings page link to match new Gravity Forms URL structure</li>
201
  <li>Housekeeping - Check if $lead['gfsurvey_score'] exists before assigning to $form_data array</li>
202
  <li>Housekeeping - Removed table and font checksum debugging from mPDF when WP_DEBUG enabled as they produced inaccurate results.</li>
203
+ <li>Housekeeping - Fixed up mPDF logging location when WP_DEBUG enabled. Files now stored in wp-content/themes/Active_Theme_Folder/PDF_EXTENDED_TEMPLATES/output/ folder.</li>
204
  <li>Housekeeping - Removed API logging locally when WP_DEBUG is enabled.</li>
205
  <li>Housekeeping - Increase API timeout interval as some overseas users reported timeout issues</li>
206
  <li>Housekeeping - Modified mPDF functions Image() and purify_utf8_text() to validate the input data so we don't have to do it every time through the template.</li>
265
  <ul>
266
  <li>Feature - Overhauled the initialisation process so that the software better reviews the host for potential problems before initialisation. This should help debug issues and make users aware there could be a problem <strong>before</strong> they begin using the software.</li>
267
  <li>Feature - Overhauled the settings page to make it easier to access features of the software</li>
268
+ <li>Feature - Added a Support tab to the settings page which allows users to securely (over HTTPS) submit a support ticket to the Gravity PDF support desk</li>
269
  <li>Feature - Changed select, multiselect and radio fields so that the default templates use the name rather than the value. $form_data now also includes the name and values for all these fields.</li>
270
  <li>Feature - $form_data now includes all miscellaneous lead information in the $form_data['misc'] array.</li>
271
  <li>Feature - $form_data now contains 24 and 12 hour time of entry submission.</li>
275
  <li>Bug - Fixed issue when Gravity Forms in No Conflict Mode</li>
276
  <li>Bug - Font config.php's array keys now in lower case</li>
277
  <li>Housekeeping - Moved all initialisation files to a folder called 'initialisation'.</li>
278
+ <li>Housekeeping - Renamed the configuration.php file in the plugin folder to configuration.php.example to alleviate confusion for developers who unwittingly modify the plugin configuration file instead of the file in their active theme's PDF_EXTENDED_TEMPLATES folder.</li>
279
  <li>Housekeeping - Updated the plugin file system to a more MVC-style approach, with model and view folders.</li>
280
  <li>Housekeeping - Removed ability to directly access default and example template files.</li>
281
  <li>Housekeeping - Fixed PHP notices in default templates related to the default template-only configuration options</li>
287
  <h3>3.2.0</h3>
288
  <ul>
289
  <li>Feature - Can now view multiple PDFs assigned to a single form via the admin area. Note: You must provide a unique 'filename' parameter in configuration.php for multiple PDFs assigned to a single form. </li>
290
+ <li>Feature - You can exclude a field from the default templates using the class name 'exclude'. See our <a rel="nofollow" href="https://gravitypdf.com/#faqs">FAQ topic</a> for more details.</li>
291
  <li>Bug - Fixed issue viewing own PDF entry when logged in as anything lower than editor.</li>
292
  <li>Bug - Fixed data return bug in pdf-entry-details.php that was preventing all data returning correctly.</li>
293
  <li>Bug - Fixed PHP Warning when using products with no options</li>
294
  <li>Bug - Fixed issue with invalid characters being added to the PDF filename. Most notably the date mergetag.</li>
295
  <li>Bug - Limit filename length to 150 characters which should work on the majority of web servers.</li>
296
  <li>Bug - Fixed problem sending duplicate PDF when using mass resend notification feature</li>
297
+ <li>Depreciated - Removed GF_FORM_ID and GF_LEAD_ID constants which were used in v2.x.x of the software. Ensure you follow <a rel="nofollow" href="https://developer.gravitypdf.com/news/version-2-3-migration-guide/">v2.x.x upgrade guide</a> to your templates before upgrading.</li>
298
  </ul>
299
 
300
  <h3>3.1.4</h3>
332
  </ul>
333
  <h3>3.1.0</h3>
334
  <ul>
335
+ <li>Feature - Added defaults to configuration.php which allows users to define the default PDF settings for all Gravity Forms. See the <a rel="nofollow" href="https://developer.gravitypdf.com/documentation/getting-started-with-gravity-pdf-configuration/">installation and configuration documentation</a> for more details. </li>
336
+ <li>Feature - Added three new configuration options 'default-show-html', 'default-show-empty' and 'default-show-page-names' which allow different display options to the three default templates. See the <a rel="nofollow" href="https://developer.gravitypdf.com/documentation/configuration-options-examples/#default-template">installation and configuration documentation</a> for more details.</li>
337
+ <li>Feature - Added filter hooks 'gfpdfe_pdf_name' and 'gfpdfe_template' which allows developers to further modify a PDF name and template file, respectively, outside of the configuration.php. This is useful if you have a special case naming convention based on user input. See <a rel="nofollow" href="https://developer.gravitypdf.com/documentation/filters-and-hooks/">https://developer.gravitypdf.com/documentation/filters-and-hooks/</a> for more details about using these filters.</li>
338
+ <li>Feature - Custom font support. Any .ttf font file added to the PDF_EXTENDED_TEMPLATES/fonts/ folder will be automatically installed once the plugin has been initialised. Users also have the option to just initialise the fonts via the settings page. See the <a rel="nofollow" href="https://developer.gravitypdf.com/documentation/language-support/#install-custom-fonts">font/language documentation </a> for details.</li>
339
  <li>Compatability - Use Gravity Forms get_upload_root() and get_upload_url_root() instead of hard coding the signature upload directory in pdf-entry-detail.php</li>
340
  <li>Compatability - Changed depreciated functions get_themes() and get_theme() to wp_get_theme() (added in WordPress v3.4). </li>
341
  <li>Compatability - The plugin now needs to be initialised on fresh installation and upgrade. This allows us to use the WP_Filesystem API for file manipulation.</li>
342
+ <li>Compatability - Automatic copying of PDF_EXTENDED_TEMPLATES folder on a theme change was removed in favour of a user prompt. This allows us to take advantage of the WP_Filesystem API.</li>
343
  <li>Compatability - Added WordPress compatibility checker (minimum now 3.4 or higher).</li>
344
  <li>Bug - Removed ZipArchive in favour of WordPress's WP_Filesystem API unzip_file() command. Some users reported the plugin would stop their entire website working if this extension wasn't installed.</li>
345
  <li>Bug - Fixed Gravity Forms compatibility checker which wouldn't return the correct response.</li>
359
  <li>Feature - Options for default templates to disable HTML fields or empty fields (or both)</li>
360
  </ul>
361
  <h3>3.0.0</h3>
362
+ <p>As of Gravity PDF v3.0.0 we have removed the DOMPDF package from our plugin and integrated the more advanced mPDF system. Along with a new HTML to PDF generator, we've rewritten the entire plugin's base code to make it more user friendly to both hobbyists and rock star web developers. Configuration time is cut in half and advanced features like adding security features is now accessible to users who have little experience with PHP.</p>
363
  <p>New Features include:</p>
364
  <ul>
365
  <li>Language Support - almost all languages are supported including RTL (right to left) languages like Arabic and Hebrew and CJK languages - Chinese, Japanese and Korean.</li>
380
  <p>Other changes include
381
  <li>Improved security - further restrictions were placed on non-administrators viewing template files.
382
  <li>$form_data array tidied up - images won't be wrapped in anchor tags.</p>
383
+ <p>For more details <a rel="nofollow" href="https://developer.gravitypdf.info/">view the 3.x.x online documentation</a>.</p>
384
  <h3>2.2.3</h3>
385
  <ul>
386
  <li>Bug - Fixed mb_string error in the updated DOMPDF package.</li>
view/templates/settings/initialisation-tab.php CHANGED
@@ -38,8 +38,8 @@
38
 
39
  <?php else: ?>
40
  <div class="leftcolumn">
41
- <h2><?php _e('Gravity Forms PDF Extended', 'pdfextended'); ?></h2>
42
- <p><?php _e("Your web server isn't compatible with Gravity Forms PDF Extended. Please see the problem areas below.", 'pdfextended'); ?></p>
43
  <?php
44
  /*
45
  * Include the system status template
@@ -50,7 +50,7 @@
50
  </div>
51
  <div class="rightcolumn">
52
  <h2><?php _e("Can't Resolve the Issue?", 'pdfextended'); ?></h2>
53
- <p><?php echo sprintf(__("Does Gravity Forms PDF Extended detect a problem that your web host won't fix? %sWe recommend you move to a quality web hosting service like WP Engine%s which runs our software straight out of the box.", 'pdfextended'), '<a href="http://www.shareasale.com/r.cfm?u=955815&m=41388&b=394686">', '</a>'); ?></p>
54
  </div>
55
 
56
  <?php endif; ?>
38
 
39
  <?php else: ?>
40
  <div class="leftcolumn">
41
+ <h2><?php _e('Gravity PDF', 'pdfextended'); ?></h2>
42
+ <p><?php _e("Your web server isn't compatible with Gravity PDF. Please see the problem areas below.", 'pdfextended'); ?></p>
43
  <?php
44
  /*
45
  * Include the system status template
50
  </div>
51
  <div class="rightcolumn">
52
  <h2><?php _e("Can't Resolve the Issue?", 'pdfextended'); ?></h2>
53
+ <p><?php echo sprintf(__("Does Gravity PDF detect a problem that your web host won't fix? %sWe recommend you move to a quality web hosting service like WP Engine%s which runs our software straight out of the box.", 'pdfextended'), '<a href="http://www.shareasale.com/r.cfm?u=955815&m=41388&b=394686">', '</a>'); ?></p>
54
  </div>
55
 
56
  <?php endif; ?>
view/templates/settings/initialisation.php CHANGED
@@ -16,7 +16,7 @@
16
 
17
  ?>
18
 
19
- <h2><?php ($gfpdfe_data->is_initialised) ? _e('Welcome to Gravity Forms PDF Extended', 'pdfextended') : _e('Initialise Plugin', 'pdfextended'); ?></h2>
20
 
21
  <?php if($gfpdfe_data->is_initialised): ?>
22
 
@@ -26,25 +26,25 @@
26
  <p><?php _e('The next step is to correctly configured the plugin so that you can generate PDF documents.', 'pdfextended'); ?>
27
  <?php _e("To help you get started, we've put together a five-part video series with the most common plugin configurations.", 'pdfextended'); ?></p>
28
  <ol>
29
- <li><a href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/basics/"><?php _e('The Basics: Only Download PDF through the Admin Area', 'pdfextended'); ?></a></li>
30
- <li><a href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/email/"><?php _e('The Email: Send Completed PDF via Email', 'pdfextended'); ?></a></li>
31
- <li><a href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/the-download/"><?php _e('The Download: User Downloads PDF after Submitting Form (using a link or auto redirecting)', 'pdfextended'); ?></a></li>
32
- <li><a href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/the-email-advanced/"><?php _e('The Email Advanced: Manually Review User Submission before Emailing PDF', 'pdfextended'); ?></a></li>
33
- <li><a href="http://gravityformspdfextended.com/documentation-v3-x-x/standard-configuration/the-payment/"><?php _e('The Payment: Send PDF after Capturing Payment using Paypal Standard', 'pdfextended'); ?></a></li>
34
  </ol>
35
 
36
  <p><?php echo sprintf(__('If you know little about PHP we recommend starting with %sPart 1:The Basics%s and then watching the tutorial you’re interested in. It will give you the foundational skills you need to configure the software.', 'pdfextended'), '<i>', '</i>'); ?></p>
37
 
38
  <h3><?php _e('Custom Templates', 'pdfextended'); ?></h3>
39
- <p><?php echo sprintf(__('Creating a custom template gives you ultimate control of the look and feel of your documents using only HTML and CSS. %sWe recommend you review our online documentation%s to create and customise your template files.', 'pdfextended'), '<a href="http://gravityformspdfextended.com/documentation-v3-x-x/templates/">', '</a>'); ?></p>
40
 
41
 
42
 
43
  <?php else: ?>
44
 
45
- <p><?php _e('To complete the installation, Gravity Forms PDF Extended needs to be initialised.', 'pdfextended'); ?>
46
 
47
- <p><strong><?php _e('Does does initialisation do?', 'pdfextended'); ?></strong></p>
48
 
49
  <ol>
50
  <li><strong><?php _e('Install the template files', 'pdfextended'); ?></strong>: <?php _e("We create a folder called PDF_EXTENDED_TEMPLATE in your active theme directory and move over all the templates and configuration files. This folder is where you'll look to configure the software and create your PDF templates.", 'pdfextended'); ?></li>
@@ -72,7 +72,7 @@
72
 
73
  <?php if($gfpdfe_data->is_initialised): ?>
74
  <h3><?php _e('Install a new font?', 'pdfextended'); ?></h3>
75
- <p><?php echo sprintf(__('Do you want to use a custom font in your template? %sSee our documentation on how to correctly install and use a custom font%s before initialising below.', 'pdfextended'), '<a href="http://gravityformspdfextended.com/documentation-v3-x-x/language-support/">', '</a>'); ?></p>
76
  <input type="submit" value="<?php _e('Initialise Fonts', 'pdfextended') ; ?>" class="button" id="font-initialise" name="font-initialise">
77
  <?php endif; ?>
78
 
16
 
17
  ?>
18
 
19
+ <h2><?php ($gfpdfe_data->is_initialised) ? _e('Welcome to Gravity PDF', 'pdfextended') : _e('Initialise Plugin', 'pdfextended'); ?></h2>
20
 
21
  <?php if($gfpdfe_data->is_initialised): ?>
22
 
26
  <p><?php _e('The next step is to correctly configured the plugin so that you can generate PDF documents.', 'pdfextended'); ?>
27
  <?php _e("To help you get started, we've put together a five-part video series with the most common plugin configurations.", 'pdfextended'); ?></p>
28
  <ol>
29
+ <li><a href="https://developer.gravitypdf.com/documentation/basic-configuration-video-part-one/"><?php _e('The Basics: Only Download PDF through the Admin Area', 'pdfextended'); ?></a></li>
30
+ <li><a href="https://developer.gravitypdf.com/documentation/how-to-automated-pdf-email-part-two/"><?php _e('The Email: Send Completed PDF via Email', 'pdfextended'); ?></a></li>
31
+ <li><a href="https://developer.gravitypdf.com/documentation/how-to-allow-user-pdf-downloads-video-part-three/"><?php _e('The Download: User Downloads PDF after Submitting Form (using a link or auto redirecting)', 'pdfextended'); ?></a></li>
32
+ <li><a href="https://developer.gravitypdf.com/documentation/how-to-manual-review-before-pdf-email-part-four/"><?php _e('The Email Advanced: Manually Review User Submission before Emailing PDF', 'pdfextended'); ?></a></li>
33
+ <li><a href="https://developer.gravitypdf.com/documentation/send-pdf-after-accepting-payment-video-part-five/"><?php _e('The Payment: Send PDF after Capturing Payment using Paypal Standard', 'pdfextended'); ?></a></li>
34
  </ol>
35
 
36
  <p><?php echo sprintf(__('If you know little about PHP we recommend starting with %sPart 1:The Basics%s and then watching the tutorial you’re interested in. It will give you the foundational skills you need to configure the software.', 'pdfextended'), '<i>', '</i>'); ?></p>
37
 
38
  <h3><?php _e('Custom Templates', 'pdfextended'); ?></h3>
39
+ <p><?php echo sprintf(__('Creating a custom template gives you ultimate control of the look and feel of your documents using only HTML and CSS. %sWe recommend you review our online documentation%s to create and customise your template files.', 'pdfextended'), '<a href="http://developer.gravitypdf.com/documentation/custom-templates-introduction/">', '</a>'); ?></p>
40
 
41
 
42
 
43
  <?php else: ?>
44
 
45
+ <p><?php _e('To complete the installation, Gravity PDF needs to be initialised.', 'pdfextended'); ?>
46
 
47
+ <p><strong><?php _e('What does initialisation do?', 'pdfextended'); ?></strong></p>
48
 
49
  <ol>
50
  <li><strong><?php _e('Install the template files', 'pdfextended'); ?></strong>: <?php _e("We create a folder called PDF_EXTENDED_TEMPLATE in your active theme directory and move over all the templates and configuration files. This folder is where you'll look to configure the software and create your PDF templates.", 'pdfextended'); ?></li>
72
 
73
  <?php if($gfpdfe_data->is_initialised): ?>
74
  <h3><?php _e('Install a new font?', 'pdfextended'); ?></h3>
75
+ <p><?php echo sprintf(__('Do you want to use a custom font in your template? %sSee our documentation on how to correctly install and use a custom font%s before initialising below.', 'pdfextended'), '<a href="https://developer.gravitypdf.com/documentation/language-support/">', '</a>'); ?></p>
76
  <input type="submit" value="<?php _e('Initialise Fonts', 'pdfextended') ; ?>" class="button" id="font-initialise" name="font-initialise">
77
  <?php endif; ?>
78
 
view/templates/settings/support-form.php CHANGED
@@ -22,8 +22,8 @@
22
  $temp_timezone = date_default_timezone_get();
23
  date_default_timezone_set('Australia/Sydney');
24
  ?>
25
- <div class="notice"><p>
26
- <?php _e('Gravity Forms PDF Extended\'s support hours are from 9:00am-5:00pm Monday to Friday, Sydney Australia time.', 'pdfextended'); ?> <br />
27
  <strong>
28
  <?php printf(
29
  __('The current time in Sydney Australia is %s.', 'pdfextended'),
22
  $temp_timezone = date_default_timezone_get();
23
  date_default_timezone_set('Australia/Sydney');
24
  ?>
25
+ <div class="pdf-notice"><p>
26
+ <?php _e('Gravity PDF\'s support hours are from 9:00am-5:00pm Monday to Friday, Sydney Australia time.', 'pdfextended'); ?> <br />
27
  <strong>
28
  <?php printf(
29
  __('The current time in Sydney Australia is %s.', 'pdfextended'),
view/templates/settings/support-sidebar.php CHANGED
@@ -16,15 +16,7 @@
16
 
17
  ?>
18
 
19
-
20
- <h2><?php _e('Frequently Asked Questions', 'pdfextended'); ?></h2>
21
- <ul>
22
- <li><a href="http://gravityformspdfextended.com/faq/can-exclude-field-showing-pdf/"><?php _e('Can I exclude a field from showing up in the PDF?', 'pdfextended'); ?></a></li>
23
- <li><a href="http://gravityformspdfextended.com/faq/i-want-to-have-multiple-pdf-template-files-how-do-i-do-it/"><?php _e('I want to have multiple PDF template files generated on one form. How do I do it?', 'pdfextended'); ?></a></li>
24
- <li><a href="http://gravityformspdfextended.com/faq/i-want-users-to-be-able-to-download-the-pdf-from-the-server/"><?php _e('I want users to be able to download the PDF from the server.', 'pdfextended'); ?></a></li>
25
- <li><a href="http://gravityformspdfextended.com/faq/how-do-i-change-the-pdf-size-or-create-a-landscape-pdf/"><?php _e('How do I change the PDF size or create a landscape PDF?', 'pdfextended'); ?></a></li>
26
- <li><a href="http://gravityformspdfextended.com/faq/im-creating-a-custom-template-how-do-i-know-the-names-of-my-fields-in-the-form_data-array/"><?php _e('I am created a custom template. How do I know the names of my fields in the $form_data array?', 'pdfextended'); ?></a></li>
27
- <li><a href="http://gravityformspdfextended.com/faq/how-large-a-pdf-are-you-able-to-createprocess/"><?php _e('How large a PDF are you able to create/process?', 'pdfextended'); ?></a></li>
28
- </ul>
29
 
30
- <p><?php echo sprintf( __('Got a question that isn\'t answered above? %sHead to our support forum%s and let us know.', 'pdfextended'), '<a href="http://gravityformspdfextended.com/support/gravity-forms-pdf-extended/">', '</a>' ); ?></p>
16
 
17
  ?>
18
 
19
+ <h2><?php _e('Frequently Asked Questions', 'pdfextended'); ?></h2>
20
+ <p><?php echo sprintf(__('See our %scomprehensive FAQ section%s for more information about Gravity PDF.', 'pdfextended'), '<a href="https://gravitypdf.com/#faqs">', '</a>'); ?></p>
 
 
 
 
 
 
 
 
21
 
22
+ <p><?php echo sprintf( __('Got a question that isn\'t answered above? %sHead to our support forum%s and let us know.', 'pdfextended'), '<a href="https://support.gravitypdf.com/">', '</a>' ); ?></p>
view/templates/settings/system-status.php CHANGED
@@ -19,7 +19,7 @@
19
  <h2><?php _e('System Status', 'pdfextended'); ?></h2>
20
 
21
  <div id="pdf-system-status">
22
- <p><label><?php _e('Wordpress Version', 'pdfextended'); ?>:</label> <strong><?php echo $gfpdfe_data->wp_version; ?></strong> <span class="<?php echo ($gfpdfe_data->wp_is_compatible === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
23
  <?php if($gfpdfe_data->wp_is_compatible === false): ?>
24
  <br />
25
  <span class="details"><?php _e('Wordpress Version '. GF_PDF_EXTENDED_WP_SUPPORTED_VERSION . ' is required to use this plugin.', 'pdfextended'); ?>
@@ -29,13 +29,13 @@
29
 
30
  <p><label><?php _e('Gravity Forms', 'pdfextended'); ?>:</label> <strong>
31
  <?php if($gfpdfe_data->gf_installed === false): ?>
32
- <?php _e('Not Installed', 'pdfextended'); ?></strong> <span class="icon-remove-sign"></span>
33
  <br />
34
  <span class="details"><?php _e('Gravity Forms '. GF_PDF_EXTENDED_SUPPORTED_VERSION . ' is required to use this plugin. <a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">Upgrade today</a>.', 'pdfextended'); ?></span>
35
 
36
  <?php else:
37
  echo $gfpdfe_data->gf_version; ?> </strong>
38
- <span class="<?php echo ($gfpdfe_data->gf_is_compatible === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
39
  <?php if($gfpdfe_data->gf_is_compatible === false): ?>
40
  <br />
41
  <span class="details"><?php _e('Gravity Forms '. GF_PDF_EXTENDED_SUPPORTED_VERSION . ' is required to use this plugin. <a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">Upgrade today</a>.', 'pdfextended'); ?></span>
@@ -44,7 +44,7 @@
44
  </p>
45
 
46
 
47
- <p><label><?php _e('PHP Version', 'pdfextended'); ?>:</label> <strong><?php echo $gfpdfe_data->php_version; ?></strong> <span class="<?php echo ($gfpdfe_data->php_version_compatible === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
48
  <?php if($gfpdfe_data->php_version_compatible === false): ?>
49
  <br />
50
  <span class="details"><?php _e('PHP Version '. GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION . ' is required to use this plugin.', 'pdfextended'); ?></span>
@@ -52,7 +52,7 @@
52
  </p>
53
 
54
  <p><label><?php _e('MB String', 'pdfextended'); ?>:</label> <strong><?php ($gfpdfe_data->mb_string_installed === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong>
55
- <span class="<?php echo ($gfpdfe_data->mb_string_installed === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
56
  <?php if($gfpdfe_data->mb_string_installed === false): ?>
57
  <br />
58
  <span class="details"><?php _e('The PHP extension MB String and MB String Regex functions are required to use this plugin. Contact your web host to have it enabled.', 'pdfextended'); ?></span>
@@ -60,7 +60,7 @@
60
  </p>
61
 
62
  <p><label><?php _e('GD Library', 'pdfextended'); ?>:</label> <strong><?php ($gfpdfe_data->gd_installed === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong>
63
- <span class="<?php echo ($gfpdfe_data->gd_installed === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
64
  <?php if($gfpdfe_data->gd_installed === false): ?>
65
  <br />
66
  <span class="details"><?php _e('The PHP extension GD Library is required to use this plugin. Contact your web host to have it enabled.', 'pdfextended'); ?></span>
@@ -68,13 +68,13 @@
68
  </p>
69
 
70
  <?php
71
- $ram_icon = 'icon-ok-sign';
72
  if($gfpdfe_data->ram_compatible === false)
73
  {
74
- $ram_icon = 'icon-warning-sign';
75
  if($gfpdfe_data->ram_available < 64)
76
  {
77
- $ram_icon = 'icon-remove-sign';
78
  }
79
  }
80
 
@@ -89,42 +89,35 @@
89
  </p>
90
 
91
 
92
- <?php if($gfpdfe_data->is_initialised === false): ?>
93
-
94
- <p><label><?php _e('Plugin Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_plugin_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_plugin_dir === true) ? 'icon-ok-sign' : 'icon-warning-sign'; ?>"></span>
95
- <?php if($gfpdfe_data->can_write_plugin_dir === false): ?>
96
- <br />
97
- <span class="details"><?php echo sprintf(__('The plugin folder is not writable by your web server. Check the directory "%s" is writable by your web server otherwise we will attempt to use the FTP installer to initialise.', 'pdfextended'), str_replace(ABSPATH, '', PDF_PLUGIN_DIR)); ?></span>
98
- <?php endif; ?>
99
- </p>
100
 
101
- <p><label><?php _e('Theme Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_theme_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_theme_dir === true) ? 'icon-ok-sign' : 'icon-warning-sign'; ?>"></span>
102
  <?php if($gfpdfe_data->can_write_theme_dir === false): ?>
103
  <br />
104
- <span class="details"><?php echo sprintf(__('Your active theme folder is not writable by your web server. Check that "%s" is writable by your web server otherwise we will attempt to use the FTP installer to initialise.', 'pdfextended'), str_replace(ABSPATH, '', get_stylesheet_directory()) ); ?></span>
105
  <?php endif; ?>
106
  </p>
107
 
108
  <?php else: ?>
109
 
110
- <p><label><?php _e('PDF Output Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_output_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_output_dir === true) ? 'icon-ok-sign' : 'icon-remove-sign'; ?>"></span>
111
  <?php if($gfpdfe_data->can_write_output_dir === false): ?>
112
  <br />
113
- <span class="details"><?php echo sprintf(__('The plugin\'s output folder is not writable by your web server. PDFs will not be attached to notifications until this problem is fixed. Check that "%s" is writable by your web server.', 'pdfextended'), str_replace(ABSPATH, '', PDF_SAVE_LOCATION) ); ?></span>
114
  <?php endif; ?>
115
  </p>
116
 
117
- <p><label><?php _e('PDF Font Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_font_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_font_dir === true) ? 'icon-ok-sign' : 'icon-warning-sign'; ?>"></span>
118
  <?php if($gfpdfe_data->can_write_font_dir === false): ?>
119
  <br />
120
- <span class="details"><?php echo sprintf(__('The plugin\'s font folder is not writable by your web server. Check that "%s" is writable by your web server otherwise we will attempt to use the FTP installer to initialise.', 'pdfextended'), str_replace(ABSPATH, '', PDF_FONT_LOCATION) ); ?></span>
121
  <?php endif; ?>
122
  </p>
123
 
124
- <p><label><?php _e('mPDF Temporary Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_pdf_temp_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_pdf_temp_dir === true) ? 'icon-ok-sign' : 'icon-warning-sign'; ?>"></span>
125
  <?php if($gfpdfe_data->can_write_pdf_temp_dir === false): ?>
126
  <br />
127
- <span class="details"><?php _e('mPDF temporary directory not writable (mPDF/tmp/). Memory and image processing time will increase.', 'pdfextended'); ?></span>
128
  <?php endif; ?>
129
  </p>
130
 
19
  <h2><?php _e('System Status', 'pdfextended'); ?></h2>
20
 
21
  <div id="pdf-system-status">
22
+ <p><label><?php _e('Wordpress Version', 'pdfextended'); ?>:</label> <strong><?php echo $gfpdfe_data->wp_version; ?></strong> <span class="<?php echo ($gfpdfe_data->wp_is_compatible === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
23
  <?php if($gfpdfe_data->wp_is_compatible === false): ?>
24
  <br />
25
  <span class="details"><?php _e('Wordpress Version '. GF_PDF_EXTENDED_WP_SUPPORTED_VERSION . ' is required to use this plugin.', 'pdfextended'); ?>
29
 
30
  <p><label><?php _e('Gravity Forms', 'pdfextended'); ?>:</label> <strong>
31
  <?php if($gfpdfe_data->gf_installed === false): ?>
32
+ <?php _e('Not Installed', 'pdfextended'); ?></strong> <span class="fa fa-times-circle"></span>
33
  <br />
34
  <span class="details"><?php _e('Gravity Forms '. GF_PDF_EXTENDED_SUPPORTED_VERSION . ' is required to use this plugin. <a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">Upgrade today</a>.', 'pdfextended'); ?></span>
35
 
36
  <?php else:
37
  echo $gfpdfe_data->gf_version; ?> </strong>
38
+ <span class="<?php echo ($gfpdfe_data->gf_is_compatible === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
39
  <?php if($gfpdfe_data->gf_is_compatible === false): ?>
40
  <br />
41
  <span class="details"><?php _e('Gravity Forms '. GF_PDF_EXTENDED_SUPPORTED_VERSION . ' is required to use this plugin. <a href="https://www.e-junkie.com/ecom/gb.php?cl=54585&c=ib&aff=235154" target="ejejcsingle">Upgrade today</a>.', 'pdfextended'); ?></span>
44
  </p>
45
 
46
 
47
+ <p><label><?php _e('PHP Version', 'pdfextended'); ?>:</label> <strong><?php echo $gfpdfe_data->php_version; ?></strong> <span class="<?php echo ($gfpdfe_data->php_version_compatible === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
48
  <?php if($gfpdfe_data->php_version_compatible === false): ?>
49
  <br />
50
  <span class="details"><?php _e('PHP Version '. GF_PDF_EXTENDED_PHP_SUPPORTED_VERSION . ' is required to use this plugin.', 'pdfextended'); ?></span>
52
  </p>
53
 
54
  <p><label><?php _e('MB String', 'pdfextended'); ?>:</label> <strong><?php ($gfpdfe_data->mb_string_installed === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong>
55
+ <span class="<?php echo ($gfpdfe_data->mb_string_installed === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
56
  <?php if($gfpdfe_data->mb_string_installed === false): ?>
57
  <br />
58
  <span class="details"><?php _e('The PHP extension MB String and MB String Regex functions are required to use this plugin. Contact your web host to have it enabled.', 'pdfextended'); ?></span>
60
  </p>
61
 
62
  <p><label><?php _e('GD Library', 'pdfextended'); ?>:</label> <strong><?php ($gfpdfe_data->gd_installed === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong>
63
+ <span class="<?php echo ($gfpdfe_data->gd_installed === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
64
  <?php if($gfpdfe_data->gd_installed === false): ?>
65
  <br />
66
  <span class="details"><?php _e('The PHP extension GD Library is required to use this plugin. Contact your web host to have it enabled.', 'pdfextended'); ?></span>
68
  </p>
69
 
70
  <?php
71
+ $ram_icon = 'fa fa-check-circle';
72
  if($gfpdfe_data->ram_compatible === false)
73
  {
74
+ $ram_icon = 'fa fa-exclamation-triangle';
75
  if($gfpdfe_data->ram_available < 64)
76
  {
77
+ $ram_icon = 'fa fa-times-circle';
78
  }
79
  }
80
 
89
  </p>
90
 
91
 
92
+ <?php if($gfpdfe_data->is_initialised === false): ?>
 
 
 
 
 
 
 
93
 
94
+ <p><label><?php _e('Uploads Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_upload_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_upload_dir === true) ? 'fa fa-check-circle' : 'fa fa-exclamation-triangle'; ?>"></span>
95
  <?php if($gfpdfe_data->can_write_theme_dir === false): ?>
96
  <br />
97
+ <span class="details"><?php echo sprintf(__('Your upload folder is not writable by your web server. Check that "%s" is writable by your web server otherwise we will attempt to use the FTP installer to initialise.', 'pdfextended'), str_replace(ABSPATH, '', $gfpdfe_data->upload_dir) ); ?></span>
98
  <?php endif; ?>
99
  </p>
100
 
101
  <?php else: ?>
102
 
103
+ <p><label><?php _e('PDF Output Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_output_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_output_dir === true) ? 'fa fa-check-circle' : 'fa fa-times-circle'; ?>"></span>
104
  <?php if($gfpdfe_data->can_write_output_dir === false): ?>
105
  <br />
106
+ <span class="details"><?php echo sprintf(__('The plugin\'s output folder is not writable by your web server. PDFs will not be attached to notifications until this problem is fixed. Check that "%s" is writable by your web server.', 'pdfextended'), str_replace(ABSPATH, '', $gfpdfe_data->template_location) ); ?></span>
107
  <?php endif; ?>
108
  </p>
109
 
110
+ <p><label><?php _e('PDF Font Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_font_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_font_dir === true) ? 'fa fa-check-circle' : 'fa fa-exclamation-triangle'; ?>"></span>
111
  <?php if($gfpdfe_data->can_write_font_dir === false): ?>
112
  <br />
113
+ <span class="details"><?php echo sprintf(__('The plugin\'s font folder is not writable by your web server. Check that "%s" is writable by your web server otherwise we will attempt to use the FTP installer to initialise.', 'pdfextended'), str_replace(ABSPATH, '', $gfpdfe_data->template_font_location) ); ?></span>
114
  <?php endif; ?>
115
  </p>
116
 
117
+ <p><label><?php _e('mPDF Temporary Directory Writable?', 'pdfextended'); ?></label> <strong><?php ($gfpdfe_data->can_write_pdf_temp_dir === true) ? _e('Yes', 'pdfextended') : _e('No', 'pdfextended'); ?></strong> <span class="<?php echo ($gfpdfe_data->can_write_pdf_temp_dir === true) ? 'fa fa-check-circle' : 'fa fa-exclamation-triangle'; ?>"></span>
118
  <?php if($gfpdfe_data->can_write_pdf_temp_dir === false): ?>
119
  <br />
120
+ <span class="details"><?php echo sprintf(__('mPDF temporary directory not writable (%s). Memory and image processing time will increase.', 'pdfextended'), str_replace(ABSPATH, '', PDF_PLUGIN_DIR) . 'mPDF/tmp/'); ?></span>
121
  <?php endif; ?>
122
  </p>
123