On Nov 25, 2009, at 10:15 AM, Jerome Velociter wrote:

> On 11/25/09 10:11 AM, Jerome Velociter wrote:
>> On 11/24/09 7:07 PM, Sergiu Dumitriu wrote:
>>> On 11/23/2009 10:43 AM, Vincent Massol wrote:
>>>>
>>>> On Nov 23, 2009, at 10:40 AM, Thomas Mortagne wrote:
>>>>
>>>>> I just found that we have a "ajax" URL parameter already. It's  
>>>>> put in
>>>>> the context in XWikiAction so we could check for it in statistics.
>>>>>
>>>>> WDYT about reusing it ?
>>>>
>>>> What is this URL param doing? The name doesn't sound very  
>>>> explicit to
>>>> tell not to log stats...
>>>
>>> Currently it prevents in some cases returning the full response. For
>>> example, the /cancel/ action normally redirects to view, which in  
>>> turn
>>> renders the entire page. An AJAX request just wants to trigger the
>>> cancel action, and doesn't care for the response at all. Not going
>>> through the rendering engine is a good performance boost.
>>>
>>> It's not used for every request done through AJAX, since it must be
>>> added manually.
>>
>> In the long run, I don't like too much this solution, since it forces
>> developers to be aware of that and to add the ajax=1 to all their  
>> AJAX
>> requests. Using a different action for service like /service/
>>
>> Jerome
>>
>> sounds more natural, and easier to learn.
>
> Read:
>
> "Using a different action for service like /service/sounds more  
> natural,
> and easier to learn.

"service" doesn't mean much IMO  but +1 for a different action on the  
longer run. Note that WCAG complains about URL with query string (for  
readability reason) so this solves this problem too.

Thanks
-Vincent

> Jerome"
>
>>>
>>>> I think I'd prefer a more explicit param.
>>>>
>>>> Thanks
>>>> -Vincent
>>>>
>>>>> On Thu, Nov 19, 2009 at 12:04, Thomas Mortagne
>>>>> <[email protected]>    wrote:
>>>>>> On Thu, Nov 19, 2009 at 11:36, Vincent Massol<[email protected]>
>>>>>> wrote:
>>>>>>>
>>>>>>> On Nov 19, 2009, at 11:26 AM, Thomas Mortagne wrote:
>>>>>>>
>>>>>>>> On Thu, Nov 19, 2009 at 08:50, Vincent Massol<[email protected] 
>>>>>>>> >
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> On Nov 18, 2009, at 5:16 PM, Thomas Mortagne wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> Since we introduce document footer informations view  
>>>>>>>>>> statistics
>>>>>>>>>> are
>>>>>>>>>> store several time for the same user view of a page.
>>>>>>>>>>
>>>>>>>>>> See http://jira.xwiki.org/jira/browse/XWIKI-4590
>>>>>>>>>>
>>>>>>>>>> The issue is that theses tabs are loaded asynchronously in  
>>>>>>>>>> ajax
>>>>>>>>>> and
>>>>>>>>>> make a call using view action.
>>>>>>>>>>
>>>>>>>>>> Here are some solutions:
>>>>>>>>>> 1/ introduce a new action "viewinternal", "service" or  
>>>>>>>>>> anything
>>>>>>>>>> else
>>>>>>>>>> that would be a "view" action without UI and not taken into
>>>>>>>>>> account by
>>>>>>>>>> statistics (that register for "view" action events)
>>>>>>>>>
>>>>>>>>> +0
>>>>>>>>>
>>>>>>>>>> 2/ pretty much the same thing that 1/ but based on a URL
>>>>>>>>>> parameter
>>>>>>>>>
>>>>>>>>> +1
>>>>>>>>>
>>>>>>>>> This is much better to me since:
>>>>>>>>> * Stats are a transersval concern, not related to the view  
>>>>>>>>> action
>>>>>>>>> especially. I'm pretty sure we can imagine use cases where we
>>>>>>>>> don't
>>>>>>>>> want to register stats for actions other than view
>>>>>>>>> * The way I'd like to implement the actions later on (xwiki-
>>>>>>>>> actions
>>>>>>>>> module) is to have action pipelines and this "saving stats"  
>>>>>>>>> action
>>>>>>>>> will be implemented as a post-action that would be injected
>>>>>>>>> after the
>>>>>>>>> main actions. Thus only this post action will need to check  
>>>>>>>>> the
>>>>>>>>> parameter which will be transparent to the other actions, thus
>>>>>>>>> providing a good separation of concern.
>>>>>>>>
>>>>>>>> So you want statistics module to go look at URL parameters ?
>>>>>>>
>>>>>>> I said the opposite actually: it's the action that should do  
>>>>>>> this.
>>>>>>> Right now (current code) we could just have the view action  
>>>>>>> check
>>>>>>> for
>>>>>>> the param.
>>>>>>
>>>>>> And do what, put something in the context ? The statistics module
>>>>>> will
>>>>>> still receive a "view" action event. It has to check something.
>>>>>>
>>>>>>>
>>>>>>>> How would
>>>>>>>> you name this parameter ?
>>>>>>>
>>>>>>> Some proposals:
>>>>>>> - "stats=true|false" (or 0|1 to follow the current "tradition")
>>>>>>> - "logstats"
>>>>>>>
>>>>>>>> Also i really don't like that ajax calls use the standard view
>>>>>>>> action
>>>>>>>
>>>>>>> Can you explain? I don't see the problem.
>>>>>>
>>>>>> "view" action is supposed to be a user view of a document, ajax  
>>>>>> calls
>>>>>> are retrieving structured informations from a service located  
>>>>>> in a
>>>>>> page most of the time so they have to explicitly tweak the URL to
>>>>>> remove the UI, indicate they want plain renderer... and so get
>>>>>> something that has nothing to do with what "view" action is  
>>>>>> supposed
>>>>>> to be.
>>>>>>
>>>>>>>
>>>>>>> Thanks
>>>>>>> -Vincent
>>>>>>>
>>>>>>>> so the "viewinternal" action is needed anyway IMO.
>>>>>>>>
>>>>>>>>>
>>>>>>>>>> 3/ use an additional AJAX request similar to a google  
>>>>>>>>>> analytics
>>>>>>>>>> call
>>>>>>>>>> to record statistics
>>>>>>>>>
>>>>>>>>> -1
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> -Vincent
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> As i said in jira I'm against 3/
>>>>>>>>>>
>>>>>>>>>> 2/ seems too big for a URL parameter to me and it makes
>>>>>>>>>> statistics
>>>>>>>>>> depends on URL parameters where 1/ fix the issue without  
>>>>>>>>>> touching
>>>>>>>>>> anything in the statistics module
>>>>>>>>>>
>>>>>>>>>> +1 for 1/
>>>>>>>>>> +0 for 2/
>>>>>>>>>> -1 for 3/
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Thomas Mortagne
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to