Changeset 2966265
- Timestamp:
- 09/13/2023 08:12:42 AM (3 years ago)
- Location:
- verowa-connect/trunk
- Files:
-
- 11 edited
-
events/event-list-widget.php (modified) (1 diff)
-
events/shortcode/verowa-event-list.php (modified) (1 diff)
-
functions/layer.php (modified) (1 diff)
-
functions/person.php (modified) (1 diff)
-
functions/verowa-template.php (modified) (7 diffs)
-
general/class-verowa-update-controller.php (modified) (2 diffs)
-
general/custom-post-action-filters.php (modified) (11 diffs)
-
persons/assign-persons.php (modified) (2 diffs)
-
persons/show-persons-widget.php (modified) (1 diff)
-
readme.txt (modified) (1 diff)
-
verowa-connect.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
verowa-connect/trunk/events/event-list-widget.php
r2958219 r2966265 66 66 } 67 67 68 $arr_eventlist_template = verowa_get_templates( array( '`display_where` = "widget"' ) ); 68 $arr_restriction = array( 69 '`template_id` = "' . $int_eventlist_template_id . '"', 70 '`display_where` = "widget"' 71 ); 72 73 $arr_eventlist_template = verowa_get_templates( $arr_restriction ); 74 69 75 70 76 // TODO: Prüfung zur Anzeige der List im Widget auf ML erweitern. -
verowa-connect/trunk/events/shortcode/verowa-event-list.php
r2962331 r2966265 112 112 } 113 113 114 if ($obj_template->display_entire_day == true) 115 { 116 $str_date_from_format = 'Y-m-d 00:00:00'; 117 } 118 else 119 { 120 $str_date_from_format = 'Y-m-d H:i:s'; 121 } 114 $str_date_from_format = true == $obj_template->display_entire_day ? 'Y-m-d 00:00:00' : 'Y-m-d H:i:s'; 122 115 123 116 $arr_events = verowa_events_db_get_multiple( -
verowa-connect/trunk/functions/layer.php
r2958219 r2966265 169 169 if ( is_array( $elements ) ) { 170 170 foreach ( $elements as &$element ) { 171 if ( $element['parent_id'] == =$parent_id ) {171 if ( $element['parent_id'] == $parent_id ) { 172 172 // The node level is used for the correct display in the dropdown. 173 173 $children = verowa_get_hierarchical_layers_tree( $elements, $element['layer_id'], $sub_node_level ); -
verowa-connect/trunk/functions/person.php
r2963622 r2966265 326 326 } else { 327 327 $arr_post = array( 328 'ID' => intval( $ int_post_id ),328 'ID' => intval( $current_post_id ), 329 329 'post_title' => wp_strip_all_tags( $str_title ), 330 330 'post_content' => $arr_person_ml_html['de'], -
verowa-connect/trunk/functions/verowa-template.php
r2963622 r2966265 56 56 $mixed_return = null; 57 57 if ( false === verowa_wpml_is_configured() ) { 58 $mixed_return = verowa_get_single_template_single_lang( $int_template_id, $str_display_where = '');58 $mixed_return = verowa_get_single_template_single_lang( $int_template_id, $str_display_where ); 59 59 if ( 'all' === $str_language_code ) { 60 60 $mixed_return = array( 'de' => $mixed_return ); 61 61 } 62 62 } else { 63 $mixed_return = verowa_get_single_template_wpml( $int_template_id, $str_language_code = 'all', $str_display_where = '');63 $mixed_return = verowa_get_single_template_wpml( $int_template_id, $str_language_code, $str_display_where ); 64 64 } 65 65 return $mixed_return; … … 75 75 * @param string $str_display_where widget or content. 76 76 * 77 * @return VEROWA_TEMPLATE []|VEROWA_TEMPLATE77 * @return VEROWA_TEMPLATE 78 78 */ 79 79 function verowa_get_single_template_single_lang( $int_template_id, $str_display_where = '' ) { … … 81 81 82 82 $mixed_return = null; 83 $arr_templates = array();84 83 $int_template_id = intval( $int_template_id ); 85 84 86 85 if ( intval( $int_template_id ) > 0 ) { 87 $str_cache_key = 'verowa_single_template_' . $int_template_id;86 $str_cache_key = 'verowa_single_template_2130' . $int_template_id; 88 87 $arr_template_data = wp_cache_get( $str_cache_key ); 89 88 … … 92 91 93 92 $query = 'SELECT * FROM `' . $wpdb->prefix . 'verowa_templates`'; 93 94 // Add no further restriction, this query fills the cache 94 95 $arr_restriction = array(); 95 96 $arr_restriction[] = '`template_id` = "' . $int_template_id . '"'; … … 102 103 103 104 if ( '' === $wpdb->last_error ) { 104 $arr_template_data;105 105 wp_cache_set( $str_cache_key, $arr_template_data ); 106 106 } 107 107 } 108 108 109 // Assemble the template collection. 110 foreach ( $arr_template_data as $obj_single_template ) { 111 $arr_templates = new VEROWA_TEMPLATE( $obj_single_template ); 109 $obj_templates = new VEROWA_TEMPLATE( $arr_template_data[0] ?? [] ); 110 111 if ( '' !== $str_display_where ) { 112 $obj_templates = $obj_templates->display_where === $str_display_where ? $obj_templates : null; 113 } else { 114 $obj_templates; 112 115 } 113 $mixed_return = $arr_templates;114 116 } 115 return $ mixed_return;117 return $obj_templates; 116 118 } 117 119 … … 280 282 trim( $arr_key_parts[1] === $arr_placeholders[ $arr_key_parts[0] ] ) 281 283 ) { 282 $condition_is_true = true; } 284 $condition_is_true = true; 285 } 283 286 } elseif ( strpos( $str_key, '%' ) > 0 ) { 284 287 // else we look if we find a "%" (e.g. "LAYER_IDS % ;6;"); … … 411 414 412 415 // TODO: Update for WPML. 413 wp_cache_delete( 'verowa_ template_' . $obj_template->template_id . '_' . ( $obj_template->display_where ?? '' ));416 wp_cache_delete( 'verowa_single_template_2130' . $obj_template->template_id ); 414 417 verowa_save_log( 'update_template', wp_json_encode( $arr_old_template ) ); 415 418 -
verowa-connect/trunk/general/class-verowa-update-controller.php
r2958219 r2966265 90 90 // Update LayerIds. 91 91 $hierarchical_array_for_dropdown = verowa_get_hierarchical_layers_tree(); 92 update_option( 93 'verowa_hierarchical_layers_tree', 94 wp_json_encode( $hierarchical_array_for_dropdown ), 95 false 96 ); 92 if ( is_array( $hierarchical_array_for_dropdown ) && count( $hierarchical_array_for_dropdown ) > 0) { 93 update_option( 94 'verowa_hierarchical_layers_tree', 95 wp_json_encode( $hierarchical_array_for_dropdown ), 96 false 97 ); 98 } 97 99 98 100 // Array to assign ranges to events. … … 604 606 } else { 605 607 // prevent delete post. 608 verowa_person_add_wp_post( $arr_all_person_data['person_id'], $arr_all_person_data ); 606 609 $wpdb->update( 607 610 $wpdb->prefix . 'verowa_person', -
verowa-connect/trunk/general/custom-post-action-filters.php
r2961542 r2966265 35 35 * @return mixed The modified post title. 36 36 */ 37 function verowa_post_title( $str_title, $id = NULL ) {37 function verowa_post_title( $str_title, $id = NULL ) { 38 38 global $wp; 39 if ( null !== $id ) {39 if ( null !== $id ) { 40 40 $obj_post = get_post( $id ); 41 41 … … 101 101 102 102 if ( $query->is_search ) { 103 $str_query = 'SELECT `post_id` FROM `' . $wpdb->prefix . 'verowa_events` ' .103 $str_query = 'SELECT `post_id` FROM `' . $wpdb->prefix . 'verowa_events` ' . 104 104 'WHERE `datetime_to` <= "' . wp_date( 'Y-m-d H:i:s' ) . '";'; 105 105 $arr_post_ids = array_column( $wpdb->get_results( $str_query, ARRAY_A ), 'post_id' ); … … 127 127 } 128 128 129 $plugin_list = get_option( 'active_plugins' );129 $plugin_list = get_option( 'active_plugins' ); 130 130 $str_plugin_id = 'flexy-breadcrumb/flexy-breadcrumb.php'; 131 131 … … 150 150 if ( null !== $post && 'verowa_event' === $post->post_type ) { 151 151 $arr_current_event = verowa_event_db_get_content( $post->post_name ); 152 $str_replacement = '';152 $str_replacement = ''; 153 153 if ( null !== $arr_current_event ) { 154 154 $str_replacement = '<span itemprop="name" title="">' . $arr_current_event['title'] . '</span>'; … … 198 198 global $post; 199 199 200 $show_noindex_tag = false;200 $show_noindex_tag = false; 201 201 $show_unavailable_after_tag = false; 202 $str_datetime_end = '';202 $str_datetime_end = ''; 203 203 204 204 if ( null !== $post && 'verowa_event' === $post->post_type ) { … … 206 206 207 207 $int_event_id = intval( $post->post_name ); 208 $arr_events = verowa_events_db_get_multiple( strval( $int_event_id ) );208 $arr_events = verowa_events_db_get_multiple( strval( $int_event_id ) ); 209 209 210 210 if ( is_array( $arr_events ) && count( $arr_events ) > 0 ) { … … 212 212 $int_datetime_to = strtotime( $arr_events[0]['datetime_to'] ); 213 213 // The date is formatted according to ISO 8601. Do not change! 214 $str_datetime_end = date( 'Y-m-d\\TH:i:sO', $int_datetime_to );214 $str_datetime_end = date( 'Y-m-d\\TH:i:sO', $int_datetime_to ); 215 215 $show_unavailable_after_tag = true; 216 } catch ( Exception $exception) {216 } catch (Exception $exception) { 217 217 // In case of an error, the tag is not displayed. 218 218 $show_unavailable_after_tag = false; 219 $str_datetime_end = '';219 $str_datetime_end = ''; 220 220 } 221 221 } … … 254 254 // z.B. {even_id}-{language_code}. 255 255 $arr_verowa_event = explode( '-', $query->query_vars['verowa_event'] ?? '' ); 256 $int_event_id = intval( $arr_verowa_event[0] ?? 0 );256 $int_event_id = intval( $arr_verowa_event[0] ?? 0 ); 257 257 if ( $int_event_id > 0 ) { 258 $str_query = 'SELECT * FROM `' . $wpdb->prefix . 'verowa_events` ' .258 $str_query = 'SELECT * FROM `' . $wpdb->prefix . 'verowa_events` ' . 259 259 'WHERE `event_id` = ' . $int_event_id; 260 $arr_ret = $wpdb->get_results( $str_query, ARRAY_A )[0] ?? array();261 $int_post_id = $arr_ret['post_id'] ?? 0;260 $arr_ret = $wpdb->get_results( $str_query, ARRAY_A )[0] ?? array(); 261 $int_post_id = $arr_ret['post_id'] ?? 0; 262 262 $is_deprecated = filter_var( $arr_ret['deprecated_content'] ?? false, FILTER_VALIDATE_BOOLEAN ); 263 263 … … 269 269 270 270 $int_eventdetail_template_id = get_option( 'verowa_default_eventdetails_template', 0 ); 271 $arr_templates = verowa_get_single_template( $int_eventdetail_template_id );272 $arr_ret_new_content = verowa_event_get_single_content( 0, $arr_templates, $arr_event );271 $arr_templates = verowa_get_single_template( $int_eventdetail_template_id ); 272 $arr_ret_new_content = verowa_event_get_single_content( 0, $arr_templates, $arr_event ); 273 273 274 274 foreach ( $arr_ret_new_content as $str_lang_code => $arr_new_content ) { 275 275 $arr_post = array( 276 'ID' => intval( $arr_translations[ $str_lang_code ]->element_id ?? 0 ),277 'post_title' => wp_strip_all_tags( $arr_translations[ $str_lang_code ]->post_title ?? '' ),276 'ID' => intval( $arr_translations[ $str_lang_code ]->element_id ?? 0 ), 277 'post_title' => wp_strip_all_tags( $arr_translations[ $str_lang_code ]->post_title ?? '' ), 278 278 'post_content' => $arr_new_content['html'], 279 279 ); … … 300 300 $int_person_id = intval( $query->query_vars['verowa_person'] ?? 0 ); 301 301 if ( $int_person_id > 0 ) { 302 $str_query = 'SELECT * FROM `' . $wpdb->prefix . 'verowa_person` ' .302 $str_query = 'SELECT * FROM `' . $wpdb->prefix . 'verowa_person` ' . 303 303 'WHERE `person_id` = ' . $int_person_id; 304 $arr_ret = $wpdb->get_results( $str_query, ARRAY_A )[0] ?? array();305 $int_post_id = $arr_ret['post_id'] ?? 0;304 $arr_ret = $wpdb->get_results( $str_query, ARRAY_A )[0] ?? array(); 305 $int_post_id = $arr_ret['post_id'] ?? 0; 306 306 $is_deprecated = filter_var( $arr_ret['deprecated_content'] ?? false, FILTER_VALIDATE_BOOLEAN ); 307 307 if ( true === $is_deprecated && $int_post_id > 0 ) { 308 $arr_person = json_decode( $arr_ret['content'], true );309 $ str_new_content = show_a_person_from_verowa_detail( $arr_person );308 $arr_person = json_decode( $arr_ret['content'], true ); 309 $arr_new_content = show_a_person_from_verowa_detail( $arr_person ); 310 310 311 311 $arr_title = array(); 312 312 if ( '' != ( $arr_person['firstname'] ?? '' ) ) { 313 $arr_title [] = $arr_person['firstname'];313 $arr_title[] = $arr_person['firstname']; 314 314 } 315 315 316 316 // If there is the first name AND the surname, separate with a space. 317 317 if ( '' != ( $arr_person['lastname'] ?? '' ) ) { 318 $arr_title [] = $arr_person['lastname'];318 $arr_title[] = $arr_person['lastname']; 319 319 } 320 320 … … 322 322 323 323 $arr_post = array( 324 'ID' => intval( $int_post_id ?? 0 ),325 'post_title' => $str_title,326 'post_content' => $ str_new_content,324 'ID' => intval( $int_post_id ?? 0 ), 325 'post_title' => $str_title, 326 'post_content' => $arr_new_content['de'], 327 327 ); 328 328 -
verowa-connect/trunk/persons/assign-persons.php
r2958219 r2966265 177 177 $person_short_desc = ''; 178 178 } else { 179 $persons_have_detail_link = true === get_post_meta( $post->ID, 'verowa_persons_have_detail_link', true ) ? 'on' : '';180 $person_ group_function = true === get_post_meta( $post->ID, 'verowa_person_show_group_function', true ) ? 'on' : '';181 $person_ profession = true === get_post_meta( $post->ID, 'verowa_person_show_profession', true ) ? 'on' : '';182 $person_ address = true === get_post_meta( $post->ID, 'verowa_person_show_address', true ) ? 'on' : '';183 $person_ email = true === get_post_meta( $post->ID, 'verowa_person_show_person_email', true ) ? 'on' : '';184 $person_ phone = true === get_post_meta( $post->ID, 'verowa_person_show_person_phone', true ) ? 'on' : '';185 $person_ short_desc = true === get_post_meta( $post->ID, 'verowa_person_short_desc', true ) ? 'on' : '';179 $persons_have_detail_link = get_post_meta( $post->ID, 'verowa_persons_have_detail_link', true ); 180 $person_profession = get_post_meta( $post->ID, 'verowa_person_show_profession', true ); 181 $person_address = get_post_meta( $post->ID, 'verowa_person_show_address', true ); 182 $person_email = get_post_meta( $post->ID, 'verowa_person_show_person_email', true ); 183 $person_phone = get_post_meta( $post->ID, 'verowa_person_show_person_phone', true ); 184 $person_short_desc = get_post_meta( $post->ID, 'verowa_person_short_desc', true ); 185 $person_group_function = get_post_meta( $post->ID, 'verowa_person_show_group_function', true ); 186 186 } 187 187 … … 507 507 $int_selected_template = intval( get_post_meta( $post->ID, 'verowa_personlist_template', true ) ); 508 508 509 if ( 0 === $int_selected_template ) 510 { 509 if ( 0 === $int_selected_template ) { 511 510 $int_selected_template = intval( get_option( 'verowa_default_personlist_template' ) ); 512 511 } -
verowa-connect/trunk/persons/show-persons-widget.php
r2958219 r2966265 68 68 } 69 69 70 $ arr_personlist_template = verowa_get_single_template( $int_personlist_template, $curr_language_code, 'widget' );70 $obj_personlist_template = verowa_get_single_template( $int_personlist_template, $curr_language_code, 'widget' ); 71 71 72 72 // We look to see if a template with "widget" has been selected. 73 if ( ( is_array( $arr_personlist_template ) && count( $arr_personlist_template ) == 0 ) || '' == $is_empty) {73 if ( true === empty( $obj_personlist_template ) || '' == trim( $is_empty ) ) { 74 74 $all_persons_function_content = ''; 75 75 } -
verowa-connect/trunk/readme.txt
r2963622 r2966265 68 68 == Changelog == 69 69 70 = 2.13.2 = 71 * Bugfix: Display errors for events or people. If it has both widget and content templates. 72 * Bugfix: Layer selections are displayed again at the events 73 70 74 = 2.13.1 = 71 75 * New: Shortcodes verowa_urlencode and verowa_encode_link -
verowa-connect/trunk/verowa-connect.php
r2963622 r2966265 5 5 * Description: Include your Verowa data seamlessly into your WordPress project! 6 6 * Author: Picture-Planet GmbH 7 * Version: 2.13. 17 * Version: 2.13.2 8 8 * Requires at least: 5.2 9 9 * Requires PHP: 7.4
Note: See TracChangeset
for help on using the changeset viewer.