[MAPSME-5820] [ios] Added search filter statistics.

This commit is contained in:
Ilya Grechuhin 2017-12-01 16:37:25 +03:00 committed by Roman Kuznetsov
parent 3b7a3971b6
commit d133bdb72a
3 changed files with 54 additions and 6 deletions

View file

@ -1,5 +1,14 @@
static NSString * const kStat1 = @"1";
static NSString * const kStat2 = @"2";
static NSString * const kStat3 = @"3";
static NSString * const kStat3D = @"3D";
static NSString * const kStat3DBuildings= @"3D buildings";
static NSString * const kStat4 = @"4";
static NSString * const kStat5 = @"5";
static NSString * const kStat6 = @"6";
static NSString * const kStat7 = @"7";
static NSString * const kStat8 = @"8";
static NSString * const kStat9 = @"9";
static NSString * const kStatAPI = @"API";
static NSString * const kStatAbout = @"About";
static NSString * const kStatAction = @"action";
@ -12,6 +21,8 @@ static NSString * const kStatAfterSave = @"after_save";
static NSString * const kStatAlert = @"Alert";
static NSString * const kStatAllMaps = @"all_maps";
static NSString * const kStatAlways = @"Always";
static NSString * const kStatAny = @"any";
static NSString * const kStatApartment = @"apartment";
static NSString * const kStatApplication = @"Application";
static NSString * const kStatApplicationColdStartupInfo = @"Application_ColdStartup_info";
static NSString * const kStatApply = @"Apply";
@ -29,9 +40,11 @@ static NSString * const kStatBookmarks = @"Bookmarks";
static NSString * const kStatBuildRoute = @"Build route";
static NSString * const kStatButton = @"Button";
static NSString * const kStatCallPhoneNumber = @"Call phone number";
static NSString * const kStatCampSite = @"campSite";
static NSString * const kStatCancel = @"cancel";
static NSString * const kStatCategories = @"Categories";
static NSString * const kStatCategory = @"category";
static NSString * const kStatChalet = @"chalet";
static NSString * const kStatChangeBookmarkColor = @"Change bookmark color";
static NSString * const kStatChangeBookmarkDescription = @"Change bookmark description";
static NSString * const kStatChangeBookmarkGroup = @"Change bookmark group";
@ -43,6 +56,8 @@ static NSString * const kStatChangeNightMode = @"Change night mode";
static NSString * const kStatChangeRecentTrack = @"Change recent track";
static NSString * const kStatChangeRoutingMode = @"Change routing mode";
static NSString * const kStatCharging = @"charging";
static NSString * const kStatCheckIn = @"check_in";
static NSString * const kStatCheckOut = @"check_out";
static NSString * const kStatCian = @"Cian.ru";
static NSString * const kStatClear = @"Clear";
static NSString * const kStatClose = @"Close";
@ -53,6 +68,7 @@ static NSString * const kStatCopyright = @"Copyright";
static NSString * const kStatCount = @"Count";
static NSString * const kStatCountry = @"Country";
static NSString * const kStatCurrentMap = @"current_map";
static NSString * const kStatDate = @"date";
static NSString * const kStatDelete = @"delete";
static NSString * const kStatDeleteAll = @"delete all";
static NSString * const kStatDeleteAllWithChanges = @"delete_all_with_changes";
@ -95,7 +111,6 @@ static NSString * const kStatEditorEditCancel = @"Editor_Edit_cancel";
static NSString * const kStatEditorEditError = @"Editor_Edit_error";
static NSString * const kStatEditorEditStart = @"Editor_Edit_start";
static NSString * const kStatEditorEditSuccess = @"Editor_Edit_success";
static NSString * const kStatIsAuthenticated = @"is_authenticated";
static NSString * const kStatEditorMWMName = @"mwm_name";
static NSString * const kStatEditorMWMVersion = @"mwm_version";
static NSString * const kStatEditorProblemReport = @"Editor_Problem_report";
@ -118,14 +133,17 @@ static NSString * const kStatFromLocation = @"from_location";
static NSString * const kStatFromMyPosition = @"From my position";
static NSString * const kStatGo = @"Go";
static NSString * const kStatGoogle = @"Google";
static NSString * const kStatGuestHouse = @"guestHouse";
static NSString * const kStatHelp = @"Help";
static NSString * const kStatHidden = @"Hidden";
static NSString * const kStatHistory = @"History";
static NSString * const kStatHoliday = @"Holiday";
static NSString * const kStatHostel = @"hostel";
static NSString * const kStatHotel = @"hotel";
static NSString * const kStatHotelLocation = @"hotel_location";
static NSString * const kStatImport = @"Import";
static NSString * const kStatIn = @"In";
static NSString * const kStatIsAuthenticated = @"is_authenticated";
static NSString * const kStatIsAuto = @"is_auto";
static NSString * const kStatIsOnline = @"is_online";
static NSString * const kStatIsSuccess = @"is_success";
@ -145,8 +163,10 @@ static NSString * const kStatMigrationBig2SmallMWM = @"Big mwms to small mwms mi
static NSString * const kStatMiles = @"Miles";
static NSString * const kStatMobile = @"mobile";
static NSString * const kStatMobileInternet = @"Mobile Internet";
static NSString * const kStatMode = @"mode";
static NSString * const kStatMopub = @"Mopub";
static NSString * const kStatMoreApps = @"More apps";
static NSString * const kStatMotel = @"motel";
static NSString * const kStatMyPosition = @"My position";
static NSString * const kStatMyTargetAppsClicked = @"MyTargetAppsClicked";
static NSString * const kStatMyTargetAppsDisplayed = @"MyTargetAppsDisplayed";
@ -159,10 +179,10 @@ static NSString * const kStatNightMode = @"NightMode";
static NSString * const kStatNo = @"No";
static NSString * const kStatNoConnection = @"no_connection";
static NSString * const kStatNoSpace = @"no_space";
static NSString * const kStatObjectLat = @"object_lat";
static NSString * const kStatObjectLon = @"object_lon";
static NSString * const kStatOSM = @"OSM";
static NSString * const kStatOSMUserName = @"osm_username";
static NSString * const kStatObjectLat = @"object_lat";
static NSString * const kStatObjectLon = @"object_lon";
static NSString * const kStatOff = @"Off";
static NSString * const kStatOffline = @"offline";
static NSString * const kStatOn = @"On";
@ -175,7 +195,6 @@ static NSString * const kStatOther = @"Other";
static NSString * const kStatOut = @"Out";
static NSString * const kStatPedestrian = @"Pedestrian";
static NSString * const kStatPlacePage = @"placepage";
static NSString * const kStatPlacePagePreview = @"placepage_preview";
static NSString * const kStatPlacePageBannerBlank = @"Placepage_Banner_blank";
static NSString * const kStatPlacePageBannerClick = @"Placepage_Banner_click";
static NSString * const kStatPlacePageBannerError = @"Placepage_Banner_error";
@ -188,9 +207,10 @@ static NSString * const kStatPlacePageHotelReviews = @"PlacePage_Hotel_Reviews_l
static NSString * const kStatPlacePageHotelSearch = @"Search.Booking.Com";
static NSString * const kStatPlacePageNonBuilding = @"placepage_nonbuilding";
static NSString * const kStatPlacePageOwnershipButtonClick = @"Placepage_OwnershipButton_click";
static NSString * const kStatPlacePagePreview = @"placepage_preview";
static NSString * const kStatPlacePageRestaurantBook = @"Placepage_Restaurant_book";
static NSString * const kStatPlacePageTaxiClick = @"Placepage_Taxi_click";
static NSString * const kStatPlacePageSponsoredActionButtonClick = @"Placepage_SponsoredActionButton_click";
static NSString * const kStatPlacePageTaxiClick = @"Placepage_Taxi_click";
static NSString * const kStatPlacepageSponsoredError = @"Placepage_SponsoredGallery_error";
static NSString * const kStatPlacepageSponsoredItemSelected = @"Placepage_SponsoredGallery_ProductItem_selected";
static NSString * const kStatPlacepageSponsoredLogoSelected = @"Placepage_SponsoredGallery_LogoItem_selected";
@ -200,6 +220,7 @@ static NSString * const kStatPlacepageSponsoredShow = @"Placepage_SponsoredGalle
static NSString * const kStatPlacepageTaxiShow = @"Placepage_Taxi_show";
static NSString * const kStatPointToPoint = @"Point to point";
static NSString * const kStatPortrait = @"Portrait";
static NSString * const kStatPriceCategory = @"price_category";
static NSString * const kStatProblem = @"Problem";
static NSString * const kStatProfile = @"Profile";
static NSString * const kStatProgress = @"Progress";
@ -208,12 +229,14 @@ static NSString * const kStatPublicTransport = @"Public Transport";
static NSString * const kStatPushReceived = @"Push received";
static NSString * const kStatRB = @"RB";
static NSString * const kStatRate = @"Rate";
static NSString * const kStatRating = @"rating";
static NSString * const kStatReason = @"Reason";
static NSString * const kStatRecentTrack = @"Recent track";
static NSString * const kStatRegular = @"Regular";
static NSString * const kStatRemove = @"Remove";
static NSString * const kStatRename = @"Rename";
static NSString * const kStatReport = @"Report";
static NSString * const kStatResort = @"resort";
static NSString * const kStatRestaurant = @"restaurant";
static NSString * const kStatRestaurantLocation = @"restaurant_location";
static NSString * const kStatRetry = @"retry";
@ -224,7 +247,6 @@ static NSString * const kStatRouting = @"routing";
static NSString * const kStatRoutingAddPoint = @"Routing_Point_add";
static NSString * const kStatRoutingBookmarksClicked = @"Routing_Bookmarks_click";
static NSString * const kStatRoutingBuildTaxi = @"Routing_Build_Taxi";
static NSString * const kStatMode = @"mode";
static NSString * const kStatRoutingModeOnRoute = @"onroute";
static NSString * const kStatRoutingModePlanning = @"planning";
static NSString * const kStatRoutingPointMethod = @"method";
@ -248,6 +270,11 @@ static NSString * const kStatScenario = @"scenario";
static NSString * const kStatScreen = @"Screen";
static NSString * const kStatSearch = @"search";
static NSString * const kStatSearchEnteredState = @"Search entered state";
static NSString * const kStatSearchFilterApply = @"Search_Filter_Apply";
static NSString * const kStatSearchFilterCancel = @"Search_Filter_Cancel";
static NSString * const kStatSearchFilterClick = @"Search_Filter_Click";
static NSString * const kStatSearchFilterOpen = @"Search_Filter_Open";
static NSString * const kStatSearchFilterReset = @"Search_Filter_Reset";
static NSString * const kStatSearchSponsoredSelect = @"Search_SponsoredCategory_selected";
static NSString * const kStatSearchSponsoredShow = @"Search_SponsoredCategory_shown";
static NSString * const kStatSelectMap = @"Select map";

View file

@ -2,6 +2,7 @@
#import <CoreActionSheetPicker/ActionSheetPicker.h>
#import "MWMSearch.h"
#import "MWMSearchFilterViewController_Protected.h"
#import "Statistics.h"
#import "SwiftBridge.h"
#include "search/hotels_filter.hpp"
@ -130,6 +131,7 @@ void configButton(UIButton * button, NSString * primaryText, NSString * secondar
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[Statistics logEvent:kStatSearchFilterOpen withParameters:@{kStatCategory: kStatHotel}];
[self.tableView reloadData];
[self refreshAppearance];
[self setNeedsStatusBarAppearanceUpdate];
@ -160,6 +162,7 @@ void configButton(UIButton * button, NSString * primaryText, NSString * secondar
- (IBAction)applyAction
{
[Statistics logEvent:kStatSearchFilterApply withParameters:@{kStatCategory: kStatHotel}];
[MWMSearch update];
[self dismissViewControllerAnimated:YES completion:nil];
}
@ -407,6 +410,22 @@ void configButton(UIButton * button, NSString * primaryText, NSString * secondar
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
auto const type = kTypes[indexPath.row];
auto typeString = @"";
switch (type)
{
case ftypes::IsHotelChecker::Type::Hotel: typeString = kStatHotel; break;
case ftypes::IsHotelChecker::Type::Apartment: typeString = kStatApartment; break;
case ftypes::IsHotelChecker::Type::CampSite: typeString = kStatCampSite; break;
case ftypes::IsHotelChecker::Type::Chalet: typeString = kStatChalet; break;
case ftypes::IsHotelChecker::Type::GuestHouse: typeString = kStatGuestHouse; break;
case ftypes::IsHotelChecker::Type::Hostel: typeString = kStatHostel; break;
case ftypes::IsHotelChecker::Type::Motel: typeString = kStatMotel; break;
case ftypes::IsHotelChecker::Type::Resort: typeString = kStatResort; break;
case ftypes::IsHotelChecker::Type::Count: break;
}
[Statistics logEvent:kStatSearchFilterClick
withParameters:@{kStatCategory: kStatHotel, kStatType: typeString}];
m_selectedTypes.emplace_back(type);
}

View file

@ -2,6 +2,7 @@
#import "MWMSearchFilterTransitioningManager.h"
#import "MWMSearchFilterViewController.h"
#import "MWMSearchManager+Filter.h"
#import "Statistics.h"
@interface MWMSearchManager ()<UIPopoverPresentationControllerDelegate>
@ -111,6 +112,7 @@
- (void)resetAction
{
[Statistics logEvent:kStatSearchFilterReset withParameters:@{kStatCategory: kStatHotel}];
[self clearFilter];
}