aboutsummaryrefslogtreecommitdiff
path: root/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java
diff options
context:
space:
mode:
Diffstat (limited to 'libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java')
-rw-r--r--libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java589
1 files changed, 589 insertions, 0 deletions
diff --git a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java
new file mode 100644
index 000000000..76c181b9b
--- /dev/null
+++ b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java
@@ -0,0 +1,589 @@
+package org.wordpress.android.analytics;
+
+import android.content.Context;
+
+import com.automattic.android.tracks.TracksClient;
+
+import org.json.JSONException;
+import org.json.JSONObject;
+import org.wordpress.android.util.AppLog;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class AnalyticsTrackerNosara extends Tracker {
+
+ private static final String JETPACK_USER = "jetpack_user";
+ private static final String NUMBER_OF_BLOGS = "number_of_blogs";
+ private static final String TRACKS_ANON_ID = "nosara_tracks_anon_id";
+
+ private static final String EVENTS_PREFIX = "wpandroid_";
+
+ private TracksClient mNosaraClient;
+
+ public AnalyticsTrackerNosara(Context context) throws IllegalArgumentException {
+ super(context);
+ mNosaraClient = TracksClient.getClient(context);
+ }
+
+ String getAnonIdPrefKey() {
+ return TRACKS_ANON_ID;
+ }
+
+ @Override
+ public void track(AnalyticsTracker.Stat stat) {
+ track(stat, null);
+ }
+
+ @Override
+ public void track(AnalyticsTracker.Stat stat, Map<String, ?> properties) {
+ if (mNosaraClient == null) {
+ return;
+ }
+
+ String eventName = getEventNameForStat(stat);
+ if (eventName == null) {
+ AppLog.w(AppLog.T.STATS, "There is NO match for the event " + stat.name() + "stat");
+ return;
+ }
+
+ Map<String, Object> predefinedEventProperties = new HashMap<String, Object>();
+ switch (stat) {
+ case EDITOR_ADDED_PHOTO_VIA_LOCAL_LIBRARY:
+ predefinedEventProperties.put("via", "local_library");
+ break;
+ case EDITOR_ADDED_PHOTO_VIA_WP_MEDIA_LIBRARY:
+ predefinedEventProperties.put("via", "media_library");
+ break;
+ case EDITOR_ADDED_VIDEO_VIA_LOCAL_LIBRARY:
+ predefinedEventProperties.put("via", "local_library");
+ break;
+ case EDITOR_ADDED_VIDEO_VIA_WP_MEDIA_LIBRARY:
+ predefinedEventProperties.put("via", "media_library");
+ break;
+ case EDITOR_TAPPED_BLOCKQUOTE:
+ predefinedEventProperties.put("button", "blockquote");
+ break;
+ case EDITOR_TAPPED_BOLD:
+ predefinedEventProperties.put("button", "bold");
+ break;
+ case EDITOR_TAPPED_IMAGE:
+ predefinedEventProperties.put("button", "image");
+ break;
+ case EDITOR_TAPPED_ITALIC:
+ predefinedEventProperties.put("button", "italic");
+ break;
+ case EDITOR_TAPPED_LINK:
+ predefinedEventProperties.put("button", "link");
+ break;
+ case EDITOR_TAPPED_MORE:
+ predefinedEventProperties.put("button", "more");
+ break;
+ case EDITOR_TAPPED_STRIKETHROUGH:
+ predefinedEventProperties.put("button", "strikethrough");
+ break;
+ case EDITOR_TAPPED_UNDERLINE:
+ predefinedEventProperties.put("button", "underline");
+ break;
+ case EDITOR_TAPPED_HTML:
+ predefinedEventProperties.put("button", "html");
+ break;
+ case EDITOR_TAPPED_ORDERED_LIST:
+ predefinedEventProperties.put("button", "ordered_list");
+ break;
+ case EDITOR_TAPPED_UNLINK:
+ predefinedEventProperties.put("button", "unlink");
+ break;
+ case EDITOR_TAPPED_UNORDERED_LIST:
+ predefinedEventProperties.put("button", "unordered_list");
+ break;
+ case OPENED_POSTS:
+ predefinedEventProperties.put("menu_item", "posts");
+ break;
+ case OPENED_PAGES:
+ predefinedEventProperties.put("menu_item", "pages");
+ break;
+ case OPENED_COMMENTS:
+ predefinedEventProperties.put("menu_item", "comments");
+ break;
+ case OPENED_VIEW_SITE:
+ predefinedEventProperties.put("menu_item", "view_site");
+ break;
+ case OPENED_VIEW_ADMIN:
+ predefinedEventProperties.put("menu_item", "view_admin");
+ break;
+ case OPENED_MEDIA_LIBRARY:
+ predefinedEventProperties.put("menu_item", "media_library");
+ break;
+ case OPENED_BLOG_SETTINGS:
+ predefinedEventProperties.put("menu_item", "site_settings");
+ break;
+ case STATS_PERIOD_DAYS_ACCESSED:
+ predefinedEventProperties.put("period", "days");
+ break;
+ case STATS_PERIOD_WEEKS_ACCESSED:
+ predefinedEventProperties.put("period", "weeks");
+ break;
+ case STATS_PERIOD_MONTHS_ACCESSED:
+ predefinedEventProperties.put("period", "months");
+ break;
+ case STATS_PERIOD_YEARS_ACCESSED:
+ predefinedEventProperties.put("period", "years");
+ break;
+ }
+
+ final String user;
+ final TracksClient.NosaraUserType userType;
+ if (getWordPressComUserName() != null) {
+ user = getWordPressComUserName();
+ userType = TracksClient.NosaraUserType.WPCOM;
+ } else {
+ // This is just a security checks since the anonID is already available here.
+ // refresh metadata is called on login/logout/startup and it loads/generates the anonId when necessary.
+ if (getAnonID() == null) {
+ user = generateNewAnonID();
+ } else {
+ user = getAnonID();
+ }
+ userType = TracksClient.NosaraUserType.ANON;
+ }
+
+
+ // create the merged JSON Object of properties
+ // Properties defined by the user have precedence over the default ones pre-defined at "event level"
+ final JSONObject propertiesToJSON;
+ if (properties != null && properties.size() > 0) {
+ propertiesToJSON = new JSONObject(properties);
+ for (String key : predefinedEventProperties.keySet()) {
+ try {
+ if (propertiesToJSON.has(key)) {
+ AppLog.w(AppLog.T.STATS, "The user has defined a property named: '" + key + "' that will override" +
+ "the same property pre-defined at event level. This may generate unexpected behavior!!");
+ AppLog.w(AppLog.T.STATS, "User value: " + propertiesToJSON.get(key).toString() + " - pre-defined value: " +
+ predefinedEventProperties.get(key).toString());
+ } else {
+ propertiesToJSON.put(key, predefinedEventProperties.get(key));
+ }
+ } catch (JSONException e) {
+ AppLog.e(AppLog.T.STATS, "Error while merging user-defined properties with pre-defined properties", e);
+ }
+ }
+ } else{
+ propertiesToJSON = new JSONObject(predefinedEventProperties);
+ }
+
+ if (propertiesToJSON.length() > 0) {
+ mNosaraClient.track(EVENTS_PREFIX + eventName, propertiesToJSON, user, userType);
+ } else {
+ mNosaraClient.track(EVENTS_PREFIX + eventName, user, userType);
+ }
+ }
+
+
+
+ @Override
+ public void endSession() {
+ this.flush();
+ }
+
+ @Override
+ public void flush() {
+ if (mNosaraClient == null) {
+ return;
+ }
+ mNosaraClient.flush();
+ }
+
+ @Override
+ public void refreshMetadata(AnalyticsMetadata metadata) {
+ if (mNosaraClient == null) {
+ return;
+ }
+
+ try {
+ JSONObject properties = new JSONObject();
+ properties.put(JETPACK_USER, metadata.isJetpackUser());
+ properties.put(NUMBER_OF_BLOGS, metadata.getNumBlogs());
+ mNosaraClient.registerUserProperties(properties);
+ } catch (JSONException e) {
+ AppLog.e(AppLog.T.UTILS, e);
+ }
+
+ if (metadata.isUserConnected() && metadata.isWordPressComUser()) {
+ setWordPressComUserName(metadata.getUsername());
+ // Re-unify the user
+ if (getAnonID() != null) {
+ mNosaraClient.trackAliasUser(getWordPressComUserName(), getAnonID(), TracksClient.NosaraUserType.WPCOM);
+ clearAnonID();
+ }
+ } else {
+ // Not wpcom connected. Check if anonID is already present
+ setWordPressComUserName(null);
+ if (getAnonID() == null) {
+ generateNewAnonID();
+ }
+ }
+
+
+ }
+
+
+ @Override
+ public void clearAllData() {
+ super.clearAllData();
+ if (mNosaraClient == null) {
+ return;
+ }
+ mNosaraClient.clearUserProperties();
+ }
+
+ @Override
+ public void registerPushNotificationToken(String regId) {
+ return;
+ }
+
+ public static String getEventNameForStat(AnalyticsTracker.Stat stat) {
+ switch (stat) {
+ case APPLICATION_OPENED:
+ return "application_opened";
+ case APPLICATION_CLOSED:
+ return "application_closed";
+ case APPLICATION_INSTALLED:
+ return "application_installed";
+ case APPLICATION_UPGRADED:
+ return "application_upgraded";
+ case READER_ACCESSED:
+ return "reader_accessed";
+ case READER_ARTICLE_COMMENTED_ON:
+ return "reader_article_commented_on";
+ case READER_ARTICLE_LIKED:
+ return "reader_article_liked";
+ case READER_ARTICLE_OPENED:
+ return "reader_article_opened";
+ case READER_ARTICLE_UNLIKED:
+ return "reader_article_unliked";
+ case READER_BLOG_BLOCKED:
+ return "reader_blog_blocked";
+ case READER_BLOG_FOLLOWED:
+ return "reader_site_followed";
+ case READER_BLOG_PREVIEWED:
+ return "reader_blog_previewed";
+ case READER_BLOG_UNFOLLOWED:
+ return "reader_site_unfollowed";
+ case READER_DISCOVER_VIEWED:
+ return "reader_discover_viewed";
+ case READER_INFINITE_SCROLL:
+ return "reader_infinite_scroll_performed";
+ case READER_LIST_FOLLOWED:
+ return "reader_list_followed";
+ case READER_LIST_LOADED:
+ return "reader_list_loaded";
+ case READER_LIST_PREVIEWED:
+ return "reader_list_previewed";
+ case READER_LIST_UNFOLLOWED:
+ return "reader_list_unfollowed";
+ case READER_TAG_FOLLOWED:
+ return "reader_reader_tag_followed";
+ case READER_TAG_LOADED:
+ return "reader_tag_loaded";
+ case READER_TAG_PREVIEWED:
+ return "reader_tag_previewed";
+ case READER_SEARCH_LOADED:
+ return "reader_search_loaded";
+ case READER_SEARCH_PERFORMED:
+ return "reader_search_performed";
+ case READER_SEARCH_RESULT_TAPPED:
+ return "reader_searchcard_clicked";
+ case READER_TAG_UNFOLLOWED:
+ return "reader_reader_tag_unfollowed";
+ case READER_RELATED_POST_CLICKED:
+ return "reader_related_post_clicked";
+ case EDITOR_CREATED_POST:
+ return "editor_post_created";
+ case EDITOR_SAVED_DRAFT:
+ return "editor_draft_saved";
+ case EDITOR_DISCARDED_CHANGES:
+ return "editor_discarded_changes";
+ case EDITOR_EDITED_IMAGE:
+ return "editor_image_edited";
+ case EDITOR_ENABLED_NEW_VERSION:
+ return "editor_enabled_new_version";
+ case EDITOR_TOGGLED_OFF:
+ return "editor_toggled_off";
+ case EDITOR_TOGGLED_ON:
+ return "editor_toggled_on";
+ case EDITOR_UPLOAD_MEDIA_FAILED:
+ return "editor_upload_media_failed";
+ case EDITOR_UPLOAD_MEDIA_RETRIED:
+ return "editor_upload_media_retried";
+ case EDITOR_CLOSED:
+ return "editor_closed";
+ case EDITOR_ADDED_PHOTO_VIA_LOCAL_LIBRARY:
+ return "editor_photo_added";
+ case EDITOR_ADDED_PHOTO_VIA_WP_MEDIA_LIBRARY:
+ return "editor_photo_added";
+ case EDITOR_ADDED_VIDEO_VIA_LOCAL_LIBRARY:
+ return "editor_video_added";
+ case EDITOR_ADDED_VIDEO_VIA_WP_MEDIA_LIBRARY:
+ return "editor_video_added";
+ case EDITOR_PUBLISHED_POST:
+ return "editor_post_published";
+ case EDITOR_UPDATED_POST:
+ return "editor_post_updated";
+ case EDITOR_SCHEDULED_POST:
+ return "editor_post_scheduled";
+ case EDITOR_TAPPED_BLOCKQUOTE:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_BOLD:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_IMAGE:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_ITALIC:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_LINK:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_MORE:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_STRIKETHROUGH:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_UNDERLINE:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_HTML:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_ORDERED_LIST:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_UNLINK:
+ return "editor_button_tapped";
+ case EDITOR_TAPPED_UNORDERED_LIST:
+ return "editor_button_tapped";
+ case NOTIFICATIONS_ACCESSED:
+ return "notifications_accessed";
+ case NOTIFICATIONS_OPENED_NOTIFICATION_DETAILS:
+ return "notifications_notification_details_opened";
+ case NOTIFICATION_APPROVED:
+ return "notifications_approved";
+ case NOTIFICATION_UNAPPROVED:
+ return "notifications_unapproved";
+ case NOTIFICATION_REPLIED_TO:
+ return "notifications_replied_to";
+ case NOTIFICATION_TRASHED:
+ return "notifications_trashed";
+ case NOTIFICATION_FLAGGED_AS_SPAM:
+ return "notifications_flagged_as_spam";
+ case NOTIFICATION_LIKED:
+ return "notifications_comment_liked";
+ case NOTIFICATION_UNLIKED:
+ return "notifications_comment_unliked";
+ case OPENED_POSTS:
+ return "site_menu_opened";
+ case OPENED_PAGES:
+ return "site_menu_opened";
+ case OPENED_COMMENTS:
+ return "site_menu_opened";
+ case OPENED_VIEW_SITE:
+ return "site_menu_opened";
+ case OPENED_VIEW_ADMIN:
+ return "site_menu_opened";
+ case OPENED_MEDIA_LIBRARY:
+ return "site_menu_opened";
+ case OPENED_BLOG_SETTINGS:
+ return "site_menu_opened";
+ case OPENED_ACCOUNT_SETTINGS:
+ return "account_settings_opened";
+ case OPENED_APP_SETTINGS:
+ return "app_settings_opened";
+ case OPENED_MY_PROFILE:
+ return "my_profile_opened";
+ case OPENED_PEOPLE_MANAGEMENT:
+ return "people_management_list_opened";
+ case OPENED_PERSON:
+ return "people_management_details_opened";
+ case CREATED_ACCOUNT:
+ return "account_created";
+ case CREATED_SITE:
+ return "site_created";
+ case SHARED_ITEM:
+ return "item_shared";
+ case ADDED_SELF_HOSTED_SITE:
+ return "self_hosted_blog_added";
+ case SIGNED_IN:
+ return "signed_in";
+ case SIGNED_INTO_JETPACK:
+ return "signed_into_jetpack";
+ case ACCOUNT_LOGOUT:
+ return "account_logout";
+ case PERFORMED_JETPACK_SIGN_IN_FROM_STATS_SCREEN:
+ return "stats_screen_signed_into_jetpack";
+ case STATS_ACCESSED:
+ return "stats_accessed";
+ case STATS_INSIGHTS_ACCESSED:
+ return "stats_insights_accessed";
+ case STATS_PERIOD_DAYS_ACCESSED:
+ return "stats_period_accessed";
+ case STATS_PERIOD_WEEKS_ACCESSED:
+ return "stats_period_accessed";
+ case STATS_PERIOD_MONTHS_ACCESSED:
+ return "stats_period_accessed";
+ case STATS_PERIOD_YEARS_ACCESSED:
+ return "stats_period_accessed";
+ case STATS_VIEW_ALL_ACCESSED:
+ return "stats_view_all_accessed";
+ case STATS_SINGLE_POST_ACCESSED:
+ return "stats_single_post_accessed";
+ case STATS_TAPPED_BAR_CHART:
+ return "stats_bar_chart_tapped";
+ case STATS_SCROLLED_TO_BOTTOM:
+ return "stats_scrolled_to_bottom";
+ case STATS_SELECTED_INSTALL_JETPACK:
+ return "stats_install_jetpack_selected";
+ case STATS_SELECTED_CONNECT_JETPACK:
+ return "stats_connect_jetpack_selected";
+ case STATS_WIDGET_ADDED:
+ return "stats_widget_added";
+ case STATS_WIDGET_REMOVED:
+ return "stats_widget_removed";
+ case STATS_WIDGET_TAPPED:
+ return "stats_widget_tapped";
+ case PUSH_NOTIFICATION_RECEIVED:
+ return "push_notification_received";
+ case PUSH_NOTIFICATION_TAPPED:
+ return "push_notification_alert_tapped";
+ case SUPPORT_OPENED_HELPSHIFT_SCREEN:
+ return "support_helpshift_screen_opened";
+ case SUPPORT_SENT_REPLY_TO_SUPPORT_MESSAGE:
+ return "support_reply_to_support_message_sent";
+ case LOGIN_MAGIC_LINK_EXITED:
+ return "login_magic_link_exited";
+ case LOGIN_MAGIC_LINK_FAILED:
+ return "login_magic_link_failed";
+ case LOGIN_MAGIC_LINK_OPENED:
+ return "login_magic_link_opened";
+ case LOGIN_MAGIC_LINK_REQUESTED:
+ return "login_magic_link_requested";
+ case LOGIN_MAGIC_LINK_SUCCEEDED:
+ return "login_magic_link_succeeded";
+ case LOGIN_FAILED:
+ return "login_failed_to_login";
+ case LOGIN_FAILED_TO_GUESS_XMLRPC:
+ return "login_failed_to_guess_xmlrpc";
+ case LOGIN_INSERTED_INVALID_URL:
+ return "login_inserted_invalid_url";
+ case LOGIN_AUTOFILL_CREDENTIALS_FILLED:
+ return "login_autofill_credentials_filled";
+ case LOGIN_AUTOFILL_CREDENTIALS_UPDATED:
+ return "login_autofill_credentials_updated";
+ case PERSON_REMOVED:
+ return "people_management_person_removed";
+ case PERSON_UPDATED:
+ return "people_management_person_updated";
+ case PUSH_AUTHENTICATION_APPROVED:
+ return "push_authentication_approved";
+ case PUSH_AUTHENTICATION_EXPIRED:
+ return "push_authentication_expired";
+ case PUSH_AUTHENTICATION_FAILED:
+ return "push_authentication_failed";
+ case PUSH_AUTHENTICATION_IGNORED:
+ return "push_authentication_ignored";
+ case NOTIFICATION_SETTINGS_LIST_OPENED:
+ return "notification_settings_list_opened";
+ case NOTIFICATION_SETTINGS_STREAMS_OPENED:
+ return "notification_settings_streams_opened";
+ case NOTIFICATION_SETTINGS_DETAILS_OPENED:
+ return "notification_settings_details_opened";
+ case ME_ACCESSED:
+ return "me_tab_accessed";
+ case ME_GRAVATAR_TAPPED:
+ return "me_gravatar_tapped";
+ case ME_GRAVATAR_TOOLTIP_TAPPED:
+ return "me_gravatar_tooltip_tapped";
+ case ME_GRAVATAR_PERMISSIONS_INTERRUPTED:
+ return "me_gravatar_permissions_interrupted";
+ case ME_GRAVATAR_PERMISSIONS_DENIED:
+ return "me_gravatar_permissions_denied";
+ case ME_GRAVATAR_PERMISSIONS_ACCEPTED:
+ return "me_gravatar_permissions_accepted";
+ case ME_GRAVATAR_SHOT_NEW:
+ return "me_gravatar_shot_new";
+ case ME_GRAVATAR_GALLERY_PICKED:
+ return "me_gravatar_gallery_picked";
+ case ME_GRAVATAR_CROPPED:
+ return "me_gravatar_cropped";
+ case ME_GRAVATAR_UPLOADED:
+ return "me_gravatar_uploaded";
+ case ME_GRAVATAR_UPLOAD_UNSUCCESSFUL:
+ return "me_gravatar_upload_unsuccessful";
+ case ME_GRAVATAR_UPLOAD_EXCEPTION:
+ return "me_gravatar_upload_exception";
+ case MY_SITE_ACCESSED:
+ return "my_site_tab_accessed";
+ case THEMES_ACCESSED_THEMES_BROWSER:
+ return "themes_theme_browser_accessed";
+ case THEMES_ACCESSED_SEARCH:
+ return "themes_search_accessed";
+ case THEMES_CHANGED_THEME:
+ return "themes_theme_changed";
+ case THEMES_PREVIEWED_SITE:
+ return "themes_theme_for_site_previewed";
+ case THEMES_DEMO_ACCESSED:
+ return "themes_demo_accessed";
+ case THEMES_CUSTOMIZE_ACCESSED:
+ return "themes_customize_accessed";
+ case THEMES_SUPPORT_ACCESSED:
+ return "themes_support_accessed";
+ case THEMES_DETAILS_ACCESSED:
+ return "themes_details_accessed";
+ case ACCOUNT_SETTINGS_LANGUAGE_CHANGED:
+ return "account_settings_language_changed";
+ case SITE_SETTINGS_ACCESSED:
+ return "site_settings_accessed";
+ case SITE_SETTINGS_ACCESSED_MORE_SETTINGS:
+ return "site_settings_more_settings_accessed";
+ case SITE_SETTINGS_ADDED_LIST_ITEM:
+ return "site_settings_added_list_item";
+ case SITE_SETTINGS_DELETED_LIST_ITEMS:
+ return "site_settings_deleted_list_items";
+ case SITE_SETTINGS_HINT_TOAST_SHOWN:
+ return "site_settings_hint_toast_shown";
+ case SITE_SETTINGS_LEARN_MORE_CLICKED:
+ return "site_settings_learn_more_clicked";
+ case SITE_SETTINGS_LEARN_MORE_LOADED:
+ return "site_settings_learn_more_loaded";
+ case SITE_SETTINGS_SAVED_REMOTELY:
+ return "site_settings_saved_remotely";
+ case SITE_SETTINGS_START_OVER_ACCESSED:
+ return "site_settings_start_over_accessed";
+ case SITE_SETTINGS_START_OVER_CONTACT_SUPPORT_CLICKED:
+ return "site_settings_start_over_contact_support_clicked";
+ case SITE_SETTINGS_EXPORT_SITE_ACCESSED:
+ return "site_settings_export_site_accessed";
+ case SITE_SETTINGS_EXPORT_SITE_REQUESTED:
+ return "site_settings_export_site_requested";
+ case SITE_SETTINGS_EXPORT_SITE_RESPONSE_OK:
+ return "site_settings_export_site_response_ok";
+ case SITE_SETTINGS_EXPORT_SITE_RESPONSE_ERROR:
+ return "site_settings_export_site_response_error";
+ case SITE_SETTINGS_DELETE_SITE_ACCESSED:
+ return "site_settings_delete_site_accessed";
+ case SITE_SETTINGS_DELETE_SITE_PURCHASES_REQUESTED:
+ return "site_settings_delete_site_purchases_requested";
+ case SITE_SETTINGS_DELETE_SITE_PURCHASES_SHOWN:
+ return "site_settings_delete_site_purchases_shown";
+ case SITE_SETTINGS_DELETE_SITE_PURCHASES_SHOW_CLICKED:
+ return "site_settings_delete_site_purchases_show_clicked";
+ case SITE_SETTINGS_DELETE_SITE_REQUESTED:
+ return "site_settings_delete_site_requested";
+ case SITE_SETTINGS_DELETE_SITE_RESPONSE_OK:
+ return "site_settings_delete_site_response_ok";
+ case SITE_SETTINGS_DELETE_SITE_RESPONSE_ERROR:
+ return "site_settings_delete_site_response_error";
+ case ABTEST_START:
+ return "abtest_start";
+ case TRAIN_TRACKS_RENDER:
+ return "traintracks_render";
+ case TRAIN_TRACKS_INTERACT:
+ return "traintracks_interact";
+ default:
+ return null;
+ }
+ }
+}