Enhance Google Cal

Last update on Nov 11, 2007

[Update: 11 Nov] Cleans up Google Calendar. To be used with Gmail Addons script

Makes Google Calendar more suited for single column use. (For instance, in a sidebar or with the Gmail Addons script)

Check out the source for certain options. You can customize whether the print button appears and whether the navigation bar is rearranged.

This script works with the updated Google interface.




You could comment on this script if you were logged in.

6 comments Feed-icon

1 point
login to vote
The Dot script's author
Posted Feb 17, 2008

@mattias: hi. thanks for reporting the problem. unfortunately i cannot reproduce this problem here. im also fairly sure that this script doesnt try to modify the displaying of the dates in any way.
if you are still having the same problem could you please post a list of any other scripts/extensions that you have installed? thank you.

1 point
login to vote
Posted Feb 11, 2008

I can't make it work with 3 week or monthly view. I only see added scheduled tasks in the week or day mode. In 3week/custom/monthly mode only the tasks with no start time are seen.

known bug?

mattias

1 point
login to vote
The Dot script's author
Posted Jan 13, 2008

Mattkolb has made a very nice addition to this script. it actually works very well. unfortunately due to some sort of formatting problem, it wont work if you directly copy and paste it. his addition is ideal for those who frequently use the 'Quick Add' option. the script with his addition is posted below. just copy this entire script over the original source.

      // ==UserScript==
      // @name Enhance Google Cal
      // @namespace http://exstodot.blogspot.com
      // @description Cleans up Google Calendar. To be used with Enhance Google script
      // @include http://www.google.com/calendar/*
      // @include https://www.google.com/calendar/*
      // ==/UserScript==
      
      //-------------------------------------- USER OPTIONS ------------------------------------------//
      // 1 means YES, 0 means NO
      
      const HIDE_PRINT = 1;
      const REARRANGE_NAV_BAR = 1;
      const QUICK_ADD_AT_TOP = 1;
      
      //-------------------------------------- DONT CHANGE ANYTHING BELOW THIS LINE ------------------------------------------//
      
      var divs = document.evaluate('/html/body/div', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
      for (var i = 0; i < divs.snapshotLength; i++) 
      {
      	divs.snapshotItem(i).style.display = 'none';
      }
      
      if (REARRANGE_NAV_BAR) 
      {
      	var cal = document.getElementById('mothertable').firstChild.firstChild;
      	var nav = cal.firstChild.cloneNode(true);
      	
      	if (QUICK_ADD_AT_TOP) 
      	{
      		var quickadd = document.getElementById('open-quick-add').parentNode;
      		var t1 = document.getElementById('t1');
      		var t1tr = t1.firstChild.firstChild;
      		t1tr.appendChild(quickadd);
      	}
      	
      	cal.removeChild(cal.firstChild);
      	cal = cal.parentNode;
      	
      	var tr = document.createElement('tr');
      	
      	tr.appendChild(nav);
      	cal.appendChild(tr);
      }
      
      if (HIDE_PRINT) 
      {
      	document.getElementById('printlink').parentNode.removeChild(document.getElementById('printlink'));
      }
      
      

1 point
login to vote
mattkolb scriptwright
Posted Jan 11, 2008

This version adds a link to quick add to the top of the page so that it is more easily accessible.

// ==UserScript==
// @name Enhance Google Cal
// @namespace http://exstodot.blogspot.com
// @description Cleans up Google Calendar. To be used with Enhance Google script
// @include http://www.google.com/calendar/*
// @include https://www.google.com/calendar/*
// ==/UserScript==

//-------------------------------------- USER OPTIONS ------------------------------------------//
// 1 means YES, 0 means NO

const HIDE_PRINT=1;
const REARRANGE_NAV_BAR=1;
const QUICK_ADD_AT_TOP=1;

//-------------------------------------- DONT CHANGE ANYTHING BELOW THIS LINE ------------------------------------------//

var divs=document.evaluate('/html/body/div', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
for(var i=0;i<divs>
{
divs.snapshotItem(i).style.display='none';
}

if(REARRANGE_NAV_BAR)
{
var cal=document.getElementById('mothertable').firstChild.firstChild;
var nav=cal.firstChild.cloneNode(true);

if (QUICK_ADD_AT_TOP) {
var quickadd = document.getElementById('open-quick-add').parentNode;
var t1 = document.getElementById('t1');
var t1tr = t1.firstChild.firstChild;
t1tr.appendChild(quickadd);
}

cal.removeChild(cal.firstChild);
cal=cal.parentNode;

var tr=document.createElement('tr');

tr.appendChild(nav);
cal.appendChild(tr);
}

if(HIDE_PRINT)
{
document.getElementById('printlink').parentNode.removeChild(document.getElementById('printlink'));
}

1 point
login to vote
The Dot script's author
Posted Nov 11, 2007

Updated to work with https://...

1 point
login to vote
Posted Nov 10, 2007

Thanks for writing this. It seems to me that the script should include the https:// link - https://www.google.com/calendar/render - by default.

I use the "better *" collection from LifeHack and it makes it easy to switch everything to https://

(Yeah, if somebody breaks into Google, I'm screwed but at least it keeps wireless connections secure.)

You could comment on this script if you were logged in.