From: Steve Sutton Date: Thu, 9 Jun 2016 12:10:59 +0000 (-0400) Subject: Some small edits for intro field X-Git-Tag: v1.0.17^2~5 X-Git-Url: http://cvs2.gaslightmedia.com/gitweb/index.cgi?a=commitdiff_plain;h=2bd49524f16eb68e891d01e8c30f105ce8372a52;p=WP-Plugins%2Fglm-member-db-events.git Some small edits for intro field Switch to using mb_substr. Normal substr caused some errors when importing the events. Also I am going 25 events at a time. The variable for this is just inside of the function for adding timely events. --- diff --git a/models/admin/management/events.php b/models/admin/management/events.php index 8670b0b..89a73b2 100644 --- a/models/admin/management/events.php +++ b/models/admin/management/events.php @@ -263,7 +263,7 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement 'schema' => FILTER_SANITIZE_STRING, 'cattablename' => FILTER_SANITIZE_STRING, 'tablename' => FILTER_SANITIZE_STRING, - 'sdate' => array( + 'sdate' => array( 'filter' => FILTER_VALIDATE_REGEXP, 'options' => array( 'regexp' => '%[0-9]{2}/[0-9]{2}/[0-9]{4}%' @@ -298,8 +298,8 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement 'status' => false, 'menuItemRedirect' => 'error', 'modelRedirect' => 'index', - 'view' => 'admin/error/index.html', - 'data' => array( + 'view' => 'admin/error/index.html', + 'data' => array( 'reason' => 'User does not have rights to make configuration changes.' ) ); @@ -352,8 +352,8 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement $template_data = array( 'option' => $option, 'testResult' => $test_result, - 'importResult' => $import_result, - 'settingsUpdated' => $settings_updated, + 'importResult' => $import_result, + 'settingsUpdated' => $settings_updated, 'settingsUpdateError' => $settings_update_error, 'eventsSettings' => $event_settings ); @@ -363,8 +363,8 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement 'status' => true, 'menuItemRedirect' => false, 'modelRedirect' => false, - 'view' => 'admin/management/events.html', - 'data' => $template_data + 'view' => 'admin/management/events.html', + 'data' => $template_data ); @@ -560,8 +560,10 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement } public function addTimelyCategories() { + $category_counter = 0; $categories = get_terms( 'events_categories' ); foreach ( $categories as $category ) { + ++$category_counter; // first check to see if the category is already there $sql = " SELECT id @@ -588,7 +590,14 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement $this->oldCatMap[$category->term_id] = $found['id']; } } + // Store the oldCatMap for the next pages. + update_option( 'glm-member-event-old-cat-map', serialize( $this->oldCatMap ) ); + return "

Adding $category_counter Categories

"; } + public function getOldCatMap() + { + return unserialize( get_option('glm-member-event-old-cat-map') ); + } /** * getTime * @@ -1054,14 +1063,25 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement return $return; } public function importFromTimely() { - // clear the events tables first - $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "events" ); - $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "recurrences" ); - $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times" ); - $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "event_categories" ); - $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "locations" ); - - $return = $this->addTimelyCategories(); + $limit = 25; + $debug = false; + if ( isset( $_REQUEST['start'] ) ) { + $start = filter_var( $_REQUEST['start'], FILTER_VALIDATE_INT ); + } else { + $start = 0; + } + if ( $start === 0 ) { + // clear the events tables first. + $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "events" ); + $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "recurrences" ); + $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times" ); + $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "event_categories" ); + $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "locations" ); + // Add the Categories from Time.ly. + $return_string = $this->addTimelyCategories(); + } else { + $this->oldCatMap = $this->getOldCatMap(); + } $yearly_events = $daily_events = @@ -1079,19 +1099,24 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement FROM " . $this->wpdb->prefix . "posts WHERE post_type = 'ai1ec_event' AND post_status = 'publish'"; + //$sql .= " AND ID IN ( SELECT post_id FROM " . $this->wpdb->prefix . "ai1ec_events + //WHERE end >= " . time() . " )"; + $sql .= " LIMIT $limit OFFSET $start"; $results = $this->wpdb->get_results( $sql, ARRAY_A ); - echo '

Total events: ' . count( $results ) . '

'; + //echo '

Total events: ' . count( $results ) . '

'; + $event_counter = 0; if ( !empty( $results ) ) { foreach ( $results as $post ) { - echo '
$post: ' . print_r($post, true) . '
'; + ++$event_counter; + //echo '
$post: ' . print_r($post, true) . '
'; $sql = " SELECT * FROM " . $this->wpdb->prefix . "ai1ec_events WHERE post_id = {$post['ID']}"; $event_data = $this->wpdb->get_row( $sql, ARRAY_A ); - echo '
$event_data: ' . print_r($event_data, true) . '
'; + //echo '
$event_data: ' . print_r($event_data, true) . '
'; $cost_data = unserialize( $event_data['cost'] ); $cost = $cost_data['cost']; $is_free = $cost_data['is_free']; @@ -1101,9 +1126,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement if ( has_post_thumbnail( $post['ID'] ) ) { $thumbnail_id = get_post_thumbnail_id( $post['ID'] ); $thumb_src = wp_get_attachment_image_src( $thumbnail_id, 'large' ); - echo '
$thumb_src: ' . print_r($thumb_src, true) . '
'; + //echo '
$thumb_src: ' . print_r($thumb_src, true) . '
'; $res = $image_upload->storeImage($thumb_src[0]); - echo '
$res: ' . print_r($res, true) . '
'; + //echo '
$res: ' . print_r($res, true) . '
'; if ( $res['newFileName'] ) { $image = $res['newFileName']; } @@ -1116,7 +1141,7 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement 'approved' => $post['post_modified'], 'name' => $post['post_title'], 'name_slug' => $post['post_name'], - 'intro' => substr( strip_tags( $post['post_content'] ), 0, 250 ), + 'intro' => mb_substr( strip_tags( $post['post_content'] ), 0, 80 ), 'descr' => $post['post_content'], 'image' => $image, 'file1' => null, @@ -1166,14 +1191,24 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement '%s', '%s', ); - $this->wpdb->insert( + if ( $debug ) { + //$this->wpdb->show_errors(); + } + $is_insert = $this->wpdb->insert( GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . 'events', $event_import_data, $event_data_format ); + if ( $debug ) { + var_dump( $is_insert ); + } $event_id = $this->wpdb->insert_id; - var_dump( $event_id ); - if ( !$event_id ) { + if ( $debug ) { + var_dump( $event_id ); + } + if ( !$event_id ) { + $this->wpdb->print_error(); + echo '
$event_import_data: ' . print_r($event_import_data, true) . '
'; echo '
SQL Error: ' . $this->wpdb->last_error . '
'; echo '
SQL Error: ' . $this->wpdb->print_error() . '
'; die('something is wrong no event_id'); @@ -1194,7 +1229,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement ) ); } - echo '
$categories: ' . print_r($categories, true) . '
'; + if ( $debug ) { + echo '
$categories: ' . print_r($categories, true) . '
'; + } $by_day_of_month = $last_day_of_month = null; @@ -1211,18 +1248,28 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement $week_of_month = 63; $from_date = date( 'Y-m-d', $event_data['start'] ); - echo '
$from_date: ' . print_r($from_date, true) . '
'; + if ( $debug ) { + echo '
$from_date: ' . print_r($from_date, true) . '
'; + } $to_date = date( 'Y-m-d', $event_data['end'] ); - echo '
$to_date: ' . print_r($to_date, true) . '
'; + if ( $debug ) { + echo '
$to_date: ' . print_r($to_date, true) . '
'; + } $btime = date( 'H:i', $event_data['start'] ); - echo '
$btime: ' . print_r($btime, true) . '
'; + if ( $debug ) { + echo '
$btime: ' . print_r($btime, true) . '
'; + } $etime = date( 'H:i', $event_data['end'] ); - echo '
$etime: ' . print_r($etime, true) . '
'; + if ( $debug ) { + echo '
$etime: ' . print_r($etime, true) . '
'; + } if ( $event_data['recurrence_rules'] ) { $recurring_event = 1; $recurrence_rules = explode( ';', $event_data['recurrence_rules'] ); - echo '
$recurrence_rules: ' . print_r($recurrence_rules, true) . '
'; + if ( $debug ) { + echo '
$recurrence_rules: ' . print_r($recurrence_rules, true) . '
'; + } foreach ( $recurrence_rules as $rule ) { // check for RDATE , which are the custom dates that need to be serialized if(strpos($rule, 'RDATE') !== false){ @@ -1232,7 +1279,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement $custom_times = explode(',', $rdate); } if ( preg_match( ';FREQ=(.*);', $rule, $matches ) ) { - echo '
$matches: ' . print_r($matches, true) . '
'; + if ( $debug ) { + echo '
$matches: ' . print_r($matches, true) . '
'; + } switch ( $matches[1] ) { case "WEEKLY": $weekly_events++; @@ -1317,7 +1366,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement break; } } else if ( preg_match( ';COUNT=(.*);', $rule, $matches ) ) { - echo '
$matches: ' . print_r($matches, true) . '
'; + if ( $debug ) { + echo '
$matches: ' . print_r($matches, true) . '
'; + } // set the end date to COUNT days from start try { $number_of_days = (int)$matches[1] - 1; @@ -1327,8 +1378,10 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement $to_date = $ending_date->format( 'Y-m-d' ); $recurring_event = 0; } catch (Exception $e) { - echo '
$e: ' . print_r($e, true) . '
'; - die(); + if ( $debug ) { + echo '
$e: ' . print_r($e, true) . '
'; + } + die(); } } else if ( preg_match( ';UNTIL=(.*);', $rule, $matches ) ) { $to_date = date( 'Y-m-d', strtotime( $matches[1] ) ); @@ -1352,8 +1405,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement }else if ( preg_match( ';BYday=(.*);', $rule, $matches ) ) { - echo '
1354 $matches: ' . print_r($matches, true) . '
'; - + if ( $debug ) { + echo '
1354 $matches: ' . print_r($matches, true) . '
'; + } // check if the selection is the nth week with a selected day, if not parse the input as a list if selected days if(strpos($matches[1], ",") == false){ $week_number = substr($matches[1],0, 1); @@ -1428,7 +1482,9 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement 'last_day_of_month' => $last_day_of_month, 'specific_dates' => $serialized_custom_times ); - echo '
$recur_data: ' . print_r($recur_data, true) . '
'; + if ( $debug ) { + echo '
$recur_data: ' . print_r($recur_data, true) . '
'; + } $this->wpdb->insert( GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . 'recurrences', $recur_data, @@ -1498,12 +1554,24 @@ class GlmMembersAdmin_management_events extends GlmDataEventsManagement ); $location_id = $this->wpdb->insert_id; if ( !$location_id ) { - echo '
$location_data: ' . print_r($location_data, true) . '
'; + if ( $debug ) { + echo '
$location_data: ' . print_r($location_data, true) . '
'; + } die('no return id for location'); } } } + $return_string .= "

Adding $event_counter Events

"; } + $return_string .= "
+			Start: $start
+		
"; + $start += $limit; + $return_string .= "

Next

"; + return $return_string; } } diff --git a/models/front/events/list.php b/models/front/events/list.php index d80b7f4..51e9c9c 100644 --- a/models/front/events/list.php +++ b/models/front/events/list.php @@ -44,7 +44,6 @@ class GlmMembersFront_events_list extends GlmMembersFront_events_baseAction */ public function modelAction($actionData = false) { - $status = $categoryId = null; $action = ''; $settings = $events = $event = $categoryEvents = array(); diff --git a/views/front/events/detail.html b/views/front/events/detail.html index 2d92947..e974d7c 100644 --- a/views/front/events/detail.html +++ b/views/front/events/detail.html @@ -117,7 +117,7 @@
-

{$event.descr}

+

{$event.descr|nl2br}