]> git.llucax.com Git - mecon/meconlib.git/commitdiff
- Se agregan al repositorio las imagenes genericas, los estilos genericos y los js...
authorGonzalo Merayo <merayo@gmail.com>
Tue, 24 Jun 2003 18:37:53 +0000 (18:37 +0000)
committerGonzalo Merayo <merayo@gmail.com>
Tue, 24 Jun 2003 18:37:53 +0000 (18:37 +0000)
25 files changed:
www/css/general_estilos.css [new file with mode: 0644]
www/images/general_admin.gif [new file with mode: 0644]
www/images/general_admin_f2.gif [new file with mode: 0644]
www/images/general_admin_f3.gif [new file with mode: 0644]
www/images/general_carp.gif [new file with mode: 0644]
www/images/general_carp1_f2.gif [new file with mode: 0644]
www/images/general_carp1_f3.gif [new file with mode: 0644]
www/images/general_carp2_f2.gif [new file with mode: 0644]
www/images/general_carp2_f3.gif [new file with mode: 0644]
www/images/general_carpeta0.gif [new file with mode: 0644]
www/images/general_cerrar.gif [new file with mode: 0644]
www/images/general_consultas.gif [new file with mode: 0644]
www/images/general_consultas_f2.gif [new file with mode: 0644]
www/images/general_consultas_f3.gif [new file with mode: 0644]
www/images/general_eliminar.gif [new file with mode: 0644]
www/images/general_eliminar_des.gif [new file with mode: 0644]
www/images/general_impri_azul.gif [new file with mode: 0644]
www/images/general_ir4.gif [new file with mode: 0644]
www/images/general_modificar.gif [new file with mode: 0644]
www/images/general_modificar_des.gif [new file with mode: 0644]
www/images/general_nuevo.gif [new file with mode: 0644]
www/images/general_ordenar.gif [new file with mode: 0644]
www/images/general_tilde_azul.gif [new file with mode: 0644]
www/images/general_v4.gif [new file with mode: 0644]
www/js/general_script.js [new file with mode: 0644]

diff --git a/www/css/general_estilos.css b/www/css/general_estilos.css
new file mode 100644 (file)
index 0000000..00f94f1
--- /dev/null
@@ -0,0 +1,83 @@
+/* +--------------------------------------------------------------------+
+// |                           SAMURAI                                  |
+// +--------------------------------------------------------------------+
+// |   Sistema de Administracion y Matenimiento de Usuarios Relativo A  |
+// |                             Intranet                               |
+// |                      Ministerio de Economía                        |
+// +--------------------------------------------------------------------+
+// | Creado: fri mar 21 ART 2003                                        |
+// | Autor:  Martin Marrese <mmarre@mecon.gov.ar>                       |
+// +--------------------------------------------------------------------+
+// 
+// $Id: SA_Estilos.css 9 2003-03-27 21:47:09Z mmarre $
+// 
+// $URL: http://portal.mecon.ar/svn/samurai/tronco/src/www/css/SA_Estilos.css $
+// $Rev: 9 $
+// $Date: 2003-03-27 18:47:09 -0300 (Thu, 27 Mar 2003) $
+// $Author: mmarre $
+*/
+
+
+.body_general 
+{
+    BACKGROUND-COLOR: #FFFFFF;
+    COLOR: #000000;
+    MARGIN: 20px;
+}
+.table_general
+{
+    WIDTH: 760px;
+    BORDER: 0px none none;
+    BACKGROUND-COLOR: #FFFFFF;
+    FONT-FAMILY: Arial, Helvetica, sans-serif;
+    FONT-SIZE: 11px;
+    FONT-STYLE: normal;
+    FONT-WEIGHT: normal;
+    TEXT-DECORATION: none;
+    VERTICAL-ALIGN: top;
+    MARGIN: 0px;
+}
+.td_general
+{
+    TEXT-ALIGN: center;
+    VERTICAL-ALIGN: top;
+    BACKGROUND-COLOR: #FFFFFF;
+    BORDER: 0px;
+    MARGIN: 0px none none;
+
+}
+.td_secciones
+{
+    TEXT-ALIGN: center;
+    VERTICAL-ALIGN: top;
+    BACKGROUND-COLOR: #CCCCCC;
+    MARGIN: 0px;
+    BORDER: 0px none none
+}
+.texto11_blanco
+{
+    FONT-FAMILY: Arial, Helvetica, sans-serif;
+    FONT-SIZE: 11px;
+    FONT-STYLE: bold;
+    COLOR: #FFFFFF;
+    FONT-WEIGHT: normal;
+    TEXT-DECORATION: none;
+}
+.texto11_negro
+{
+    FONT-FAMILY: Arial, Helvetica, sans-serif;
+    FONT-SIZE: 11px;
+    FONT-STYLE: normal;
+    COLOR: #000000;
+    FONT-WEIGHT: normal;
+    TEXT-DECORATION: none;
+}
+.texto10_negro
+{
+    FONT-FAMILY: Arial, Helvetica, sans-serif;
+    FONT-SIZE: 10px;
+    FONT-STYLE: normal;
+    COLOR: #000000;
+    FONT-WEIGHT: normal;
+    TEXT-DECORATION: none;
+}
diff --git a/www/images/general_admin.gif b/www/images/general_admin.gif
new file mode 100644 (file)
index 0000000..6e7141e
Binary files /dev/null and b/www/images/general_admin.gif differ
diff --git a/www/images/general_admin_f2.gif b/www/images/general_admin_f2.gif
new file mode 100644 (file)
index 0000000..10152f7
Binary files /dev/null and b/www/images/general_admin_f2.gif differ
diff --git a/www/images/general_admin_f3.gif b/www/images/general_admin_f3.gif
new file mode 100644 (file)
index 0000000..7bc37a3
Binary files /dev/null and b/www/images/general_admin_f3.gif differ
diff --git a/www/images/general_carp.gif b/www/images/general_carp.gif
new file mode 100644 (file)
index 0000000..7d73d5a
Binary files /dev/null and b/www/images/general_carp.gif differ
diff --git a/www/images/general_carp1_f2.gif b/www/images/general_carp1_f2.gif
new file mode 100644 (file)
index 0000000..72110ac
Binary files /dev/null and b/www/images/general_carp1_f2.gif differ
diff --git a/www/images/general_carp1_f3.gif b/www/images/general_carp1_f3.gif
new file mode 100644 (file)
index 0000000..1bce912
Binary files /dev/null and b/www/images/general_carp1_f3.gif differ
diff --git a/www/images/general_carp2_f2.gif b/www/images/general_carp2_f2.gif
new file mode 100644 (file)
index 0000000..e008763
Binary files /dev/null and b/www/images/general_carp2_f2.gif differ
diff --git a/www/images/general_carp2_f3.gif b/www/images/general_carp2_f3.gif
new file mode 100644 (file)
index 0000000..7170970
Binary files /dev/null and b/www/images/general_carp2_f3.gif differ
diff --git a/www/images/general_carpeta0.gif b/www/images/general_carpeta0.gif
new file mode 100644 (file)
index 0000000..d17ba3a
Binary files /dev/null and b/www/images/general_carpeta0.gif differ
diff --git a/www/images/general_cerrar.gif b/www/images/general_cerrar.gif
new file mode 100644 (file)
index 0000000..f7054ea
Binary files /dev/null and b/www/images/general_cerrar.gif differ
diff --git a/www/images/general_consultas.gif b/www/images/general_consultas.gif
new file mode 100644 (file)
index 0000000..77b5973
Binary files /dev/null and b/www/images/general_consultas.gif differ
diff --git a/www/images/general_consultas_f2.gif b/www/images/general_consultas_f2.gif
new file mode 100644 (file)
index 0000000..168a363
Binary files /dev/null and b/www/images/general_consultas_f2.gif differ
diff --git a/www/images/general_consultas_f3.gif b/www/images/general_consultas_f3.gif
new file mode 100644 (file)
index 0000000..8b39885
Binary files /dev/null and b/www/images/general_consultas_f3.gif differ
diff --git a/www/images/general_eliminar.gif b/www/images/general_eliminar.gif
new file mode 100644 (file)
index 0000000..2c77c93
Binary files /dev/null and b/www/images/general_eliminar.gif differ
diff --git a/www/images/general_eliminar_des.gif b/www/images/general_eliminar_des.gif
new file mode 100644 (file)
index 0000000..73c8f96
Binary files /dev/null and b/www/images/general_eliminar_des.gif differ
diff --git a/www/images/general_impri_azul.gif b/www/images/general_impri_azul.gif
new file mode 100644 (file)
index 0000000..4cd8f9e
Binary files /dev/null and b/www/images/general_impri_azul.gif differ
diff --git a/www/images/general_ir4.gif b/www/images/general_ir4.gif
new file mode 100644 (file)
index 0000000..43e3c40
Binary files /dev/null and b/www/images/general_ir4.gif differ
diff --git a/www/images/general_modificar.gif b/www/images/general_modificar.gif
new file mode 100644 (file)
index 0000000..2bc674b
Binary files /dev/null and b/www/images/general_modificar.gif differ
diff --git a/www/images/general_modificar_des.gif b/www/images/general_modificar_des.gif
new file mode 100644 (file)
index 0000000..84ae4f8
Binary files /dev/null and b/www/images/general_modificar_des.gif differ
diff --git a/www/images/general_nuevo.gif b/www/images/general_nuevo.gif
new file mode 100644 (file)
index 0000000..7dda727
Binary files /dev/null and b/www/images/general_nuevo.gif differ
diff --git a/www/images/general_ordenar.gif b/www/images/general_ordenar.gif
new file mode 100644 (file)
index 0000000..a170c6b
Binary files /dev/null and b/www/images/general_ordenar.gif differ
diff --git a/www/images/general_tilde_azul.gif b/www/images/general_tilde_azul.gif
new file mode 100644 (file)
index 0000000..881bfb5
Binary files /dev/null and b/www/images/general_tilde_azul.gif differ
diff --git a/www/images/general_v4.gif b/www/images/general_v4.gif
new file mode 100644 (file)
index 0000000..33f0eb5
Binary files /dev/null and b/www/images/general_v4.gif differ
diff --git a/www/js/general_script.js b/www/js/general_script.js
new file mode 100644 (file)
index 0000000..0faef14
--- /dev/null
@@ -0,0 +1,621 @@
+function MM_swapImgRestore() { //v3.0
+var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
+}
+
+function MM_displayStatusMsg(msgStr) { //v1.0
+status=msgStr;
+document.MM_returnValue = true;
+}
+
+function MM_preloadImages() { //v3.0
+var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
+var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
+if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
+}
+
+function MM_findObj(n, d) { //v3.0
+var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
+d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
+if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
+for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
+}
+
+function MM_swapImage() { //v3.0
+var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
+if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
+}
+
+function MM_nbGroup(event, grpName) { //v3.0
+var i,img,nbArr,args=MM_nbGroup.arguments;
+if (event == "init" && args.length > 2) {
+if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
+img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
+if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
+nbArr[nbArr.length] = img;
+for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
+if (!img.MM_up) img.MM_up = img.src;
+img.src = img.MM_dn = args[i+1];
+nbArr[nbArr.length] = img;
+} }
+} else if (event == "over") {
+document.MM_nbOver = nbArr = new Array();
+for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
+if (!img.MM_up) img.MM_up = img.src;
+img.src = (img.MM_dn && args[i+2]) ? args[i+2] : args[i+1];
+nbArr[nbArr.length] = img;
+}
+} else if (event == "out" ) {
+for (i=0; i < document.MM_nbOver.length; i++) {
+img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
+} else if (event == "down") {
+if ((nbArr = document[grpName]) != null)
+for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
+document[grpName] = nbArr = new Array();
+for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
+if (!img.MM_up) img.MM_up = img.src;
+img.src = img.MM_dn = args[i+1];
+nbArr[nbArr.length] = img;
+} }
+}
+
+
+/* Calendario */
+var weekend = [0,6];
+var weekendColor = "#DDEEFF";
+var fontface = "Arial, Helvetica, sans-serif";
+var fontsize = 2;
+
+var gNow = new Date();
+var ggWinCal;
+isNav = (navigator.appName.indexOf("Netscape") != -1) ? true : false;
+isIE = (navigator.appName.indexOf("Microsoft") != -1) ? true : false;
+
+Calendar.Months = ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio",
+"Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
+
+Calendar.DOMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+Calendar.lDOMonth = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+
+function Calendar(p_item, p_WinCal, p_month, p_year, p_format) {
+       if ((p_month == null) && (p_year == null))      return;
+
+       if (p_WinCal == null)
+               this.gWinCal = ggWinCal;
+       else
+               this.gWinCal = p_WinCal;
+       
+       if (p_month == null) {
+               this.gMonthName = null;
+               this.gMonth = null;
+               this.gYearly = true;
+       } else {
+               this.gMonthName = Calendar.get_month(p_month);
+               this.gMonth = new Number(p_month);
+               this.gYearly = false;
+       }
+
+       this.gYear = p_year;
+       this.gFormat = p_format;
+       this.gBGColor = "white";
+       this.gFGColor = "black";
+       this.gTextColor = "black";
+       this.gHeaderColor = "black";
+       this.gReturnItem = p_item;
+}
+
+Calendar.get_month = Calendar_get_month;
+Calendar.get_daysofmonth = Calendar_get_daysofmonth;
+Calendar.calc_month_year = Calendar_calc_month_year;
+Calendar.print = Calendar_print;
+
+function Calendar_get_month(monthNo) {
+       return Calendar.Months[monthNo];
+}
+
+function Calendar_get_daysofmonth(monthNo, p_year) {
+       /* 
+       Check for leap year ..
+       1.Years evenly divisible by four are normally leap years, except for... 
+       2.Years also evenly divisible by 100 are not leap years, except for... 
+       3.Years also evenly divisible by 400 are leap years. 
+       */
+       if ((p_year % 4) == 0) {
+               if ((p_year % 100) == 0 && (p_year % 400) != 0)
+                       return Calendar.DOMonth[monthNo];
+       
+               return Calendar.lDOMonth[monthNo];
+       } else
+               return Calendar.DOMonth[monthNo];
+}
+
+function Calendar_calc_month_year(p_Month, p_Year, incr) {
+       /* 
+       Will return an 1-D array with 1st element being the calculated month 
+       and second being the calculated year 
+       after applying the month increment/decrement as specified by 'incr' parameter.
+       'incr' will normally have 1/-1 to navigate thru the months.
+       */
+       var ret_arr = new Array();
+       
+       if (incr == -1) {
+               // B A C K W A R D
+               if (p_Month == 0) {
+                       ret_arr[0] = 11;
+                       ret_arr[1] = parseInt(p_Year) - 1;
+               }
+               else {
+                       ret_arr[0] = parseInt(p_Month) - 1;
+                       ret_arr[1] = parseInt(p_Year);
+               }
+       } else if (incr == 1) {
+               // F O R W A R D
+               if (p_Month == 11) {
+                       ret_arr[0] = 0;
+                       ret_arr[1] = parseInt(p_Year) + 1;
+               }
+               else {
+                       ret_arr[0] = parseInt(p_Month) + 1;
+                       ret_arr[1] = parseInt(p_Year);
+               }
+       }
+       
+       return ret_arr;
+}
+
+function Calendar_print() {
+       ggWinCal.print();
+}
+
+function Calendar_calc_month_year(p_Month, p_Year, incr) {
+       /* 
+       Will return an 1-D array with 1st element being the calculated month 
+       and second being the calculated year 
+       after applying the month increment/decrement as specified by 'incr' parameter.
+       'incr' will normally have 1/-1 to navigate thru the months.
+       */
+       var ret_arr = new Array();
+       
+       if (incr == -1) {
+               // B A C K W A R D
+               if (p_Month == 0) {
+                       ret_arr[0] = 11;
+                       ret_arr[1] = parseInt(p_Year) - 1;
+               }
+               else {
+                       ret_arr[0] = parseInt(p_Month) - 1;
+                       ret_arr[1] = parseInt(p_Year);
+               }
+       } else if (incr == 1) {
+               // F O R W A R D
+               if (p_Month == 11) {
+                       ret_arr[0] = 0;
+                       ret_arr[1] = parseInt(p_Year) + 1;
+               }
+               else {
+                       ret_arr[0] = parseInt(p_Month) + 1;
+                       ret_arr[1] = parseInt(p_Year);
+               }
+       }
+       
+       return ret_arr;
+}
+
+// This is for compatibility with Navigator 3, we have to create and discard one object before the prototype object exists.
+new Calendar();
+
+Calendar.prototype.getMonthlyCalendarCode = function() {
+       var vCode = "";
+       var vHeader_Code = "";
+       var vData_Code = "";
+       
+       // Begin Table Drawing code here..
+       vCode = vCode + "<TABLE  CELLSPACING=0 CELPADDING=0 BORDER=0 BGCOLOR=#336699 WIDTH=100% ALIGN=center><TR><TD><TABLE ALIGN=CENTER BORDER=0 CELLSPACING=2 CELPADDING=0 WIDTH=100%>";
+       
+       vHeader_Code = this.cal_header();
+       vData_Code = this.cal_data();
+       vCode = vCode + vHeader_Code + vData_Code;
+       
+       vCode = vCode + "</TABLE></TR></TD></TABLE>";
+       
+       return vCode;
+}
+
+Calendar.prototype.show = function() {
+       var vCode = "";
+       
+       this.gWinCal.document.open();
+
+       // Setup the page...
+       this.wwrite("<html>");
+       this.wwrite("<head><title>Calendario</title>");
+       this.wwrite("</head><style type=text/css>.sin_subrayar { text-decoration: none}</style>");
+       
+       this.wwrite("<body " + 
+               "link=\"" + this.gLinkColor + "\" " + 
+               "bgcolor=\"" + this.gBackGroundColor + "\" " + 
+               "vlink=\"" + this.gLinkColor + "\" " +
+               "alink=\"" + this.gLinkColor + "\" " +
+               "text=\"" + this.gTextColor + "\">");
+
+       // Show navigation buttons
+       var prevMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, -1);
+       var prevMM = prevMMYYYY[0];
+       var prevYYYY = prevMMYYYY[1];
+
+       var nextMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, 1);
+       var nextMM = nextMMYYYY[0];
+       var nextYYYY = nextMMYYYY[1];
+       
+       this.wwrite("<BR><TABLE WIDTH=100% ALIGN=center BORDER=0 BGCOLOR=#336699 CELLPADDING=0 CELLSPACING=0><TR><TD><TABLE BORDER=0 CELLSPACING=2 CELLPADDING=0 ALIGN=center width=100%><TR><TD ALIGN=center BGCOLOR=#DDEEFF>");
+       this.wwrite("<font face='"+fontface+"' size=2><B><A class=sin_subrayar HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)-1) + "', '" + this.gFormat + "'" +
+               ");" +
+               "\"><<</B><\/A></font></TD><TD ALIGN=center BGCOLOR=#DDEEFF>");
+       this.wwrite("<font face='"+fontface+"'  size=2><B><A class=sin_subrayar  HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', '" + prevMM + "', '" + prevYYYY + "', '" + this.gFormat + "'" +
+               ");" +
+               "\"><<\/A></B></font></TD><TD ALIGN=center BGCOLOR=#DDEEFF>");
+       this.wwrite("<font face='"+fontface+"'  size=2>");
+       
+       this.wwriteA("<FONT FACE='" + fontface + "' SIZE=2 color=#336699><B>");
+       this.wwriteA(this.gMonthName + " " + this.gYear);
+       this.wwriteA("</B>");
+
+       this.wwrite("</font></TD><TD ALIGN=center BGCOLOR=#DDEEFF>");
+       this.wwrite("<font face='"+fontface+"' size=2><B><A class=sin_subrayar  HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', '" + nextMM + "', '" + nextYYYY + "', '" + this.gFormat + "'" +
+               ");" +
+               "\">><\/A></B></font></TD><TD ALIGN=center BGCOLOR=#DDEEFF>");
+       this.wwrite("<font face='"+fontface+"'  size=2><B><A class=sin_subrayar  HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)+1) + "', '" + this.gFormat + "'" +
+               ");" +
+               "\">>><\/A></B></font></TD></TR></TABLE></TD></TR></TABLE><BR>");
+
+       // Get the complete calendar code for the month..
+       vCode = this.getMonthlyCalendarCode();
+       this.wwrite(vCode);
+
+       this.wwrite("</font></body></html>");
+       this.gWinCal.document.close();
+}
+
+Calendar.prototype.showY = function() {
+       var vCode = "";
+       var i;
+       var vr, vc, vx, vy;             // Row, Column, X-coord, Y-coord
+       var vxf = 285;                  // X-Factor
+       var vyf = 200;                  // Y-Factor
+       var vxm = 10;                   // X-margin
+       var vym;                                // Y-margin
+       if (isIE)       vym = 75;
+       else if (isNav) vym = 25;
+       
+       this.gWinCal.document.open();
+
+       this.wwrite("<html>");
+       this.wwrite("<head><title>Calendar</title>");
+       this.wwrite("<style type='text/css'>\n<!--");
+       for (i=0; i<12; i++) {
+               vc = i % 3;
+               if (i>=0 && i<= 2)      vr = 0;
+               if (i>=3 && i<= 5)      vr = 1;
+               if (i>=6 && i<= 8)      vr = 2;
+               if (i>=9 && i<= 11)     vr = 3;
+               
+               vx = parseInt(vxf * vc) + vxm;
+               vy = parseInt(vyf * vr) + vym;
+
+               this.wwrite(".lclass" + i + " {position:absolute;top:" + vy + ";left:" + vx + ";}");
+       }
+       this.wwrite("-->\n</style>");
+       this.wwrite("</head>");
+
+       this.wwrite("<body " + 
+               "link=\"" + this.gLinkColor + "\" " + 
+               "vlink=\"" + this.gLinkColor + "\" " +
+               "alink=\"" + this.gLinkColor + "\" " +
+               "text=\"" + this.gTextColor + "\">");
+       this.wwrite("<FONT FACE='" + fontface + "' SIZE=2><B>");
+       this.wwrite("Year : " + this.gYear);
+       this.wwrite("</B><BR>");
+
+       // Show navigation buttons
+       var prevYYYY = parseInt(this.gYear) - 1;
+       var nextYYYY = parseInt(this.gYear) + 1;
+       
+       this.wwrite("<TABLE WIDTH='100%' BORDER=0 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0'><TR><TD ALIGN=center>");
+       this.wwrite("[<A HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', null, '" + prevYYYY + "', '" + this.gFormat + "'" +
+               ");" +
+               "\" alt='Prev Year'><<<\/A>]</TD><TD ALIGN=center>");
+       this.wwrite("[<A HREF=\"javascript:window.print();\">Print</A>]</TD><TD ALIGN=center>");
+       this.wwrite("[<A HREF=\"" +
+               "javascript:window.opener.Build(" + 
+               "'" + this.gReturnItem + "', null, '" + nextYYYY + "', '" + this.gFormat + "'" +
+               ");" +
+               "\">>><\/A>]</TD></TR></TABLE><BR>");
+
+       // Get the complete calendar code for each month..
+       var j;
+       for (i=11; i>=0; i--) {
+               if (isIE)
+                       this.wwrite("<DIV ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");
+               else if (isNav)
+                       this.wwrite("<LAYER ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");
+
+               this.gMonth = i;
+               this.gMonthName = Calendar.get_month(this.gMonth);
+               vCode = this.getMonthlyCalendarCode();
+               this.wwrite(this.gMonthName + "/" + this.gYear + "<BR>");
+               this.wwrite(vCode);
+
+               if (isIE)
+                       this.wwrite("</DIV>");
+               else if (isNav)
+                       this.wwrite("</LAYER>");
+       }
+
+       this.wwrite("</font><BR></body></html>");
+       this.gWinCal.document.close();
+}
+
+Calendar.prototype.wwrite = function(wtext) {
+       this.gWinCal.document.writeln(wtext);
+}
+
+Calendar.prototype.wwriteA = function(wtext) {
+       this.gWinCal.document.write(wtext);
+}
+
+Calendar.prototype.cal_header = function() {
+       var vCode = "";
+       
+       vCode = vCode + "<TR>";
+       vCode = vCode + "<TD ALIGN=center WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Dom</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Lun</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Mar</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Mie</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Jue</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='14%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Vie</B></FONT></TD>";
+       vCode = vCode + "<TD ALIGN=center  WIDTH='16%' BGCOLOR='#336699'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Sab</B></FONT></TD>";
+       vCode = vCode + "</TR>";
+       
+       return vCode;
+}
+
+Calendar.prototype.cal_data = function() {
+       var vDate = new Date();
+       vDate.setDate(1);
+       vDate.setMonth(this.gMonth);
+       vDate.setFullYear(this.gYear);
+
+       var vFirstDay=vDate.getDay();
+       var vDay=1;
+       var vLastDay=Calendar.get_daysofmonth(this.gMonth, this.gYear);
+       var vOnLastDay=0;
+       var vCode = "";
+
+       /*
+       Get day for the 1st of the requested month/year..
+       Place as many blank cells before the 1st day of the month as necessary. 
+       */
+
+       vCode = vCode + "<TR>";
+       for (i=0; i<vFirstDay; i++) {
+               vCode = vCode + "<TD ALIGN=center BGCOLOR=#FFFFFF WIDTH='14%'" + this.write_weekend_string(i) + "><FONT SIZE='2' FACE='" + fontface + "'>&nbsp;</FONT></TD>";
+       }
+
+       // Write rest of the 1st week
+       for (j=vFirstDay; j<7; j++) {
+               vCode = vCode + "<TD ALIGN=center WIDTH='14%'" + this.write_weekend_string(j) + "><FONT SIZE='2' FACE='" + fontface + "'>" + 
+                       "<A HREF='#' " + 
+                               "onClick=\"self.opener.document." + this.gReturnItem + ".value='" + 
+                               this.format_data(vDay) + 
+                               "';self.opener.document." + this.gReturnItem + "H.value='"+this.format_data(vDay)+"';window.close();\">" + 
+                               this.format_day(vDay) + 
+                       "</A>" + 
+                       "</FONT></TD>";
+               vDay=vDay + 1;
+       }
+       vCode = vCode + "</TR>";
+
+       // Write the rest of the weeks
+       for (k=2; k<7; k++) {
+               vCode = vCode + "<TR>";
+
+               for (j=0; j<7; j++) {
+                       vCode = vCode + "<TD ALIGN=center WIDTH='14%'" + this.write_weekend_string(j) + "><FONT SIZE='2' FACE='" + fontface + "'>" + 
+                               "<A HREF='#' " + 
+                                       "onClick=\"self.opener.document." + this.gReturnItem + ".value='" + 
+                                       this.format_data(vDay) + 
+                                       "';self.opener.document." + this.gReturnItem + "H.value='"+this.format_data(vDay)+"';window.close();\">" + 
+                               this.format_day(vDay) + 
+                               "</A>" + 
+                               "</FONT></TD>";
+                       vDay=vDay + 1;
+
+                       if (vDay > vLastDay) {
+                               vOnLastDay = 1;
+                               break;
+                       }
+               }
+
+               if (j == 6)
+                       vCode = vCode + "</TR>";
+               if (vOnLastDay == 1)
+                       break;
+       }
+       
+       // Fill up the rest of last week with proper blanks, so that we get proper square blocks
+       for (m=1; m<(7-j); m++) {
+               if (this.gYearly)
+                       vCode = vCode + "<TD ALIGN=center WIDTH='14%'" + this.write_weekend_string(j+m) + 
+                       "><FONT SIZE='2' FACE='" + fontface + "' COLOR='gray'>&nbsp;</FONT></TD>";
+               else
+                       vCode = vCode + "<TD ALIGN=center WIDTH='14%'" + this.write_weekend_string(j+m) + 
+                       "><FONT SIZE='2' FACE='" + fontface + "' COLOR='gray'>" + m + "</FONT></TD>";
+       }
+       
+       return vCode;
+}
+
+Calendar.prototype.format_day = function(vday) {
+       var vNowDay = gNow.getDate();
+       var vNowMonth = gNow.getMonth();
+       var vNowYear = gNow.getFullYear();
+
+       if (vday == vNowDay && this.gMonth == vNowMonth && this.gYear == vNowYear)
+               return ("<FONT COLOR=\"RED\"><B>" + vday + "</B></FONT>");
+       else
+               return (vday);
+}
+
+Calendar.prototype.write_weekend_string = function(vday) {
+       var i;
+
+       // Return special formatting for the weekend day.
+       for (i=0; i<weekend.length; i++) {
+               if (vday == weekend[i])
+                       return (" BGCOLOR=\"" + weekendColor + "\"");
+       }
+       
+       return (" BGCOLOR='#FFFFFF'");
+}
+
+Calendar.prototype.format_data = function(p_day) {
+       var vData;
+       var vMonth = 1 + this.gMonth;
+       vMonth = (vMonth.toString().length < 2) ? "0" + vMonth : vMonth;
+       var vMon = Calendar.get_month(this.gMonth).substr(0,3).toUpperCase();
+       var vFMon = Calendar.get_month(this.gMonth).toUpperCase();
+       var vY4 = new String(this.gYear);
+       var vY2 = new String(this.gYear.substr(2,2));
+       var vDD = (p_day.toString().length < 2) ? "0" + p_day : p_day;
+
+       switch (this.gFormat) {
+               case "MM\/DD\/YYYY" :
+                       vData = vMonth + "\/" + vDD + "\/" + vY4;
+                       break;
+               case "MM\/DD\/YY" :
+                       vData = vMonth + "\/" + vDD + "\/" + vY2;
+                       break;
+               case "MM-DD-YYYY" :
+                       vData = vMonth + "-" + vDD + "-" + vY4;
+                       break;
+               case "MM-DD-YY" :
+                       vData = vMonth + "-" + vDD + "-" + vY2;
+                       break;
+
+               case "DD\/MON\/YYYY" :
+                       vData = vDD + "\/" + vMon + "\/" + vY4;
+                       break;
+               case "DD\/MON\/YY" :
+                       vData = vDD + "\/" + vMon + "\/" + vY2;
+                       break;
+               case "DD-MON-YYYY" :
+                       vData = vDD + "-" + vMon + "-" + vY4;
+                       break;
+               case "DD-MON-YY" :
+                       vData = vDD + "-" + vMon + "-" + vY2;
+                       break;
+
+               case "DD\/MONTH\/YYYY" :
+                       vData = vDD + "\/" + vFMon + "\/" + vY4;
+                       break;
+               case "DD\/MONTH\/YY" :
+                       vData = vDD + "\/" + vFMon + "\/" + vY2;
+                       break;
+               case "DD-MONTH-YYYY" :
+                       vData = vDD + "-" + vFMon + "-" + vY4;
+                       break;
+               case "DD-MONTH-YY" :
+                       vData = vDD + "-" + vFMon + "-" + vY2;
+                       break;
+
+               case "DD\/MM\/YYYY" :
+                       vData = vDD + "\/" + vMonth + "\/" + vY4;
+                       break;
+               case "DD\/MM\/YY" :
+                       vData = vDD + "\/" + vMonth + "\/" + vY2;
+                       break;
+               case "DD-MM-YYYY" :
+                       vData = vDD + "-" + vMonth + "-" + vY4;
+                       break;
+               case "DD-MM-YY" :
+                       vData = vDD + "-" + vMonth + "-" + vY2;
+                       break;
+
+               default :
+                       vData = vMonth + "\/" + vDD + "\/" + vY4;
+       }
+
+       return vData;
+}
+
+function Build(p_item, p_month, p_year, p_format) {
+       var p_WinCal = ggWinCal;
+       gCal = new Calendar(p_item, p_WinCal, p_month, p_year, p_format);
+
+       // Customize your Calendar here..
+       gCal.gBGColor="white";
+       gCal.gBackGroundColor="white";
+       gCal.gLinkColor="black";
+       gCal.gTextColor="black";
+       gCal.gHeaderColor="#FFFFFF";
+
+       // Choose appropriate show function
+       if (gCal.gYearly)       gCal.showY();
+       else    gCal.show();
+}
+
+function show_calendar() {
+       /* 
+               p_month : 0-11 for Jan-Dec; 12 for All Months.
+               p_year  : 4-digit year
+               p_format: Date format (mm/dd/yyyy, dd/mm/yy, ...)
+               p_item  : Return Item.
+       */
+
+       p_item = arguments[0];
+       if (arguments[1] == null)
+               p_month = new String(gNow.getMonth());
+       else
+               p_month = arguments[1];
+       if (arguments[2] == "" || arguments[2] == null)
+               p_year = new String(gNow.getFullYear().toString());
+       else
+               p_year = arguments[2];
+       if (arguments[3] == null)
+               p_format = "DD/MM/YYYY";
+       else
+               p_format = arguments[3];
+
+       vWinCal = window.open("", "Calendar", 
+               "width=250,height=250,status=no,resizable=no,top=200,left=200");
+       vWinCal.opener = self;
+       ggWinCal = vWinCal;
+
+       Build(p_item, p_month, p_year, p_format);
+}
+/*
+Yearly Calendar Code Starts here
+*/
+function show_yearly_calendar(p_item, p_year, p_format) {
+       // Load the defaults..
+       if (p_year == null || p_year == "")
+               p_year = new String(gNow.getFullYear().toString());
+       if (p_format == null || p_format == "")
+               p_format = "MM/DD/YYYY";
+
+       var vWinCal = window.open("", "Calendar", "scrollbars=yes");
+       vWinCal.opener = self;
+       ggWinCal = vWinCal;
+
+       Build(p_item, null, p_year, p_format);
+}
+