1 String.prototype.trim = function() {
2 return this.replace(/(^\s+|\s+$)/g, '');
5 String.prototype.repeat = function(count) {
7 for (var i = 0; i < count; i++) {
14 String.prototype.capitalize = function() {
15 return this.replace(/\w+/g,
17 return ( a.charAt(0).toUpperCase()
18 + a.substr(1).toLowerCase() );
22 String.prototype.decodeEntities = function() {
23 return this.replace(/&#(\d+);/g,
24 function(wholematch, parenmatch1) {
25 return String.fromCharCode(+parenmatch1);
29 String.prototype.asDate = function () {
31 var date = this.split("/");
33 newDate = new Date(date[2], date[1] - 1, date[0]);
35 date = this.split("-");
36 newDate = new Date(date[0], date[1] - 1, date[2]);
42 Date.prototype.sogoDayName = function() {
45 var day = this.getDay();
47 dayName = labels['a2_Sunday'];
48 } else if (day == 1) {
49 dayName = labels['a2_Monday'];
50 } else if (day == 2) {
51 dayName = labels['a2_Tuesday'];
52 } else if (day == 3) {
53 dayName = labels['a2_Wednesday'];
54 } else if (day == 4) {
55 dayName = labels['a2_Thursday'];
56 } else if (day == 5) {
57 dayName = labels['a2_Friday'];
58 } else if (day == 6) {
59 dayName = labels['a2_Saturday'];
65 Date.prototype.daysUpTo = function(otherDate) {
66 var days = new Array();
67 var day1 = this.getTime();
68 var day2 = otherDate.getTime();
70 var nbrDays = Math.floor((day2 - day1) / 86400000) + 1;
71 for (var i = 0; i < nbrDays; i++) {
72 var newDate = new Date();
73 newDate.setTime(day1 + (i * 86400000));
80 Date.prototype.stringWithSeparator = function(separator) {
81 var month = '' + (this.getMonth() + 1);
82 var day = '' + this.getDate();
83 if (month.length == 1)
89 str = (this.getYear() + 1900) + '-' + month + '-' + day;
91 str = day + '/' + month + '/' + (this.getYear() + 1900);
96 Date.prototype.sogoFreeBusyStringWithSeparator = function(separator) {
97 return this.sogoDayName() + ", " + this.stringWithSeparator(separator);