Comunidad de diseño web y desarrollo en internet online

Es posible averiguar la semana del año?

Citar            
MensajeEscrito el 01 Nov 2010 01:11 am
Solo eso, la semana del año en la que estamos a la hora de ejecutar la pelicula

Por adrianmdp

13 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Nov 2010 07:20 pm
... si es posible pero es algo complicado...

Código ActionScript :

/**
 *   ISO-8601 Week Number
 *   Devuelve el numero de semana de una fecha,
 *   como lo hace date("W") en PHP.
 *
 *   por Rick McCarty, 1999
 *   Adaptedo a CVI por R.Bozzolo, 2006
 *   Adaptedo a AS2 por A.Colonna, 2008
 *      Traducido por penHolder para Cristalab, 2010 :P
 */
function calculateISO8601WeekNumber(d:Date) {
   // 1) Convertir date a Y M D
   var Y:Number = d.getFullYear();
   var M:Number = d.getMonth();
   var D:Number = d.getDate();
   
   // 2) Analizar si es año bisiesto
   var isLeapYear:Boolean = (Y % 4 == 0  and  Y % 100 != 0) or Y % 400 == 0;
   
   // 3) Saber si Y-1 es año bisiesto
   var lastYear:Number = Y - 1;
   var lastYearIsLeap:Boolean = (lastYear % 4 == 0  and  lastYear % 100 != 0) or lastYear % 400 == 0;
   
   // 4) Encontrar el número del día del año para Y M D
   var month = [0,31,59,90,120,151,181,212,243,273,304,334];
   var DayOfYearNumber:Number = D + month[M];
   if(isLeapYear and M > 1)
      DayOfYearNumber++;
   
   // 5) El primer día del año (monday = 1, sunday = 7)
   var YY:Number = (Y-1) % 100; // ...
   var C:Number = (Y-1) - YY; // get century
   var G:Number = YY + YY/4; // ...
      var Jan1Weekday:Number = 1 + (((((C / 100) % 4) * 5) + G) % 7);
   
   // 6) El día de semana Y M D
   var H:Number = DayOfYearNumber + (Jan1Weekday - 1);
      var Weekday:Number = 1 + ((H -1) % 7);
   
   var YearNumber = Y;
   var WeekNumber;

   // 7) Saber si la fecha esta en al año pasado
   if (DayOfYearNumber <= (8-Jan1Weekday) and Jan1Weekday > 4)
   {
      trace('La fecha esta dentro de la última semana del año pasado.');
      YearNumber = Y - 1;
      if (Jan1Weekday == 5 or (Jan1Weekday == 6 and isLeapYear))
      {
         WeekNumber = 53;
      } else
      { 
         WeekNumber = 52;
      }
   }
   
   // 8) Saber si es la semana del año próximo
   if (YearNumber == Y)
   {
      var I:Number = 365;
      if (isLeapYear)
      { 
         var I:Number = 366;
      }
      if (I - DayOfYearNumber < 4 - Weekday)
      {
         trace(La fecha esta dentro de la primer semana del año próximo.');
         YearNumber = Y + 1;
         WeekNumber = 1;
      }
   }
   
   // 9) Ahora si esta en el año corriente
   if (YearNumber == Y)
   {
      trace('La fecha esta dentro del corriente año.');
      var J:Number = DayOfYearNumber + (7 - Weekday) + (Jan1Weekday -1);
      WeekNumber = J / 7;
      if (Jan1Weekday > 4)
      {
         WeekNumber--;
      }
   }
   
   return WeekNumber;
};

Por penHolder

Claber

4661 de clabLevel

39 tutoriales
2 articulos

Genero:Masculino   Premio_Secretos

| mdz |

firefox
Citar            
MensajeEscrito el 03 Nov 2010 02:22 pm
Muchas gracias, me lo guardo para cuando lo vuelva a necesitar... lo resolvimos con php y lo leemos desde el swf. Gracias otra vez.

Por adrianmdp

13 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.