Changeset 3369496
- Timestamp:
- 09/29/2025 07:53:56 AM (6 months ago)
- Location:
- guestapp
- Files:
-
- 18 edited
- 1 copied
-
tags/2.2.5 (copied) (copied from guestapp/trunk)
-
tags/2.2.5/README.txt (modified) (2 diffs)
-
tags/2.2.5/config_v4.php (modified) (1 diff)
-
tags/2.2.5/guest-suite.php (modified) (1 diff)
-
tags/2.2.5/includes/admin/charts/charts-functions.php (modified) (4 diffs)
-
tags/2.2.5/includes/admin/functions.php (modified) (2 diffs)
-
tags/2.2.5/includes/admin/tabs/generator/generator-badge.php (modified) (1 diff)
-
tags/2.2.5/includes/admin/tabs/generator/generator-carousel.php (modified) (1 diff)
-
tags/2.2.5/includes/admin/tabs/generator/generator-grid.php (modified) (1 diff)
-
tags/2.2.5/includes/admin/tabs/generator/generator-list.php (modified) (1 diff)
-
trunk/README.txt (modified) (2 diffs)
-
trunk/config_v4.php (modified) (1 diff)
-
trunk/guest-suite.php (modified) (1 diff)
-
trunk/includes/admin/charts/charts-functions.php (modified) (4 diffs)
-
trunk/includes/admin/functions.php (modified) (2 diffs)
-
trunk/includes/admin/tabs/generator/generator-badge.php (modified) (1 diff)
-
trunk/includes/admin/tabs/generator/generator-carousel.php (modified) (1 diff)
-
trunk/includes/admin/tabs/generator/generator-grid.php (modified) (1 diff)
-
trunk/includes/admin/tabs/generator/generator-list.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
guestapp/tags/2.2.5/README.txt
r3364049 r3369496 4 4 Tested up to: 6.8.0 5 5 Requires PHP: 5.6 6 Stable tag: 2.2. 46 Stable tag: 2.2.5 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 60 60 61 61 == Changelog == 62 = 2.2.5 = 63 * Corrige la liste des établissements disponibles (admin) 62 64 = 2.2.4 = 63 65 * Retire la notion de version de l'API (admin) -
guestapp/tags/2.2.5/config_v4.php
r3198976 r3369496 3 3 'api_url' => getenv('GS_WIRE_API') ? getenv('GS_WIRE_API') : 'https://widget.guest-suite.com/api/v1/', 4 4 'api_endpoint_reviews' => 'reviews.json', 5 'api_endpoint_locations' => 'locations.json', 5 6 'gs_url_backoffice' => getenv('GS_APP_URL') ? getenv('GS_APP_URL') : 'https://my.guest-suite.com/login', 6 7 'report_url' => getenv('GS_REPORT_URL') ? getenv('GS_REPORT_URL') : 'https://widget.guest-suite.com/reviews/', -
guestapp/tags/2.2.5/guest-suite.php
r3364049 r3369496 4 4 * Plugin URI: https://www.guest-suite.com/ 5 5 * Description: Afficher la satisfaction de vos clients sur votre site avec le plugin Guest Suite pour Wordpress. 6 * Version: 2.2. 46 * Version: 2.2.5 7 7 * Requires at least: 4.6.1 8 8 * Requires PHP: 5.6 -
guestapp/tags/2.2.5/includes/admin/charts/charts-functions.php
r3364049 r3369496 119 119 * Retrieves all available establishments. 120 120 * 121 * This function attempts to fetch establishments from the GuestSuite API first. If the API call fails, 122 * it falls back to querying establishments from local WordPress posts. The results are cached for 1 hour 123 * to reduce API calls. 124 * 125 * @return array An associative array of establishments with establishment IDs as keys and names as values. 126 * The array is sorted alphabetically by establishment name. 127 * 128 * The function performs the following steps: 129 * 1. Checks cache for existing establishment data 130 * 2. If not cached, calls GuestSuite API to fetch establishments 131 * 3. If API call fails, falls back to querying local WordPress posts 132 * 4. Normalizes data into array of establishment IDs and names 133 * 5. Sorts establishments alphabetically by name 134 * 6. Caches results for 1 hour 135 */ 136 function guestsuite_get_establishments() 137 { 138 // Cache results for 1 hour to reduce API calls 139 $cache_key = 'gs_establishments_cache_v1'; 140 $cached = get_transient($cache_key); 141 if ($cached !== false) { 142 return $cached; 143 } 144 145 // Call the API endpoint defined in config_v4.php as api_endpoint_locations 146 $response = call_gs_wire_api('locations'); 147 148 // If HTTP error or WP error, fall back to CPT-derived establishments 149 if (is_wp_error($response)) { 150 return guestsuite_get_establishments_from_posts(); 151 } 152 153 $status_code = wp_remote_retrieve_response_code($response); 154 if ($status_code !== 200) { 155 return guestsuite_get_establishments_from_posts(); 156 } 157 158 $body = wp_remote_retrieve_body($response); 159 $data = json_decode($body, true); 160 161 if (!is_array($data)) { 162 return guestsuite_get_establishments_from_posts(); 163 } 164 165 // Normalize into an array of [ 'id' => string|int, 'name' => string ] 166 $establishments = []; 167 168 // Adjust these keys to match the real API response 169 // Examples of common shapes: 170 // - [ { "id": 123, "name": "Hotel ABC" }, ... ] 171 // - [ { "uuid": "...", "label": "Hotel ABC" }, ... ] 172 foreach ($data as $record) { 173 $id = isset($record['establishment_id']) ? $record['establishment_id'] : (isset($record['locationUuid']) ? $record['locationUuid'] : null); 174 $name = isset($record['establishment_name']) ? $record['establishment_name'] : null; 175 176 if ($id === null || empty($name)) { 177 continue; 178 } 179 180 // Ensure uniqueness by ID 181 $establishments[(string)$id] = (string)$name; 182 } 183 184 // Sort alphabetically by name 185 uasort($establishments, function ($a, $b) { 186 return strcasecmp($a, $b); 187 }); 188 189 // Convert to a simple array for consumers. If your UI expects only names, you can map to names here. 190 // Returning as key=>value pairs is often more useful, so keep the ID if you plan to filter by it. 191 set_transient($cache_key, $establishments, HOUR_IN_SECONDS); 192 return $establishments; 193 } 194 195 /** 196 * Retrieves all available establishments. 197 * 121 198 * This function queries the database for all posts of the custom post type defined by GUESTSUITE_CPT_NAME. 122 199 * It collects the names of the establishments from the post meta and returns a list of unique establishment names. 123 200 * 124 * @return array An a rray of unique establishment names.201 * @return array An associative array of unique establishment names. 125 202 * 126 203 * The function performs the following steps: … … 131 208 * 5. Resets the post data after the loop. 132 209 */ 133 function guestsuite_get_establishments ()210 function guestsuite_get_establishments_from_posts() 134 211 { 135 212 $args = array( 136 'post_type' => GUESTSUITE_CPT_NAME,137 'posts_per_page' => -1,138 'fields' => 'ids'213 'post_type' => GUESTSUITE_CPT_NAME, 214 'posts_per_page' => -1, 215 'fields' => 'ids' 139 216 ); 140 217 $query = new WP_Query($args); 141 218 $establishments = []; 142 219 if ($query->have_posts()) { 220 $count = 0; 143 221 while ($query->have_posts()) { 144 222 $query->the_post(); 223 $establishment_id = get_post_meta(get_the_ID(), 'gs_establishments_id', true) ?: get_post_meta(get_the_ID(), 'gs_locationUuid', true); 145 224 $establishment_name = get_post_meta(get_the_ID(), 'gs_establishments_name', true); 146 225 if (!empty($establishment_name) && !in_array($establishment_name, $establishments)) { 147 $establishments[] = $establishment_name; 226 $count++; 227 $establishments[$establishment_id] = $establishment_name; 148 228 } 149 229 } 150 asort($establishments); 230 231 uasort($establishments, function ($a, $b) { 232 return strcasecmp($a, $b); 233 }); 151 234 wp_reset_postdata(); 152 235 } … … 291 374 if ($establishment_id) { 292 375 $args['meta_query'][] = array( 293 'key' => 'gs_establishments_id', 294 'value' => $establishment_id, 295 'compare' => '=' 376 'relation' => 'OR', 377 'establishment_id' => array( 378 'key' => 'gs_establishments_id', 379 'value' => $establishment_id, 380 'compare' => '=' 381 ), 382 'locationUuid' => array( 383 'key' => 'gs_locationUuid', 384 'value' => $establishment_id, 385 'compare' => '=' 386 ), 296 387 ); 297 388 } … … 313 404 } 314 405 return $reviews; 315 }316 317 /**318 * Retrieves unique establishments without duplicate entries.319 * establishment_ID => establishment_Name320 *321 * This function queries the database for all posts of the custom post type defined by GUESTSUITE_CPT_NAME.322 * It collects the establishment IDs and names from the post meta and returns an associative array of unique establishments.323 *324 * @return array An associative array of unique establishments with establishment_ID as the key and establishment_Name as the value.325 *326 * The function performs the following steps:327 * 1. Sets up the query arguments to fetch all posts of the custom post type.328 * 2. Executes the query using WP_Query.329 * 3. Iterates through the posts and collects the establishment IDs and names from the post meta.330 * 4. Ensures that only unique establishments are added to the result array.331 * 5. Resets the post data after the loop.332 */333 function guestsuite_get_unique_establishments()334 {335 $establishments = array();336 $args = array(337 'post_type' => GUESTSUITE_CPT_NAME,338 'posts_per_page' => -1,339 'post_status' => 'publish',340 'meta_key' => 'gs_establishments_id',341 'fields' => 'ids',342 );343 $query = new WP_Query($args);344 if ($query->have_posts()) {345 while ($query->have_posts()) {346 $query->the_post();347 $establishment_id = get_post_meta(get_the_ID(), 'gs_establishments_id', true);348 $establishment_name = get_post_meta(get_the_ID(), 'gs_establishments_name', true);349 if (!array_key_exists($establishment_id, $establishments)) {350 $establishments[$establishment_id] = $establishment_name;351 }352 }353 }354 asort($establishments);355 wp_reset_postdata();356 return $establishments;357 406 } 358 407 -
guestapp/tags/2.2.5/includes/admin/functions.php
r3364049 r3369496 371 371 'gs_publication_date' => $review['publication_date'], 372 372 'gs_global_rate' => $review['global_rate'], 373 'gs_locationUuid' => $review['locationUuid'], 373 374 'gs_establishments_id' => $review['establishment_id'], 374 375 'gs_establishments_name' => $review['establishment_name'], … … 746 747 } 747 748 add_action('admin_head', 'guestsuite_edit_cpt_override_columns'); 749 750 751 function call_gs_wire_api($endpoint) { 752 753 $config = guestsuite_get_config(); 754 $gs_URL_parameters = http_build_query(array_merge( 755 array( 756 'access_token' => get_option('guestsuite_api_key') 757 ), 758 $config['api_endpoint_default_params'] 759 )); 760 $gs_URL = $config['api_url'] . $config['api_endpoint_' . $endpoint] . "?" . $gs_URL_parameters; 761 $wp_version = get_bloginfo('version'); 762 $sslverify = true; 763 // If the WordPress version is less than 5.0, disable SSL verification 764 if (version_compare($wp_version, '5.0', '<')) { 765 $sslverify = false; 766 } 767 guestsuite_gslog('WP', $wp_version); 768 guestsuite_gslog('SSL verify', $sslverify); 769 $response = wp_remote_get($gs_URL, array('sslverify' => $sslverify, 'timeout' => 30)); 770 $status_code = wp_remote_retrieve_response_code($response); 771 guestsuite_gslog('HTTP response code', $status_code); 772 773 return $response; 774 } -
guestapp/tags/2.2.5/includes/admin/tabs/generator/generator-badge.php
r3202888 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/tags/2.2.5/includes/admin/tabs/generator/generator-carousel.php
r3235290 r3369496 11 11 <option value="all" selected><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/tags/2.2.5/includes/admin/tabs/generator/generator-grid.php
r3235290 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/tags/2.2.5/includes/admin/tabs/generator/generator-list.php
r3235290 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/trunk/README.txt
r3364049 r3369496 4 4 Tested up to: 6.8.0 5 5 Requires PHP: 5.6 6 Stable tag: 2.2. 46 Stable tag: 2.2.5 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 60 60 61 61 == Changelog == 62 = 2.2.5 = 63 * Corrige la liste des établissements disponibles (admin) 62 64 = 2.2.4 = 63 65 * Retire la notion de version de l'API (admin) -
guestapp/trunk/config_v4.php
r3198976 r3369496 3 3 'api_url' => getenv('GS_WIRE_API') ? getenv('GS_WIRE_API') : 'https://widget.guest-suite.com/api/v1/', 4 4 'api_endpoint_reviews' => 'reviews.json', 5 'api_endpoint_locations' => 'locations.json', 5 6 'gs_url_backoffice' => getenv('GS_APP_URL') ? getenv('GS_APP_URL') : 'https://my.guest-suite.com/login', 6 7 'report_url' => getenv('GS_REPORT_URL') ? getenv('GS_REPORT_URL') : 'https://widget.guest-suite.com/reviews/', -
guestapp/trunk/guest-suite.php
r3364049 r3369496 4 4 * Plugin URI: https://www.guest-suite.com/ 5 5 * Description: Afficher la satisfaction de vos clients sur votre site avec le plugin Guest Suite pour Wordpress. 6 * Version: 2.2. 46 * Version: 2.2.5 7 7 * Requires at least: 4.6.1 8 8 * Requires PHP: 5.6 -
guestapp/trunk/includes/admin/charts/charts-functions.php
r3364049 r3369496 119 119 * Retrieves all available establishments. 120 120 * 121 * This function attempts to fetch establishments from the GuestSuite API first. If the API call fails, 122 * it falls back to querying establishments from local WordPress posts. The results are cached for 1 hour 123 * to reduce API calls. 124 * 125 * @return array An associative array of establishments with establishment IDs as keys and names as values. 126 * The array is sorted alphabetically by establishment name. 127 * 128 * The function performs the following steps: 129 * 1. Checks cache for existing establishment data 130 * 2. If not cached, calls GuestSuite API to fetch establishments 131 * 3. If API call fails, falls back to querying local WordPress posts 132 * 4. Normalizes data into array of establishment IDs and names 133 * 5. Sorts establishments alphabetically by name 134 * 6. Caches results for 1 hour 135 */ 136 function guestsuite_get_establishments() 137 { 138 // Cache results for 1 hour to reduce API calls 139 $cache_key = 'gs_establishments_cache_v1'; 140 $cached = get_transient($cache_key); 141 if ($cached !== false) { 142 return $cached; 143 } 144 145 // Call the API endpoint defined in config_v4.php as api_endpoint_locations 146 $response = call_gs_wire_api('locations'); 147 148 // If HTTP error or WP error, fall back to CPT-derived establishments 149 if (is_wp_error($response)) { 150 return guestsuite_get_establishments_from_posts(); 151 } 152 153 $status_code = wp_remote_retrieve_response_code($response); 154 if ($status_code !== 200) { 155 return guestsuite_get_establishments_from_posts(); 156 } 157 158 $body = wp_remote_retrieve_body($response); 159 $data = json_decode($body, true); 160 161 if (!is_array($data)) { 162 return guestsuite_get_establishments_from_posts(); 163 } 164 165 // Normalize into an array of [ 'id' => string|int, 'name' => string ] 166 $establishments = []; 167 168 // Adjust these keys to match the real API response 169 // Examples of common shapes: 170 // - [ { "id": 123, "name": "Hotel ABC" }, ... ] 171 // - [ { "uuid": "...", "label": "Hotel ABC" }, ... ] 172 foreach ($data as $record) { 173 $id = isset($record['establishment_id']) ? $record['establishment_id'] : (isset($record['locationUuid']) ? $record['locationUuid'] : null); 174 $name = isset($record['establishment_name']) ? $record['establishment_name'] : null; 175 176 if ($id === null || empty($name)) { 177 continue; 178 } 179 180 // Ensure uniqueness by ID 181 $establishments[(string)$id] = (string)$name; 182 } 183 184 // Sort alphabetically by name 185 uasort($establishments, function ($a, $b) { 186 return strcasecmp($a, $b); 187 }); 188 189 // Convert to a simple array for consumers. If your UI expects only names, you can map to names here. 190 // Returning as key=>value pairs is often more useful, so keep the ID if you plan to filter by it. 191 set_transient($cache_key, $establishments, HOUR_IN_SECONDS); 192 return $establishments; 193 } 194 195 /** 196 * Retrieves all available establishments. 197 * 121 198 * This function queries the database for all posts of the custom post type defined by GUESTSUITE_CPT_NAME. 122 199 * It collects the names of the establishments from the post meta and returns a list of unique establishment names. 123 200 * 124 * @return array An a rray of unique establishment names.201 * @return array An associative array of unique establishment names. 125 202 * 126 203 * The function performs the following steps: … … 131 208 * 5. Resets the post data after the loop. 132 209 */ 133 function guestsuite_get_establishments ()210 function guestsuite_get_establishments_from_posts() 134 211 { 135 212 $args = array( 136 'post_type' => GUESTSUITE_CPT_NAME,137 'posts_per_page' => -1,138 'fields' => 'ids'213 'post_type' => GUESTSUITE_CPT_NAME, 214 'posts_per_page' => -1, 215 'fields' => 'ids' 139 216 ); 140 217 $query = new WP_Query($args); 141 218 $establishments = []; 142 219 if ($query->have_posts()) { 220 $count = 0; 143 221 while ($query->have_posts()) { 144 222 $query->the_post(); 223 $establishment_id = get_post_meta(get_the_ID(), 'gs_establishments_id', true) ?: get_post_meta(get_the_ID(), 'gs_locationUuid', true); 145 224 $establishment_name = get_post_meta(get_the_ID(), 'gs_establishments_name', true); 146 225 if (!empty($establishment_name) && !in_array($establishment_name, $establishments)) { 147 $establishments[] = $establishment_name; 226 $count++; 227 $establishments[$establishment_id] = $establishment_name; 148 228 } 149 229 } 150 asort($establishments); 230 231 uasort($establishments, function ($a, $b) { 232 return strcasecmp($a, $b); 233 }); 151 234 wp_reset_postdata(); 152 235 } … … 291 374 if ($establishment_id) { 292 375 $args['meta_query'][] = array( 293 'key' => 'gs_establishments_id', 294 'value' => $establishment_id, 295 'compare' => '=' 376 'relation' => 'OR', 377 'establishment_id' => array( 378 'key' => 'gs_establishments_id', 379 'value' => $establishment_id, 380 'compare' => '=' 381 ), 382 'locationUuid' => array( 383 'key' => 'gs_locationUuid', 384 'value' => $establishment_id, 385 'compare' => '=' 386 ), 296 387 ); 297 388 } … … 313 404 } 314 405 return $reviews; 315 }316 317 /**318 * Retrieves unique establishments without duplicate entries.319 * establishment_ID => establishment_Name320 *321 * This function queries the database for all posts of the custom post type defined by GUESTSUITE_CPT_NAME.322 * It collects the establishment IDs and names from the post meta and returns an associative array of unique establishments.323 *324 * @return array An associative array of unique establishments with establishment_ID as the key and establishment_Name as the value.325 *326 * The function performs the following steps:327 * 1. Sets up the query arguments to fetch all posts of the custom post type.328 * 2. Executes the query using WP_Query.329 * 3. Iterates through the posts and collects the establishment IDs and names from the post meta.330 * 4. Ensures that only unique establishments are added to the result array.331 * 5. Resets the post data after the loop.332 */333 function guestsuite_get_unique_establishments()334 {335 $establishments = array();336 $args = array(337 'post_type' => GUESTSUITE_CPT_NAME,338 'posts_per_page' => -1,339 'post_status' => 'publish',340 'meta_key' => 'gs_establishments_id',341 'fields' => 'ids',342 );343 $query = new WP_Query($args);344 if ($query->have_posts()) {345 while ($query->have_posts()) {346 $query->the_post();347 $establishment_id = get_post_meta(get_the_ID(), 'gs_establishments_id', true);348 $establishment_name = get_post_meta(get_the_ID(), 'gs_establishments_name', true);349 if (!array_key_exists($establishment_id, $establishments)) {350 $establishments[$establishment_id] = $establishment_name;351 }352 }353 }354 asort($establishments);355 wp_reset_postdata();356 return $establishments;357 406 } 358 407 -
guestapp/trunk/includes/admin/functions.php
r3364049 r3369496 371 371 'gs_publication_date' => $review['publication_date'], 372 372 'gs_global_rate' => $review['global_rate'], 373 'gs_locationUuid' => $review['locationUuid'], 373 374 'gs_establishments_id' => $review['establishment_id'], 374 375 'gs_establishments_name' => $review['establishment_name'], … … 746 747 } 747 748 add_action('admin_head', 'guestsuite_edit_cpt_override_columns'); 749 750 751 function call_gs_wire_api($endpoint) { 752 753 $config = guestsuite_get_config(); 754 $gs_URL_parameters = http_build_query(array_merge( 755 array( 756 'access_token' => get_option('guestsuite_api_key') 757 ), 758 $config['api_endpoint_default_params'] 759 )); 760 $gs_URL = $config['api_url'] . $config['api_endpoint_' . $endpoint] . "?" . $gs_URL_parameters; 761 $wp_version = get_bloginfo('version'); 762 $sslverify = true; 763 // If the WordPress version is less than 5.0, disable SSL verification 764 if (version_compare($wp_version, '5.0', '<')) { 765 $sslverify = false; 766 } 767 guestsuite_gslog('WP', $wp_version); 768 guestsuite_gslog('SSL verify', $sslverify); 769 $response = wp_remote_get($gs_URL, array('sslverify' => $sslverify, 'timeout' => 30)); 770 $status_code = wp_remote_retrieve_response_code($response); 771 guestsuite_gslog('HTTP response code', $status_code); 772 773 return $response; 774 } -
guestapp/trunk/includes/admin/tabs/generator/generator-badge.php
r3202888 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/trunk/includes/admin/tabs/generator/generator-carousel.php
r3235290 r3369496 11 11 <option value="all" selected><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/trunk/includes/admin/tabs/generator/generator-grid.php
r3235290 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) { -
guestapp/trunk/includes/admin/tabs/generator/generator-list.php
r3235290 r3369496 11 11 <option value="all"><?php esc_html_e('Tous mes établissements', 'guestapp') ?></option> 12 12 <?php 13 $establishments = guestsuite_get_ unique_establishments();13 $establishments = guestsuite_get_establishments(); 14 14 $is_first = true; 15 15 foreach ($establishments as $establishment_id => $establishment_name) {
Note: See TracChangeset
for help on using the changeset viewer.