Jump to content

Improved homepage To-Do list


Recommended Posts

Hi all,


I love WHMCS - something hard not to do if you moved from modernbill - but found the to-do list a bit lacking. Since matt created a template file for the admin homepage I've been modifying it occasionally as need arose, and ended up with, I think, quite an improvement on the to-do list as it appears on the default homepage.


I decided to release the homepage template I've created to the WHMCS community, I hope people find it useful :)


What does it look like? This. (With all sensitive data removed, of course ;)


Feature list:

* The to-do list is repositioned to the top of the homepage and stretches further.

* The to-do list on the homepage now only displays the active administrator's items, or items not assigned to any admin.

* Items are not displayed on the homepage until their 'start' date. (NOT due date).

* Quick and easy method to change an item's status without going through the edit process.

* One click taking and dropping of items - any admin can 'take' an unassigned item, and 'drop' an item to release it

back so all admins can see it with one click.

* When there are no current items to display you are given a number of 'upcoming' items. These are items assigned either

to the active admin or nobody and which have a start date in the future.

* Click an item's title to view its full description, and edit.

* A 'manage to-do list' link to WHMCS' full to-do editor.


Download: zip, tar.gz

Installation instructions included in the README.txt file.




I'll update this thread with new releases when WHMCS is updated, and includes changes to the admin/homepage.tpl file. Enjoy!

Link to comment
Share on other sites

  • Replies 124
  • Created
  • Last Reply

Top Posters In This Topic

Ah, didn't think about this - it's configured to work with the date format being DD/MM/YYYY rather than MM/DD/YYYY. It thinks the item is to appear on the 12th day of the 17th month, which, as far as it is concerned, hasn't happened yet.


I'll release an update tomorrow making it check the config value in the database for which setting WHMCS is using.

Link to comment
Share on other sites

  • 2 weeks later...

Here's an update for you all:


v1.1.0 zip

v1.1.0 tar.gz


Note: The installation of this version is slightly different than previous versions. Make sure you read the README.txt file included in the archive.


New features:


* Colour highlighting of items on or past their due date. Items which are on or past their due date but marked 'Postponed' are still highlighted, but in a less severe colour.


* It is now possible to update the due date and start date from the home page list, using the WHMCS date picket. This is a single click feature in the same way as the status changer is.


* More human readable due dates within 3 days of target in either direction. Ie: In three days, Today, Tomorrow, Three days ago.


Screenshot: link

Link to comment
Share on other sites

I am getting an error for some reason on line 50. Now I looked at this line and though I am sure greek is a beautiful language I am not well versed in it. Could ya tell me what I may changedhere to make it not give me an IVALID ARGUMENT error.


By the way LOVE the look and ease.




function PopupWindow_showPopup(anchorname){this.getXYPosition(anchorname);this.x += this.offsetX;this.y += this.offsetY;if(!this.populated &&(this.contents != "")){this.populated = true;this.refresh();}if(this.divName != null){if(this.use_gebi){document.getElementById(this.divName).style.left = this.x + "px";document.getElementById(this.divName).style.top = this.y + "px";document.getElementById(this.divName).style.visibility = "visible";}else if(this.use_css){document.all[this.divName].style.left = this.x;document.all[this.divName].style.top = this.y;document.all[this.divName].style.visibility = "visible";}else if(this.use_layers){document.layers[this.divName].left = this.x;document.layers[this.divName].top = this.y;document.layers[this.divName].visibility = "visible";}}else{if(this.popupWindow == null || this.popupWindow.closed){if(this.x<0){this.x=0;}if(this.y<0){this.y=0;}if(screen && screen.availHeight){if((this.y + this.height) > screen.availHeight){this.y = screen.availHeight - this.height;}}if(screen && screen.availWidth){if((this.x + this.width) > screen.availWidth){this.x = screen.availWidth - this.width;}}var avoidAboutBlank = window.opera ||( document.layers && !navigator.mimeTypes['*']) || navigator.vendor == 'KDE' ||( document.childNodes && !document.all && !navigator.taintEnabled);this.popupWindow = window.open(avoidAboutBlank?"":"about:blank","window_"+anchorname,this.windowProperties+",width="+this.width+",height="+this.height+",screenX="+this.x+",left="+this.x+",screenY="+this.y+",top="+this.y+"");}this.refresh();}}

Link to comment
Share on other sites

Sorry for the delay in replying, just moved and only just got the new internet connection up.


I'm afraid I can't answer you, Methinks, but I don't think that's a line of code which I edited, I added line breaks and tabs to the sections I was editing to make it easier to read and I didn't remove them before publishing.


The only reason for the error message I can think of would therefore be that it's calling the old javascript file instead of the one I've made changes to.


Thanks for all your positive comments :D

Link to comment
Share on other sites

in ie 7 i am getting an error with the calendar popup. tells me its on line 51:


var cal = new CalendarPopup();


works fine in firefox.


not to make you do it for ie, but do you have any idea what that issue could be?


ALSO - the old todo list showed a few months into the future, yours only shows the current month, is there a way to set it to show a few months into the future like the old one did?

Link to comment
Share on other sites

I don't have access to a windows machine at the moment - can you tell me if the script works with that line removed?


I'm not sure what you mean by this one only showing 'the current month' - it should show any item which has reached its date. To do items have two separate date properties ('date' and 'duedate'), the edits I made mean that items aren't displayed until they reach their 'date', but if you set an item's 'date' well before the 'duedate', they can display months before they're due.

Link to comment
Share on other sites

line 51

character 246

invalid argument

code 0


i tried commenting out line 51, but i dont think that is really the line causing it.


the date thing was a bad date as an initial date which was set to a date in the future, setting it to one on the past showed it correctly.

Link to comment
Share on other sites

Just letting you know it works fine now I just reinstalled it. I am not sure why the calendar popup was causing the error before I havent changed anything. But am glad it works. I do love the look and how much easier it makes it to see that I am really lazy and didnt get done what I wanted.


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.

  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated