WP Photo Album Plus - Version 7.1.03.001

Version Description

= 7.1.03 =

  • This version addresses various security issues.
  • This version addresses various bug fixes.

= 7.1.02 =

  • This version addresses various security issues.
  • This version addresses various bug fixes and feature requests.

= 7.1.01 =

  • This version addresses various bug fixes and feature requests.

= 7.1.00 =

  • This version addresses various bug fixes and feature requests.
  • The Photo Album -> Upload Photos and Import Photos admin pages have been substantially improved. Read the changelog for details.

= 7.0.11 =

  • This version addresses various bug fixes and feature requests.

= 7.0.11 =

  • This version addresses various bug fixes

= 7.0.10 =

  • This version addresses various bug fixes

= 7.0.09 =

  • This version addresses various security issues.
  • This version addresses various bug fixes and feature requests.

= 7.0.08 =

  • This version addresses various security issues.
  • This version addresses various bug fixes

= 7.0.07 =

  • This version addresses various security issues.
  • This version addresses various bug fixes

= 7.0.06 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.05 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 7.0.04 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.03 =

  • This version addresses various minor bug fixes and feature requests.

= 7.0.02 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 7.0.01 =

  • This version addresses various minor bug fixes and feature requests.

= 7.0.00 =

  • Shortcode generators for Gutenberg added.
  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.
  • To prevent spamming and give the users the opportunity to decide when they want us to email them, the mailing system has been revised. Configure Table IX-M to enable various mailing lists, and use the WPPA+ Notify widget for full user flexibility.

= 6.9.21 =

  • This version addresses various bug fixes
  • This version addresses various security issues.

= 6.9.20 =

  • This version addresses various bug fixes

= 6.9.19 =

  • This version addresses various minor bug fixes

= 6.9.18 =

  • This version addresses various minor bug fixes

= 6.9.17 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.16 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.15 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.14 =

  • This version addresses various minor bug fixes and feature requests.
  • This version addresses various security issues.

= 6.9.13 =

  • Security release.

= 6.9.12 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.11 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.10 =

  • This version addresses various minor bug fixes and performance improvements.

= 6.9.09 =

  • Panorama support phase III.

= 6.9.08 =

  • This version addresses various minor bug fixes and feature requests.
  • Panorama support phase II.

= 6.9.07 =

  • This version addresses various minor bug fixes and feature requests.
  • Panorama support phase I.

= 6.9.06 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.05 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.04 =

  • This version addresses various minor bug fixes and feature requests.
  • Local CDN functionality has been added.

= 6.9.03 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.02 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.01 =

  • This version addresses various minor bug fixes and feature requests.

= 6.9.00 =

  • This version includes the code for the privacy policy requirements.

= 6.8.09

  • This version addresses various bug fixes and code edits.

= 6.8.08 =

  • This version addresses various minor bug fixes and feature requests.
  • This version offers substantial performance improvements when the box in Table IV-A13: Defer Javascript is ticked. This setting is now recommended and set ticked as the default.
  • For more info on performance improvements and compatibility with optimizers: see the changelog.txt

= 6.8.07 =

  • This version addresses various minor bug fixes and enhancements, and a new widget: Statistics.

= 6.8.06 =

  • This version addresses various minor bug fixes and improved cache handling.

= 6.8.05 =

  • This version addresses various minor bug fixes and feture requests.

= 6.8.04 =

  • This version addresses various display issues and a few fixes of bugs that seldom affected the plugins behaviour.
Download this release

Release Info

Developer opajaap
Plugin Icon wp plugin WP Photo Album Plus
Version 7.1.03.001
Comparing to
See all releases

Code changes from version 7.1.02.007 to 7.1.03.001

changelog.txt CHANGED
@@ -1,11 +1,16 @@
1
  WP Photo Album Plus Changelog
2
 
3
- = 7.1.02
 
 
 
 
 
4
 
5
  * Added Table IX-A16: Load nicescroller js always.
6
  * Table I-C10 (Thumbnail area max size) and Table I-C11 (Use nicescroller) have been moved to Table I-A12 and Table I-A13 and apply now also to the album cover area.
7
  * The local cdn file list on the photo admin page now link to the images in a new window.
8
- * Fixed a filesystem credentials issue resulting in black local cdn images.
9
  * Added 'week number is order#' as choice in the Photo of the day admin page at line 11a.
10
 
11
  = 7.1.01 =
1
  WP Photo Album Plus Changelog
2
 
3
+ = 7.1.03 =
4
+
5
+ * Fixed layout of popup windows of Table VIII-C.
6
+ * popup windows of Table VIII-C now use nicescroller.
7
+
8
+ = 7.1.02 =
9
 
10
  * Added Table IX-A16: Load nicescroller js always.
11
  * Table I-C10 (Thumbnail area max size) and Table I-C11 (Use nicescroller) have been moved to Table I-A12 and Table I-A13 and apply now also to the album cover area.
12
  * The local cdn file list on the photo admin page now link to the images in a new window.
13
+ * Fixed a filesystem credentials issue resulting in black local cdn images on certain servers.
14
  * Added 'week number is order#' as choice in the Photo of the day admin page at line 11a.
15
 
16
  = 7.1.01 =
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: opajaap
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=OpaJaap@OpaJaap.nl&item_name=WP-Photo-Album-Plus&item_number=Support-Open-Source&currency_code=USD&lc=US
4
  Tags: photo, album, slideshow, video, audio, lightbox, iptc, exif, cloudinary, fotomoto, imagemagick, pdf
5
- Version: 7.1.02
6
- Stable tag: 7.1.01.004
7
  Author: J.N. Breetvelt
8
  Author URI: http://www.opajaap.nl/
9
  Requires at least: 3.9
@@ -137,6 +137,11 @@ See for the full changelog: <a href="http://www.wppa.nl/changelog/" >The documen
137
 
138
  == Upgrade Notice ==
139
 
 
 
 
 
 
140
  = 7.1.02 =
141
 
142
  * This version addresses various security issues.
2
  Contributors: opajaap
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=OpaJaap@OpaJaap.nl&item_name=WP-Photo-Album-Plus&item_number=Support-Open-Source&currency_code=USD&lc=US
4
  Tags: photo, album, slideshow, video, audio, lightbox, iptc, exif, cloudinary, fotomoto, imagemagick, pdf
5
+ Version: 7.1.03
6
+ Stable tag: 7.1.02.007
7
  Author: J.N. Breetvelt
8
  Author URI: http://www.opajaap.nl/
9
  Requires at least: 3.9
137
 
138
  == Upgrade Notice ==
139
 
140
+ = 7.1.03 =
141
+
142
+ * This version addresses various security issues.
143
+ * This version addresses various bug fixes.
144
+
145
  = 7.1.02 =
146
 
147
  * This version addresses various security issues.
wppa-admin.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains the admin menu and startups the admin pages
6
- * Version 7.0.08
7
  *
8
  */
9
 
@@ -171,6 +171,25 @@ function wppa_page_export() {
171
  // Settings admin page
172
  function wppa_page_options() {
173
  require_once 'wppa-settings-autosave.php';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  _wppa_page_options();
175
  }
176
  // Photo of the day admin page
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains the admin menu and startups the admin pages
6
+ * Version 7.1.03
7
  *
8
  */
9
 
171
  // Settings admin page
172
  function wppa_page_options() {
173
  require_once 'wppa-settings-autosave.php';
174
+
175
+ // jQuery Easing for Nicescroller
176
+ $easing_url = 'https://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.4.1/jquery.easing.js';
177
+ $easing_cdn = wp_remote_get( $easing_url );
178
+ if ( (int) wp_remote_retrieve_response_code( $easing_cdn ) !== 200 ) {
179
+
180
+ $easing_url = WPPA_URL . '/vendor/jquery-easing/jquery.easing.min.js';
181
+ }
182
+ wp_enqueue_script( 'nicescrollr-easing-min-js', $easing_url, array( 'jquery' ), 'all', true );
183
+
184
+ // Nicescroll Library
185
+ $nice_url = 'https://cdnjs.cloudflare.com/ajax/libs/jquery.nicescroll/3.7.6/jquery.nicescroll.min.js';
186
+ $nice_cdn = wp_remote_get( $nice_url );
187
+ if( (int) wp_remote_retrieve_response_code( $nice_cdn ) !== 200 ) {
188
+
189
+ $nice_url = WPPA_URL . '/vendor/nicescroll/jquery.nicescroll.min.js';
190
+ }
191
+ wp_enqueue_script( 'nicescrollr-inc-nicescroll-min-js', $nice_url, array( 'jquery', 'nicescrollr-easing-min-js' ), 'all', true );
192
+
193
  _wppa_page_options();
194
  }
195
  // Photo of the day admin page
wppa-import.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all the import pages and functions
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -1863,7 +1863,7 @@ global $wppa_supported_document_extensions;
1863
  }
1864
  else {
1865
  $parent = '0';
1866
- wppa_warning_message( __( 'Unknown parent album:', 'wp-photo-album-plus').' '.$data.' '.__( '--- none --- used.', 'wp-photo-album-plus') );
1867
  }
1868
  }
1869
  break;
@@ -1877,7 +1877,7 @@ global $wppa_supported_document_extensions;
1877
  }
1878
 
1879
  if ( wppa_get_album_id( $name ) != '' ) {
1880
- wppa_warning_message( 'Album already exists ' . stripslashes( $name ) );
1881
  if ( $dela ) wppa_unlink( $album );
1882
  }
1883
  else {
@@ -2032,7 +2032,7 @@ global $wppa_supported_document_extensions;
2032
  }
2033
  else { // Failed
2034
  if ( ! wppa( 'ajax' ) ) {
2035
- wppa_error_message('Failed to add poster for item '.$is_poster);
2036
  }
2037
  if ( $delf ) {
2038
  wppa_unlink( $file );
@@ -2076,7 +2076,7 @@ global $wppa_supported_document_extensions;
2076
  $id = basename( $file );
2077
  }
2078
  if ( wppa_switch( 'void_dups' ) && wppa_is_file_duplicate_photo( $id, $alb ) ) {
2079
- wppa_warning_message( sprintf( __( 'Photo %s already exists in album %s. (1)', 'wp-photo-album-plus'), $id, $alb ) );
2080
  wppa( 'ajax_import_files_error', __( 'Duplicate', 'wp-photo-album-plus') );
2081
  if ( $delf ) {
2082
  wppa_unlink( $file );
@@ -2109,7 +2109,7 @@ global $wppa_supported_document_extensions;
2109
  }
2110
  }
2111
  else {
2112
- wppa_error_message( __( 'Error inserting photo', 'wp-photo-album-plus') . ' ' . basename( $file ) . '.' );
2113
  if ( $delf ) {
2114
  wppa_unlink( $unsanitized_path_name );
2115
  }
@@ -2117,7 +2117,7 @@ global $wppa_supported_document_extensions;
2117
  }
2118
  }
2119
  else {
2120
- wppa_error_message( sprintf( __( 'Error inserting photo %s, unknown or non existent album.', 'wp-photo-album-plus'), basename( $file ) ) );
2121
  }
2122
  } // Insert
2123
  }
@@ -2125,7 +2125,7 @@ global $wppa_supported_document_extensions;
2125
  $idx++;
2126
  if ( $source_type == 'remote' ) unset( $files[$file_idx] );
2127
  if ( wppa_is_time_up() ) {
2128
- wppa_warning_message( sprintf( __( 'Time out. %s photos imported. Please restart this operation.', 'wp-photo-album-plus'), $pcount ) );
2129
  wppa_set_last_album( $album );
2130
  if ( $source_type == 'remote' ) update_option( 'wppa_import_source_url_found_'.$user, $files );
2131
  return;
@@ -2183,7 +2183,7 @@ global $wppa_supported_document_extensions;
2183
  }
2184
  }
2185
  else {
2186
- wppa_error_message( sprintf( __( 'Error inserting video %s, unknown or non existent album.', 'wp-photo-album-plus'), basename( $file ) ) );
2187
  }
2188
  }
2189
  }
@@ -2217,7 +2217,7 @@ global $wppa_supported_document_extensions;
2217
  }
2218
  }
2219
  else {
2220
- wppa_error_message( sprintf( __( 'Error inserting audio %s, unknown or non existent album.', 'wp-photo-album-plus'), basename( $file ) ) );
2221
  }
2222
  }
2223
  }
@@ -2251,7 +2251,7 @@ global $wppa_supported_document_extensions;
2251
  }
2252
  }
2253
  else {
2254
- wppa_error_message( sprintf( __( 'Error inserting document %s, unknown or non existent album.', 'wp-photo-album-plus'), basename( $file ) ) );
2255
  }
2256
  }
2257
  }
@@ -2403,7 +2403,7 @@ global $wppa_supported_document_extensions;
2403
  }
2404
  }
2405
  if ( ! $ok ) {
2406
- wppa_error_message( 'Field '.$csv_field.' not found in db table '.$is_db_table.' description' );
2407
  wppa_error_message( __( 'Invalid header. Can not continue.', 'wp-photo-album-plus') );
2408
  fclose( $handle );
2409
  return;
@@ -2463,12 +2463,12 @@ global $wppa_supported_document_extensions;
2463
  }
2464
  }
2465
  else {
2466
- wppa_error_message( 'Table ' . $is_db_table . 'not supported' );
2467
  return;
2468
  }
2469
  }
2470
  else{
2471
- wppa_error_message( 'Id field not positive numeric: '.$id );
2472
 
2473
  // Write back to original file
2474
  fputs( $write_handle, $dataline );
@@ -2519,7 +2519,7 @@ global $wppa_supported_document_extensions;
2519
  }
2520
  elseif ( ! in_array( $captions[$captidx], $cust_labels ) ) {
2521
  if ( ! in_array( '', $cust_labels ) ) {
2522
- wppa_error_message( __( 'All available custom data fields are in use. There is no space for', 'wp-photo-album-plus') . ' ' . $captions[$captidx] );
2523
  fclose( $handle );
2524
  return;
2525
  }
@@ -2794,7 +2794,7 @@ global $wppa_supported_document_extensions;
2794
  }
2795
 
2796
  function wppa_wrong_value( $value, $field, $extra = '' ) {
2797
- $message = sprintf( __( 'Value %s is not valid for %s.', 'wp-photo-album-plus' ), $value, $field );
2798
  if ( $extra ) {
2799
  $message .= '<br />' . $extra;
2800
  }
@@ -2929,18 +2929,15 @@ function wppa_get_meta_data( $file, $item, $opt ) {
2929
  if ( $opt == '{' ) $opt2 = '}';
2930
  if ( $opt == '[' ) $opt2 = ']';
2931
  if ( wppa_is_file( $file ) ) {
2932
- $handle = wppa_fopen( WPPA_DEPOT_PATH . '/' . basename( $file ), "r" );
2933
- if ( $handle ) {
2934
- while ( ( $buffer = fgets( $handle, 4096 ) ) !== false ) {
 
2935
  if ( substr( $buffer, 0, 5 ) == $item.'=' ) {
2936
  if ( $opt == '' ) $result = substr( $buffer, 5, strlen( $buffer )-6 );
2937
  else $result = $opt.__( substr( $buffer, 5, strlen( $buffer )-6 ) ).$opt2; // Translate for display purposes only
2938
  }
2939
  }
2940
- if ( !feof( $handle ) ) {
2941
- _e( 'Error: unexpected fgets() fail in wppa_get_meta_data().', 'wp-photo-album-plus' );
2942
- }
2943
- fclose( $handle );
2944
  }
2945
  }
2946
  return $result;
@@ -2966,7 +2963,7 @@ function wppa_extract( $xpath, $delz ) {
2966
  // Start security fix
2967
  $path = wppa_sanitize_file_name( $xpath );
2968
  if ( ! wppa_is_file( $xpath ) ) {
2969
- wppa_error_message( 'Zipfile '.$path.' does not exist.' );
2970
  $err = '4';
2971
  return $err;
2972
  }
@@ -2991,7 +2988,7 @@ function wppa_extract( $xpath, $delz ) {
2991
 
2992
  // Assuming that entries without a file extension are directries. No warning on directory.
2993
  elseif ( strpos( $stat['name'], '.' ) !== false && strlen( $file_ext ) < 5 ) {
2994
- wppa_warning_message( sprintf( __( 'File %s is of an unsupported filetype and has been ignored during extraction.', 'wp-photo-album-plus'), wppa_sanitize_file_name( $stat['name'] ) ) );
2995
  $skip++;
2996
  }
2997
  }
@@ -3002,7 +2999,7 @@ function wppa_extract( $xpath, $delz ) {
3002
  wppa_unlink( $xpath );
3003
  }
3004
  } else {
3005
- wppa_error_message( __( 'Failed to extract', 'wp-photo-album-plus').' '.$path );
3006
  $err = '1';
3007
  }
3008
  }
@@ -3046,7 +3043,7 @@ global $wppa_session;
3046
  'a_parent' => $parent
3047
  ) );
3048
  if ( $alb === false ) {
3049
- wppa_error_message( __( 'Could not create album.', 'wp-photo-album-plus').'<br/>Query = '.$query );
3050
  wp_die( 'Sorry, cannot continue' );
3051
  }
3052
  else {
@@ -3092,11 +3089,11 @@ wppa_log('obs', 'FOUND:'.$photofile);
3092
  if ( wppa_get_ext( $photofile ) == 'csv' ) {
3093
  wppa_copy( $photofile, WPPA_DEPOT_PATH . '/' . basename( $photofile ) );
3094
  wppa_unlink( $photofile );
3095
- wppa_warning_message( sprintf( __( '.csv file %s has been moved to your depot.', 'wp-photo-album-plus' ), basename( $photofile ) ) );
3096
  }
3097
  elseif ( wppa_albumphoto_exists( $alb, basename( $photofile ) ) ) {
3098
  if ( ! wppa_switch( 'keep_import_files' ) ) {
3099
- wppa_warning_message( 'Photo '.basename( $photofile ).' already exists in album '.$alb.'. Removed. (2)' );
3100
  }
3101
  }
3102
  else {
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains all the import pages and functions
6
+ * Version 7.1.03
7
  *
8
  */
9
 
1863
  }
1864
  else {
1865
  $parent = '0';
1866
+ wppa_warning_message( __( 'Unknown parent album:', 'wp-photo-album-plus').' '.htmlentities($data).' '.__( '--- none --- used.', 'wp-photo-album-plus') );
1867
  }
1868
  }
1869
  break;
1877
  }
1878
 
1879
  if ( wppa_get_album_id( $name ) != '' ) {
1880
+ wppa_warning_message( 'Album already exists ' . htmlentities( $name ) );
1881
  if ( $dela ) wppa_unlink( $album );
1882
  }
1883
  else {
2032
  }
2033
  else { // Failed
2034
  if ( ! wppa( 'ajax' ) ) {
2035
+ wppa_error_message( 'Failed to add poster for item ' . htmlentities( $is_poster ) );
2036
  }
2037
  if ( $delf ) {
2038
  wppa_unlink( $file );
2076
  $id = basename( $file );
2077
  }
2078
  if ( wppa_switch( 'void_dups' ) && wppa_is_file_duplicate_photo( $id, $alb ) ) {
2079
+ wppa_warning_message( htmlentities( sprintf( __( 'Photo %s already exists in album %s. (1)', 'wp-photo-album-plus'), $id, $alb ) ) );
2080
  wppa( 'ajax_import_files_error', __( 'Duplicate', 'wp-photo-album-plus') );
2081
  if ( $delf ) {
2082
  wppa_unlink( $file );
2109
  }
2110
  }
2111
  else {
2112
+ wppa_error_message( __( 'Error inserting photo', 'wp-photo-album-plus') . ' ' . htmlentities( basename( $file ) ) . '.' );
2113
  if ( $delf ) {
2114
  wppa_unlink( $unsanitized_path_name );
2115
  }
2117
  }
2118
  }
2119
  else {
2120
+ wppa_error_message( sprintf( __( 'Error inserting photo %s, unknown or non existent album.', 'wp-photo-album-plus'), hmlentities( basename( $file ) ) ) );
2121
  }
2122
  } // Insert
2123
  }
2125
  $idx++;
2126
  if ( $source_type == 'remote' ) unset( $files[$file_idx] );
2127
  if ( wppa_is_time_up() ) {
2128
+ wppa_warning_message( htmlentities( sprintf( __( 'Time out. %s photos imported. Please restart this operation.', 'wp-photo-album-plus'), $pcount ) ) );
2129
  wppa_set_last_album( $album );
2130
  if ( $source_type == 'remote' ) update_option( 'wppa_import_source_url_found_'.$user, $files );
2131
  return;
2183
  }
2184
  }
2185
  else {
2186
+ wppa_error_message( sprintf( __( 'Error inserting video %s, unknown or non existent album.', 'wp-photo-album-plus'), htmlentities( basename( $file ) ) ) );
2187
  }
2188
  }
2189
  }
2217
  }
2218
  }
2219
  else {
2220
+ wppa_error_message( sprintf( __( 'Error inserting audio %s, unknown or non existent album.', 'wp-photo-album-plus'), htmlentities ( basename( $file ) ) ) );
2221
  }
2222
  }
2223
  }
2251
  }
2252
  }
2253
  else {
2254
+ wppa_error_message( sprintf( __( 'Error inserting document %s, unknown or non existent album.', 'wp-photo-album-plus'), htmlentities( basename( $file ) ) ) );
2255
  }
2256
  }
2257
  }
2403
  }
2404
  }
2405
  if ( ! $ok ) {
2406
+ wppa_error_message( htmlentities( 'Field '.$csv_field.' not found in db table '.$is_db_table.' description' ) );
2407
  wppa_error_message( __( 'Invalid header. Can not continue.', 'wp-photo-album-plus') );
2408
  fclose( $handle );
2409
  return;
2463
  }
2464
  }
2465
  else {
2466
+ wppa_error_message( htmlentities( 'Table ' . $is_db_table . 'not supported' ) );
2467
  return;
2468
  }
2469
  }
2470
  else{
2471
+ wppa_error_message( 'Id field not positive numeric: ' . htmlentities( $id ) );
2472
 
2473
  // Write back to original file
2474
  fputs( $write_handle, $dataline );
2519
  }
2520
  elseif ( ! in_array( $captions[$captidx], $cust_labels ) ) {
2521
  if ( ! in_array( '', $cust_labels ) ) {
2522
+ wppa_error_message( __( 'All available custom data fields are in use. There is no space for', 'wp-photo-album-plus') . ' ' . htmlentities( $captions[$captidx] ) );
2523
  fclose( $handle );
2524
  return;
2525
  }
2794
  }
2795
 
2796
  function wppa_wrong_value( $value, $field, $extra = '' ) {
2797
+ $message = htmlentities( sprintf( __( 'Value %s is not valid for %s.', 'wp-photo-album-plus' ), $value, $field ) );
2798
  if ( $extra ) {
2799
  $message .= '<br />' . $extra;
2800
  }
2929
  if ( $opt == '{' ) $opt2 = '}';
2930
  if ( $opt == '[' ) $opt2 = ']';
2931
  if ( wppa_is_file( $file ) ) {
2932
+
2933
+ $buffers = wppa_get_contents_array( $file );
2934
+ if ( $buffers ) {
2935
+ foreach ( $buffers as $buffer ) {
2936
  if ( substr( $buffer, 0, 5 ) == $item.'=' ) {
2937
  if ( $opt == '' ) $result = substr( $buffer, 5, strlen( $buffer )-6 );
2938
  else $result = $opt.__( substr( $buffer, 5, strlen( $buffer )-6 ) ).$opt2; // Translate for display purposes only
2939
  }
2940
  }
 
 
 
 
2941
  }
2942
  }
2943
  return $result;
2963
  // Start security fix
2964
  $path = wppa_sanitize_file_name( $xpath );
2965
  if ( ! wppa_is_file( $xpath ) ) {
2966
+ wppa_error_message( 'Zipfile '.htmlentities( $path ).' does not exist.' );
2967
  $err = '4';
2968
  return $err;
2969
  }
2988
 
2989
  // Assuming that entries without a file extension are directries. No warning on directory.
2990
  elseif ( strpos( $stat['name'], '.' ) !== false && strlen( $file_ext ) < 5 ) {
2991
+ wppa_warning_message( htmlentities( sprintf( __( 'File %s is of an unsupported filetype and has been ignored during extraction.', 'wp-photo-album-plus'), wppa_sanitize_file_name( $stat['name'] ) ) ) );
2992
  $skip++;
2993
  }
2994
  }
2999
  wppa_unlink( $xpath );
3000
  }
3001
  } else {
3002
+ wppa_error_message( __( 'Failed to extract', 'wp-photo-album-plus').' '.htmlentities( $path ) );
3003
  $err = '1';
3004
  }
3005
  }
3043
  'a_parent' => $parent
3044
  ) );
3045
  if ( $alb === false ) {
3046
+ wppa_error_message( __( 'Could not create album.', 'wp-photo-album-plus').'<br/>Query = '.htmlentities( $query ) );
3047
  wp_die( 'Sorry, cannot continue' );
3048
  }
3049
  else {
3089
  if ( wppa_get_ext( $photofile ) == 'csv' ) {
3090
  wppa_copy( $photofile, WPPA_DEPOT_PATH . '/' . basename( $photofile ) );
3091
  wppa_unlink( $photofile );
3092
+ wppa_warning_message( htmlentities( sprintf( __( '.csv file %s has been moved to your depot.', 'wp-photo-album-plus' ), basename( $photofile ) ) ) );
3093
  }
3094
  elseif ( wppa_albumphoto_exists( $alb, basename( $photofile ) ) ) {
3095
  if ( ! wppa_switch( 'keep_import_files' ) ) {
3096
+ wppa_warning_message( htmlentities( 'Photo '.basename( $photofile ).' already exists in album '.$alb.'. Removed. (2)' ) );
3097
  }
3098
  }
3099
  else {
wppa-maintenance.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains (not yet, but in the future maybe) all the maintenance routines
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -1147,7 +1147,7 @@ global $wppa_log_file;
1147
  $result =
1148
  '<div' .
1149
  ' id="wppa-maintenance-list"' .
1150
- ( strpos( $_SERVER['REQUEST_URI'], 'page=wppa_log' ) !== false ? '' : ' style="max-height:500px; overflow:auto;"' ) .
1151
  ' >' .
1152
  '<style type="text/css" >' .
1153
  '#wppa-maintenance-list h2 {' .
@@ -1161,6 +1161,9 @@ global $wppa_log_file;
1161
  '}' .
1162
  '</style>';
1163
 
 
 
 
1164
  switch ( $slug ) {
1165
 
1166
  // List the search index table
@@ -1172,10 +1175,10 @@ global $wppa_log_file;
1172
 
1173
  $header = sprintf( __( 'List of Searcheable words <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1174
 
1175
- $result .=
1176
- '<div' .
1177
- ' style="float:left; clear:both; width:100%; overflow:auto;"' .
1178
- ' >';
1179
 
1180
  if ( $indexes ) {
1181
  $result .= '
@@ -1221,8 +1224,10 @@ global $wppa_log_file;
1221
  $header = '';
1222
  }
1223
 
1224
- $result .=
1225
- '<div style="float:left; clear:both; width:100%; overflow:auto; word-wrap:none;" >';
 
 
1226
 
1227
  if ( ! wppa_is_file( $wppa_log_file ) ) {
1228
  $result .= __( 'There are no log messages', 'wp-photo-album-plus' );
@@ -1245,10 +1250,11 @@ global $wppa_log_file;
1245
 
1246
  $header = sprintf( __( 'List of recent ratings <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1247
 
1248
- $result .=
1249
- '<div' .
1250
- ' style="float:left; clear:both; width:100%; overflow:auto;"' .
1251
- ' >';
 
1252
  if ( $ratings ) {
1253
  $result .= '
1254
  <table>
@@ -1306,10 +1312,11 @@ global $wppa_log_file;
1306
 
1307
  $header = sprintf( __( 'List of sessions <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1308
 
1309
- $result .=
1310
- '<div' .
1311
- ' style="float:left; clear:both; width:100%; overflow:auto;"' .
1312
- ' >';
 
1313
  if ( $sessions ) {
1314
  $result .= '
1315
  <table>
@@ -1388,8 +1395,11 @@ global $wppa_log_file;
1388
 
1389
  $header = sprintf( __( 'List of comments <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1390
 
1391
- $result .=
1392
- '<div style="float:left; clear:both; width:100%; overflow:auto;" >';
 
 
 
1393
  if ( $comments ) {
1394
  $result .= '
1395
  <table>
@@ -1447,6 +1457,15 @@ global $wppa_log_file;
1447
  $result = 'Error: Unimplemented slug: ' . $slug . ' in wppa_do_maintenance_popup()';
1448
  }
1449
 
 
 
 
 
 
 
 
 
 
1450
  $result .=
1451
  '</div>';
1452
 
3
  * Package: wp-photo-album-plus
4
  *
5
  * Contains (not yet, but in the future maybe) all the maintenance routines
6
+ * Version 7.1.03
7
  *
8
  */
9
 
1147
  $result =
1148
  '<div' .
1149
  ' id="wppa-maintenance-list"' .
1150
+ ( strpos( $_SERVER['REQUEST_URI'], 'page=wppa_log' ) !== false ? '' : ' style="max-height:500px; overflow:hidden;width:100%;"' ) .
1151
  ' >' .
1152
  '<style type="text/css" >' .
1153
  '#wppa-maintenance-list h2 {' .
1161
  '}' .
1162
  '</style>';
1163
 
1164
+ // Open nicescroller wrapper
1165
+ $result .= '<div class="wppa-nicewrap" >';
1166
+
1167
  switch ( $slug ) {
1168
 
1169
  // List the search index table
1175
 
1176
  $header = sprintf( __( 'List of Searcheable words <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1177
 
1178
+ $result .= '
1179
+ <div
1180
+ style="float:left;clear:both;width:100%;overflow:auto;margin-left:-1px;"
1181
+ >';
1182
 
1183
  if ( $indexes ) {
1184
  $result .= '
1224
  $header = '';
1225
  }
1226
 
1227
+ $result .= '
1228
+ <div
1229
+ style="float:left;clear:both;width:100%;overflow:auto;margin-left:-1px;"
1230
+ >';
1231
 
1232
  if ( ! wppa_is_file( $wppa_log_file ) ) {
1233
  $result .= __( 'There are no log messages', 'wp-photo-album-plus' );
1250
 
1251
  $header = sprintf( __( 'List of recent ratings <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1252
 
1253
+ $result .= '
1254
+ <div
1255
+ style="float:left;clear:both;width:100%;overflow:auto;margin-left:-1px;"
1256
+ >';
1257
+
1258
  if ( $ratings ) {
1259
  $result .= '
1260
  <table>
1312
 
1313
  $header = sprintf( __( 'List of sessions <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1314
 
1315
+ $result .= '
1316
+ <div
1317
+ style="float:left;clear:both;width:100%;overflow:auto;margin-left:-1px;"
1318
+ >';
1319
+
1320
  if ( $sessions ) {
1321
  $result .= '
1322
  <table>
1395
 
1396
  $header = sprintf( __( 'List of comments <small>( Max 1000 entries of total %d )</small>', 'wp-photo-album-plus' ), $total );
1397
 
1398
+ $result .= '
1399
+ <div
1400
+ style="float:left;clear:both;width:100%;overflow:auto;margin-left:-1px;"
1401
+ >';
1402
+
1403
  if ( $comments ) {
1404
  $result .= '
1405
  <table>
1457
  $result = 'Error: Unimplemented slug: ' . $slug . ' in wppa_do_maintenance_popup()';
1458
  }
1459
 
1460
+ // End nicescroller wrapper
1461
+ $result .= '
1462
+ <script type="text/javascript" >
1463
+ jQuery(document).ready(function(){
1464
+ jQuery("#wppa-maintenance-list").niceScroll(".wppa-nicewrap",{' . wppa_opt( 'nicescroll_opts' ) . '});
1465
+ });
1466
+ </script>
1467
+ </div>';
1468
+
1469
  $result .=
1470
  '</div>';
1471
 
wppa-photo-admin-autosave.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * edit and delete photos
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -2768,7 +2768,7 @@ function wppaSetConfirmMove( id ) {
2768
  <!-- Preview -->
2769
  <td style="min-width:240px; text-align:center;" >
2770
  <?php if ( wppa_is_video( $photo['id'] ) ) { ?>
2771
- <a href="<?php echo str_replace( 'xxx', 'mp4', wppa_get_photo_url( $photo['id'] ) ) ?>" target="_blank" title="Click to see fullsize" >
2772
  <?php // Animating size changes of a video tag is not a good idea. It will rapidly screw up browser cache and cpu ?>
2773
  <?php echo wppa_get_video_html( array(
2774
  'id' => $id,
@@ -2799,13 +2799,13 @@ function wppaSetConfirmMove( id ) {
2799
  else {
2800
  echo
2801
  '<a' .
2802
- ' href="' . wppa_get_photo_url( $photo['id'] ) . '"' .
2803
  ' target="_blank"' .
2804
  ' title="Click to see fullsize"' .
2805
  ' >' .
2806
  '<img' .
2807
  ' class="wppa-bulk-thumb ' . ( wppa_switch( 'lazy' ) ? 'wppa-lazy' : '' ) . '"' .
2808
- ' ' . ( wppa_switch( 'lazy' ) ? 'data-' : '' ) . 'src="' . wppa_get_thumb_url( $photo['id'] ) . '"' .
2809
  ' style="max-width:' . $maxsize . 'max-height:' . $maxsize . 'px;"' .
2810
  // ' onmouseover="jQuery( this ).stop().animate( {height:120}, 100 )"' .
2811
  // ' onmouseout="jQuery( this ).stop().animate( {height:60}, 100 )"' .
3
  * Package: wp-photo-album-plus
4
  *
5
  * edit and delete photos
6
+ * Version 7.1.03
7
  *
8
  */
9
 
2768
  <!-- Preview -->
2769
  <td style="min-width:240px; text-align:center;" >
2770
  <?php if ( wppa_is_video( $photo['id'] ) ) { ?>
2771
+ <a href="<?php echo esc_url( str_replace( 'xxx', 'mp4', wppa_get_photo_url( $photo['id'] ) ) ) ?>" target="_blank" title="Click to see fullsize" >
2772
  <?php // Animating size changes of a video tag is not a good idea. It will rapidly screw up browser cache and cpu ?>
2773
  <?php echo wppa_get_video_html( array(
2774
  'id' => $id,
2799
  else {
2800
  echo
2801
  '<a' .
2802
+ ' href="' . esc_url( wppa_get_photo_url( $photo['id'] ) ) . '"' .
2803
  ' target="_blank"' .
2804
  ' title="Click to see fullsize"' .
2805
  ' >' .
2806
  '<img' .
2807
  ' class="wppa-bulk-thumb ' . ( wppa_switch( 'lazy' ) ? 'wppa-lazy' : '' ) . '"' .
2808
+ ' ' . ( wppa_switch( 'lazy' ) ? 'data-' : '' ) . 'src="' . esc_url( wppa_get_thumb_url( $photo['id'] ) ) . '"' .
2809
  ' style="max-width:' . $maxsize . 'max-height:' . $maxsize . 'px;"' .
2810
  // ' onmouseover="jQuery( this ).stop().animate( {height:120}, 100 )"' .
2811
  // ' onmouseout="jQuery( this ).stop().animate( {height:60}, 100 )"' .
wppa-settings-autosave.php CHANGED
@@ -3,7 +3,7 @@
3
  * Package: wp-photo-album-plus
4
  *
5
  * manage all options
6
- * Version 7.1.02
7
  *
8
  */
9
 
@@ -492,7 +492,11 @@ global $wppa_supported_camara_brands;
492
  </select>
493
  </p>
494
 
495
- <div id="wppa-modal-container" ></div>
 
 
 
 
496
 
497
  <form enctype="multipart/form-data" action="<?php echo(wppa_dbg_url(get_admin_url().'admin.php?page=wppa_options')) ?>" method="post">
498
 
@@ -11491,7 +11495,7 @@ global $wppa_opt;
11491
  $html = '<input'.$title.' style="float:left; width: '.$width.'; height:20px;';
11492
  if ($minwidth != '') $html .= ' min-width:'.$minwidth.';';
11493
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="text" id="'.$slug.'"';
11494
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11495
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11496
  if ( $placeholder ) $html .= ' placeholder="'.$placeholder.'"';
11497
  $html .= ' value="'.$val.'" />';
@@ -11510,7 +11514,7 @@ function wppa_number($xslug, $min, $max, $text = '', $onchange = '') {
11510
  $val = isset ( $wppa_opt[ $xslug ] ) ? esc_attr( $wppa_opt[ $xslug ] ) : get_option( $xslug, '' );
11511
  $html = '<input'.$title.' style="float:left; height:20px; width:50px;';
11512
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="number" id="'.$slug.'"';
11513
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11514
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11515
  $html .= ' value="'.$val.'" min="'.$min.'" max="'.$max.'" />';
11516
  $html .= '<img id="img_'.$slug.'" src="'.wppa_get_imgdir().'star.ico" title="'.__('Setting unmodified', 'wp-photo-album-plus').'" style="padding:0 4px; float:left; height:16px; width:16px;" />';
@@ -11529,7 +11533,7 @@ global $wppa_opt;
11529
  $html = '<input'.$title.' type="color" style="float:left; width: '.$width.'; height:20px;';
11530
  if ($minwidth != '') $html .= ' min-width:'.$minwidth.';';
11531
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="text" id="'.$slug.'"';
11532
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11533
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11534
  if ( $placeholder ) $html .= ' placeholder="'.$placeholder.'"';
11535
  $html .= ' value="'.$val.'" />';
@@ -11615,7 +11619,7 @@ global $wppa_opt;
11615
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11616
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11617
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11618
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11619
  else $html .= ' onchange="wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11620
 
11621
  if ($class != '') $html .= ' class="'.$class.'"';
@@ -11639,7 +11643,7 @@ global $wppa_defaults;
11639
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11640
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11641
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11642
- if ($onchange != '') $html .= ' onchange="alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11643
  else $html .= ' onchange="alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11644
 
11645
  if ($class != '') $html .= ' class="'.$class.'"';
@@ -11660,7 +11664,7 @@ global $wppa_defaults;
11660
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11661
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11662
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11663
- if ($onchange != '') $html .= ' onchange="if (!this.checked) alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11664
  else $html .= ' onchange="if (!this.checked) alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11665
 
11666
  if ($class != '') $html .= ' class="'.$class.'"';
@@ -11680,7 +11684,7 @@ global $wppa_defaults;
11680
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11681
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11682
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11683
- if ($onchange != '') $html .= ' onchange="if (this.checked) alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11684
  else $html .= ' onchange="if (this.checked) alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11685
 
11686
  if ($class != '') $html .= ' class="'.$class.'"';
@@ -11697,7 +11701,7 @@ function wppa_checkbox_e($xslug, $curval, $onchange = '', $class = '', $enabled
11697
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"';
11698
  if ($curval) $html .= ' checked="checked"';
11699
  if ( ! $enabled ) $html .= ' disabled="disabled"';
11700
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$xslug.'\', this)"';
11701
  else $html .= ' onchange="wppaAjaxUpdateOptionCheckBox(\''.$xslug.'\', this)"';
11702
 
11703
  if ($class != '') $html .= ' class="'.$class.'"';
@@ -11724,7 +11728,7 @@ global $wppa_opt;
11724
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11725
 
11726
  $html = '<select style="float:left; font-size: 11px; height: 20px; margin: 0px; padding: 0px; max-width:'.$max_width.'px;" id="'.$slug.'"'.$title;
11727
- $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);'.$postaction.'"';
11728
 
11729
  if ($class != '') $html .= ' class="'.$class.'"';
11730
  $html .= '>';
@@ -11767,7 +11771,7 @@ global $wppa_opt;
11767
  ' id="' . $slug . '"' .
11768
  ' multiple="multiple"' .
11769
  ' size="' . $size . '"' .
11770
- ' onchange="' . $onchange . ';wppaAjaxUpdateOptionValue(\'' . $slug . '\', this, true);' . $postaction . '"' .
11771
  ' class="'.$class.'"' .
11772
  ' >';
11773
 
@@ -11814,7 +11818,7 @@ function wppa_select_e( $xslug, $curval, $options, $values, $onchange = '', $cla
11814
  }
11815
 
11816
  $html = '<select style="float:left; font-size: 11px; height: 20px; margin: 0px; padding: 0px;" id="'.$slug.'"';
11817
- if ($onchange != '') $html .= ' onchange="'.$onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11818
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11819
 
11820
  if ($class != '') $html .= ' class="'.$class.'"';
3
  * Package: wp-photo-album-plus
4
  *
5
  * manage all options
6
+ * Version 7.1.03
7
  *
8
  */
9
 
492
  </select>
493
  </p>
494
 
495
+ <div
496
+ id="wppa-modal-container"
497
+ style="width:100%;padding:0;"
498
+ >
499
+ </div>
500
 
501
  <form enctype="multipart/form-data" action="<?php echo(wppa_dbg_url(get_admin_url().'admin.php?page=wppa_options')) ?>" method="post">
502
 
11495
  $html = '<input'.$title.' style="float:left; width: '.$width.'; height:20px;';
11496
  if ($minwidth != '') $html .= ' min-width:'.$minwidth.';';
11497
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="text" id="'.$slug.'"';
11498
+ if ($onchange != '') $html .= ' onchange="' . esc_attr( $onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);') . '"';
11499
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11500
  if ( $placeholder ) $html .= ' placeholder="'.$placeholder.'"';
11501
  $html .= ' value="'.$val.'" />';
11514
  $val = isset ( $wppa_opt[ $xslug ] ) ? esc_attr( $wppa_opt[ $xslug ] ) : get_option( $xslug, '' );
11515
  $html = '<input'.$title.' style="float:left; height:20px; width:50px;';
11516
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="number" id="'.$slug.'"';
11517
+ if ($onchange != '') $html .= ' onchange="'. esc_attr( $onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);').'"';
11518
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11519
  $html .= ' value="'.$val.'" min="'.$min.'" max="'.$max.'" />';
11520
  $html .= '<img id="img_'.$slug.'" src="'.wppa_get_imgdir().'star.ico" title="'.__('Setting unmodified', 'wp-photo-album-plus').'" style="padding:0 4px; float:left; height:16px; width:16px;" />';
11533
  $html = '<input'.$title.' type="color" style="float:left; width: '.$width.'; height:20px;';
11534
  if ($minwidth != '') $html .= ' min-width:'.$minwidth.';';
11535
  $html .= ' font-size: 11px; margin: 0px; padding: 0px;" type="text" id="'.$slug.'"';
11536
+ if ($onchange != '') $html .= ' onchange="'.esc_attr($onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);').'"';
11537
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11538
  if ( $placeholder ) $html .= ' placeholder="'.$placeholder.'"';
11539
  $html .= ' value="'.$val.'" />';
11619
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11620
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11621
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11622
+ if ($onchange != '') $html .= ' onchange="'.esc_attr($onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this);').'"';
11623
  else $html .= ' onchange="wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11624
 
11625
  if ($class != '') $html .= ' class="'.$class.'"';
11643
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11644
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11645
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11646
+ if ($onchange != '') $html .= ' onchange="'.esc_attr('alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this);').'"';
11647
  else $html .= ' onchange="alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11648
 
11649
  if ($class != '') $html .= ' class="'.$class.'"';
11664
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11665
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11666
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11667
+ if ($onchange != '') $html .= ' onchange="'.esc_attr('if (!this.checked) alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this);').'"';
11668
  else $html .= ' onchange="if (!this.checked) alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11669
 
11670
  if ($class != '') $html .= ' class="'.$class.'"';
11684
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11685
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"'.$title;
11686
  if ( wppa_switch( $slug ) ) $html .= ' checked="checked"';
11687
+ if ($onchange != '') $html .= ' onchange="'.esc_attr('if (this.checked) alert(\''.$warning.'\'); '.$onchange.';wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this);').'"';
11688
  else $html .= ' onchange="if (this.checked) alert(\''.$warning.'\'); wppaAjaxUpdateOptionCheckBox(\''.$slug.'\', this)"';
11689
 
11690
  if ($class != '') $html .= ' class="'.$class.'"';
11701
  $html = '<input style="float:left; height: 15px; margin: 0px; padding: 0px;" type="checkbox" id="'.$slug.'"';
11702
  if ($curval) $html .= ' checked="checked"';
11703
  if ( ! $enabled ) $html .= ' disabled="disabled"';
11704
+ if ($onchange != '') $html .= ' onchange="'.esc_attr( $onchange.';wppaAjaxUpdateOptionCheckBox(\''.$xslug.'\', this);').'"';
11705
  else $html .= ' onchange="wppaAjaxUpdateOptionCheckBox(\''.$xslug.'\', this)"';
11706
 
11707
  if ($class != '') $html .= ' class="'.$class.'"';
11728
  $title = wppa_switch( 'enable_shortcode_wppa_set' ) ? ' title="'.esc_attr( $tit ).'"' : '';
11729
 
11730
  $html = '<select style="float:left; font-size: 11px; height: 20px; margin: 0px; padding: 0px; max-width:'.$max_width.'px;" id="'.$slug.'"'.$title;
11731
+ $html .= ' onchange="'.esc_attr($onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);'.$postaction.';').'"';
11732
 
11733
  if ($class != '') $html .= ' class="'.$class.'"';
11734
  $html .= '>';
11771
  ' id="' . $slug . '"' .
11772
  ' multiple="multiple"' .
11773
  ' size="' . $size . '"' .
11774
+ ' onchange="' . esc_attr($onchange . ';wppaAjaxUpdateOptionValue(\'' . $slug . '\', this, true);' . $postaction . ';').'"' .
11775
  ' class="'.$class.'"' .
11776
  ' >';
11777
 
11818
  }
11819
 
11820
  $html = '<select style="float:left; font-size: 11px; height: 20px; margin: 0px; padding: 0px;" id="'.$slug.'"';
11821
+ if ($onchange != '') $html .= ' onchange="'.esc_attr($onchange.';wppaAjaxUpdateOptionValue(\''.$slug.'\', this);').'"';
11822
  else $html .= ' onchange="wppaAjaxUpdateOptionValue(\''.$slug.'\', this)"';
11823
 
11824
  if ($class != '') $html .= ' class="'.$class.'"';
wppa.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  * Plugin Name: WP Photo Album Plus
4
  * Description: Easily manage and display your photo albums and slideshows within your WordPress site.
5
- * Version: 7.1.02.007
6
  * Author: J.N. Breetvelt a.k.a. OpaJaap
7
  * Author URI: http://wppa.opajaap.nl/
8
  * Plugin URI: http://wordpress.org/extend/plugins/wp-photo-album-plus/
@@ -23,7 +23,7 @@ global $wp_version;
23
 
24
  /* WPPA GLOBALS */
25
  global $wppa_revno; $wppa_revno = '7102'; // WPPA db version
26
- global $wppa_api_version; $wppa_api_version = '7.1.02.007'; // WPPA software version
27
 
28
  /* start timers */
29
  add_action( 'plugins_loaded', 'wppa_init_timer' );
2
  /*
3
  * Plugin Name: WP Photo Album Plus
4
  * Description: Easily manage and display your photo albums and slideshows within your WordPress site.
5
+ * Version: 7.1.03.001
6
  * Author: J.N. Breetvelt a.k.a. OpaJaap
7
  * Author URI: http://wppa.opajaap.nl/
8
  * Plugin URI: http://wordpress.org/extend/plugins/wp-photo-album-plus/
23
 
24
  /* WPPA GLOBALS */
25
  global $wppa_revno; $wppa_revno = '7102'; // WPPA db version
26
+ global $wppa_api_version; $wppa_api_version = '7.1.03.001'; // WPPA software version
27
 
28
  /* start timers */
29
  add_action( 'plugins_loaded', 'wppa_init_timer' );