Re: [PATCH 00/11] gitweb: Change timezone

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Apr 9, 2011 at 3:49 PM, Jakub Narebski <jnareb@xxxxxxxxx> wrote:
> This is split version (with assorted cleanups) of J.H. patch adding
> JavaScript-base ability to change timezone in which dates are
> displayed.

Jakub,

Thanks for the update.  This UI does seem to work better than the
original "[+]" dropdown interface.

The new code appears to degrade gracefully on IE6 (everything shown in UTC).

Tests on Firefox 3.6.15 looked OK.

Chromium 6.0.472.62 (59676) does not like this operation:

Uncaught Error: NOT_FOUND_ERR: DOM Exception 8
  removeChangeTZForm
  /gitweb-static/gitweb.js:785
onTZFormChange

line 785: var removed = container.removeChild(container.lastChild);

Opera 10.63 resets target.selectedIndex to 1 after calling
removeChangeTZForm() from onTZFormChange().  Net effect is that you're
always stuck in the "local" zone.  Here is a workaround that fixed it
for me:

       var target = event.target || event.srcElement;
       var selectedIndex = target.selectedIndex;

       removeChangeTZForm(documentFragment, target, tzClassName);

       var selected = target.options.item(selectedIndex);

Couple other random nitpicks:

> +	// server-side of gitweb produces datetime in UTC,
> +	// so if tz is 'utc' there is no need for changes
> +	var nochange = tz === 'utc';

If I delete my gitweb_tz cookie, then refresh the page:

 - All times show up in my browser's local time (good)

 - Clicking UTC/GMT on the dropdown has no immediate effect; I need to
   refresh the page again to see the times change (bad)

> +	my (undef, undef, $datetime_class) =
> +		gitweb_get_feature('javascript-timezone');
> +	if ($datetime_class) {
> +		$strtime = qq!<span class="datetime">$strtime</span>!;

Should this hard-code class "datetime", or use $datetime_class from
the gitweb server configuration?

> +/* JavaScript-base timezone manipulation */

Might want to reword as "JavaScript-based"

> +		// refresh cookie, so it expires 7 days from last use of gitweb
> +		setCookie(tzCookieName, tzCookie, { expires: 7, path: '/' });

Hmm, only 7 days?

> + * and instals appropriate onclick trigger (via event delegation).

"installs"
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]