Omnibug sometimes showing load events as click events? - analytics

I'm trying to understand why omnibug sometimes show load events as click events. When I first type in the URL all tags are listed as click events. If I reload the same page all the tags are shown as load events? Why the difference? I see this from time to time with omnibug, does anyone know what is actually defined as click events vs load events. Sometimes a load instead of a click can be a big issue, but Omnibug doesn't seem very reliable in this regard...

There is a known/reported bug in omnibug relevant to this. I heard through the grapevine it has to do with how the browser pre-fetches and/or caches requests. This also happens with Google/Universal Analytics entries.
For Adobe Analytics (Omniture), you can ensure it really is a click event (s.tl call) by expanding the row and looking for the following two items(should both be present):
Link type: This represents the 2nd argument to s.tl(), and is the pe= query param in the request URL. It should have one of these 3 values: "lnk_o","lnk_e", or "lnk_d".
Link name: This represents the 3rd argument to s.tl(), and is the pev2= query param in the request URL.
If these two things are not present, then it will be recorded as a page view request (s.t()) in Adobe Analytics (Omniture).

Related

Changing states without reloading previous view data when I go back to it

I am new to angular and was wondering if I could somehow change states (after clicking on link from a list of search results) and load a new view, hide the old one (including header !), but not unload it/not have to request JSON data again if I got back to the search results for products view from the product details view.
Well, this will be a really short answer.
Take a look at this:
$templateCache You can play around with it so you won't need to reload pages when going back and forth.

Angularjs: how to pass entire object to another controller?

OK, I'm very new to AngularJS. I'm converting a rather rough-app (that I've been writing for a couple of days) from using mostly jQuery over to using Angular. [ I discovered Angular "mid-stream", while researching how to alleviate all the bookmark and back-button headaches I was running into.]
On my main page, I have a table of search results. (If the user arrives without passing any parameters, a default search is called to build the table. And, of course, they can use a search form on that page to show themselves a different set of results.)
Now, when the user clicks on a table item, I want that table to more or less "become" a drop-down menu on the Item Details page that can be used to navigate from one table item to the next. (The list will usually be less than 20 items long at any given time.) Same data, same sort order, just in a different control.
Rather than build that "Child" page so that (in addition to making Ajax calls to pull up the item details) it runs the exact same query AGAIN and then builds a drop-down out of it... I thought perhaps there was some more-efficient way to do it.
Perhaps, pass the entire object of objects from the search results on to the Details controller? (I would somehow have to also pass an id for whichever item the user actually clicked on for details as well.)
[With jQuery, I had been building both the drop-down and the table of results on the same page...and then just use show() and hide() to alternate which one I was displaying. And I would fetch the Item Details data and populate/show hidden details divs whenever a table row or drop-down option was selected.]
First I think you should use some kind of routing, maybe this can be helpful
https://github.com/angular-ui/ui-router
And second one, if you want to access same object with multiple controllers, you should use factory with your object, and all you need is to inject that factory into your controllers, and you will have access to the same object from multiple controllers. Here is the short tutorial, it's very easy to understand:
https://egghead.io/lessons/angularjs-sharing-data-between-controllers
And third option, but it's not nice, is to emit or broadcast event and send object from one controller, and in another one you can put a listener for that event, here you can find more information:
http://www.theroks.com/angularjs-communication-controllers/
http://toddmotto.com/all-about-angulars-emit-broadcast-on-publish-subscribing/

AngularJS, applying $location.search('foo', 'bar') and manually removing url params does not refresh

Right now, I have a path, let's say /path, in an AngularJS application (which is not a single-paged app).
I want to set certain parameters in the URL to keep filters and sorting intact when I refresh. To do so, I used $location.search('foo', 'bar'), which appropriately changes the URL to /path?foo=bar. When I refresh, I can access foo with $location.search().foo. So far so good.
However, a problem arises when I manually edit the url. In particular, I've found when I erase ?foo=bar from my url and press enter once, nothing happens. If I click the url bar again and press enter, it reloads the page as expected.
Is there a reason it doesn't work the first time? Is there a non-intrusive way to get around this issue? Usage of non-angular methods is okay, but we're trying to avoid putting Jquery into the application.

Google Calendar API calendar id and event id

I am learning on how to access google calendar API for creating and accessing events. I am trying to understand API using OAuth 2.0 Playground. I am struggling on what to set for calendarid and eventid
https://www.googleapis.com/calendar/v3/calendars/{calendarId}/events/{eventId}
Can any one guide me.
Regards,
Sureshkumar Menon
calendarId is the email address of your calendar. If you're just using your own, then use the string "primary".
eventId is the ID of the event that you want to modify. If you don't have an event, you should either create one with the 'insert' call, which will include an eventId parameter that you can store and use to modify it later, or use the 'list' call to get a list of events.
I was facing similar issue and got solution to find the calendar event id:
->Go to the event debugging URL at https://www.google.com/calendar/render?gsessionid=OK&eventdeb=1.
->Double click to view the affected event.
->Select the drop down menu 'More Actions'.
->Click on the 'Troubleshooting Info'.
->Copy the text that appears and paste it in your reply to support.
You can refer the below link which gives details with screen shot
http://googleappstroubleshootinghelp.blogspot.in/2012/09/how-to-find-troubleshooting-information.html
However i am still looking for a solution to get event ids dynamically.
i just discover that the list request which retrieves all the event list contains the correct event id. In my web app, i am using fullcalendar, each time i click a event for updated or deleting, the eventclicked method gives a false event id. so, i guess we will have to give a true event id and false event id map stored in our local app. this can be a work around. but it's liking eating a fly.

DotNetNuke Switching Between Multple Edit Modules

I have a custom module in DNN 7 that has a data structure where items belong to categories (called "sections", not DNN taxonomy, just a simple list of section names). The module edit screens work so that on the view control you may click on an edit link on each category, which loads the category edit screen (passing the category id). This works great, and when you save I use Globals.NavigateURL() to return to the view screen. This all works as intended.
On each category edit screen I also have a list of the items within that category, each with an edit link. Clicking the edit link opens the item edit screen, passing the correct item id, and allowing me to edit that item. This all works great, until you save. The save works properly, but when I want to send the user back to the edit screen for the category it doesn't work. When I use:
Response.Redirect(EditUrl("SectionId", sectionid.ToString(), "EditSections"), true);
...nothing happens. It simply doesn't redirect anywhere. This is exactly the same URL I'm using to get to the category edit page in the first place:
EditUrl("SectionId", Eval("SectionId").ToString(), "EditSections")
And then I use a similar URL to get to the item edit page:
EditUrl("ItemId", Eval("ItemId").ToString(), "EditItems")
I don't understand why using the same URL to navigate to the same page I already navigated to would simply not do anything. For now I am sending them all the way back to the view, but it's painful if you need to add several items to the same category to have to navigate back into the category and add another item, only to be sent back to the view.
Anyone see anything like this before?
Have you tried to use the overload of NavigateUrl instead of EditUrl?
Globals.NavigateURL(TabId, "EditSections", "mid", ModuleId.ToString(), "SectionId", Eval("SectionId").ToString())
I haven't seen that myself but I would have to assume that somehow the context is being lost with EditURL and you're not getting sent to the proper location due to that.
I would suggest you try one of two things (or both).
Debug the URL that EditURL is returning and see if you can find the
difference.
Use NavigateURL for all your links and pass in MID=## for your
moduleid as a querystring parameter, to ensure that the proper
values are being passed.
UPDATE: If you're trying to have multiple edit views, and move between them, you might look at using a "loader" instead of having separate module definitions for the edit controls. Basically have a single Edit.ascx file defined, and it loads other ASCX files within it, injecting into a Panel. The View control on this module http://dnnsimplearticle.codeplex.com/ does that, but I haven't tried it with an edit control before.

Resources