Visualizzazione dei risultati da 1 a 3 su 3

Discussione: fuso orario

  1. #1

    fuso orario

    mi scuso in anticipo per la mia incompertenza riguardo a questo linguaggio di programmazione, ma essendo un grafico sto progettando un sito in flash in cui ho pensato di inserici degli orologi con diversi fusi orari ora ho trovato un component per flash-mx realizzato presumibilmente in php!! dico presumibilmente perchè è cio' che presumo ma non ne sono certo....questo component funziona meravigliosamente solo che non riesco a riprogrammarlo per un orario differente dall'orario del server ospitante...in altre parole vorrei dirgli di andare in dietro di 7 ore rispetto all'orario del server ma non sono in grado d'interpetrare il codice, mi aiutereste dandomi un minimo di spiegazioni??

    ecco il codice del component:

    #initclip
    SS_clock = function () {
    this.init ();
    };
    SS_clock.prototype = MovieClip.prototype;
    Object.registerClass ("SS_clock", SS_clock);
    // initialize obj
    SS_clock.prototype.init = function () {
    this.bounding_box._visible = 0;
    this.w = this._width;
    this.createEmptyMovieClip ("clock", 1);
    if (this.$large)
    {
    this.clock.createEmptyMovieClip ("line0", 1);
    this.rectangle (this.clock.line0, 49, -2, 4, 8, this.$strokeColor);
    for (var a = 1; a < 12; a++)
    {
    this.clock.line0.duplicateMovieClip ("line" + a, a + 1, {_rotation:a * 30});
    }
    }
    if (this.$small)
    {
    this.clock.createEmptyMovieClip ("line_b0", 100);
    this.rectangle (this.clock.line_b0, 52, 0, 1, 5, this.$strokeColor);
    for (var a = 0; a < 60; a++)
    {
    this.clock.line_b0.duplicateMovieClip ("line_b" + a, a + (101), {_rotation:a * 6});
    }
    }
    if(this.$rounded)
    {
    this.clock.drawCircle (0, 0, this._width/2, 2, this.$strokeColor, this.$fillColor, 100);
    }
    // --------------------
    // lancetta dei secondi
    // --------------------
    this.clock.createEmptyMovieClip ("secondi", 1000);
    this.rectangle (this.clock.secondi, -5, 0, 1, 50, this.$strokeColor);
    // --------------------
    // lancetta dei minuti
    // --------------------
    this.clock.createEmptyMovieClip ("minuti", 1001);
    this.rectangle (this.clock.minuti, -5, -1.5, 3, 50, this.$strokeColor);
    // ------------------
    // lancetta delle ore
    // ------------------
    this.clock.createEmptyMovieClip ("ore", 1003);
    this.rectangle (this.clock.ore, -5, -2.5, 5, 35, this.$strokeColor);
    // adjust size
    this._width = this._height = this.w

    if(this.$_enableShadow)
    {
    this.drawShadow(this);
    }
    // facciamo partire l'orologio
    this.startClock (this);
    this.$mainTime = setInterval (this.startClock, this.$cont == true ? 10 : 1000, this);
    this.$_theInt = this.$cont == true ? 10 : 1000
    };
    // ---------------------------------------------
    // PUBLIC METHODS
    // ---------------------------------------------
    SS_clock.prototype.changeInterval = function(newInterval)
    {
    clearInterval(this.$mainTime);
    this.$mainTime = setInterval (this.startClock, newInterval, this);
    this.$_theInt = newInterval;
    }
    SS_clock.prototype.getInterval = function()
    {
    return this.$_theInt;
    }
    // show the shadows
    SS_clock.prototype.drawShadow = function(obj)
    {
    obj.clock.createEmptyMovieClip ("minuti_2", 800);
    obj.rectangle (this.clock.minuti_2, -5, -1.5, 3, 50, obj.$_shadowColor);
    obj.clock.createEmptyMovieClip ("ore_2", 700);
    obj.rectangle (this.clock.ore_2, -5, -2.5, 5, 35, obj.$_shadowColor);
    obj.clock.createEmptyMovieClip ("secondi_2", 900);
    obj.rectangle (this.clock.secondi_2, -5, 0, 1, 50, obj.$_shadowColor);
    obj.clock.secondi_2._alpha = obj.clock.minuti_2._alpha = obj.clock.ore_2._alpha = obj.$_shadowAlpha
    }
    // hide shadows
    SS_clock.prototype.killShadow = function()
    {
    this.$_enableShadow = false;
    unloadMovie(this.clock.secondi_2);
    unloadMovie(this.clock.minuti_2);
    unloadMovie(this.clock.ore_2);
    }
    SS_clock.prototype.start = function()
    {
    this.$mainTime = setInterval (this.startClock, this.$cont == true ? 10 : 1000, this);
    }
    // start the clock
    SS_clock.prototype.startClock = function (obj) {
    var d = new Date ();
    var s = d.getSeconds ();
    var mm = d.getMilliseconds ();
    var m = d.getMinutes ();
    var h = d.getHours ();
    h = h >= 12 ? h - 12 : h;
    var s1 = (s + (mm / 1000)) * 6;
    var m1 = (m + (s1 / 360)) * 6;
    var h1 = (h + (m1 / 360)) * 30;
    obj.clock.secondi._rotation = (s1) - 90;
    obj.clock.minuti._rotation = (m1) - 90;
    obj.clock.ore._rotation = (h1) - 90;
    if(obj.$_enableShadow)
    {
    obj.clock.secondi_2._rotation = obj.clock.secondi._rotation;
    obj.clock.minuti_2._rotation = obj.clock.minuti._rotation;
    obj.clock.ore_2._rotation = obj.clock.ore._rotation;
    obj.clock.secondi_2._x = obj.clock.secondi._x + 2
    obj.clock.secondi_2._y = obj.clock.secondi._y + 2
    obj.clock.minuti_2._x = obj.clock.minuti._x + 1.5
    obj.clock.minuti_2._y = obj.clock.minuti._y + 1.5
    obj.clock.ore_2._x = obj.clock.ore._x + 1.5
    obj.clock.ore_2._y = obj.clock.ore._y + 1.5
    }
    };
    SS_clock.prototype.stop = function()
    {
    clearInterval(this.$mainTime);
    }
    /*
    ---------------------
    PRIVATE METHODS
    ---------------------
    */
    SS_clock.prototype.drawCircle = function (thex, they, theradius, lineW, lineColor, fillColor, fillAlpha) {
    var x, y, r, u, v;
    x = thex;
    y = they;
    r = theradius;
    u = r * 0.4086;
    v = r * 0.7071;
    if (lineW != '')
    {
    this.lineStyle (lineW, lineColor, 100);
    }
    if (fillColor != undefined || fillColor != '')
    {
    this.beginFill (fillColor, fillAlpha);
    }
    this.moveTo (x - r, y);
    this.curveTo (x - r, y - u, x - v, y - v);
    this.curveTo (x - u, y - r, x, y - r);
    this.curveTo (x + u, y - r, x + v, y - v);
    this.curveTo (x + r, y - u, x + r, y);
    this.curveTo (x + r, y + u, x + v, y + v);
    this.curveTo (x + u, y + r, x, y + r);
    this.curveTo (x - u, y + r, x - v, y + v);
    this.curveTo (x - r, y + u, x - r, y);
    if (fillColor != undefined || fillColor != '')
    {
    this.endFill ();
    }
    };
    SS_clock.prototype.rectangle = function (obj, x, y, h, w, rgb) {
    obj.lineStyle (0, 0, 0);
    obj.beginFill (rgb, 100);
    obj.moveTo (x, y);
    obj.lineTo (x + w, y);
    obj.lineTo (x + w, y + h);
    obj.lineTo (x, y + h);
    obj.lineTo (x, y);
    obj.endFill ();
    };
    #endinitclip

    ringrazio tutti in anticipo!!
    NAN V' PENZ PREPT

  2. #2
    questa è la parte di codice da esaminare.....

    obj.clock.secondi._rotation = (s1) - 90;
    obj.clock.minuti._rotation = (m1) - 90;
    :mavieni: obj.clock.ore._rotation = (h1) - 90; :mavieni:

    la chiave del problema sta tutta qui, basta cambiare il valore -90, che rappresenta l'angolazione delle lancette dell'orogio, così si regola a seconda del fuso orario che si vuol visualizzare, come un orolo a lancette manuale...
    un ora in avanti -60
    due ore in avanti -30
    tre ore in avanti -360
    quattro ore -330
    cinque -300
    sei -270
    cinque ore in dietro -240
    quattro in dietro -210
    tre -180
    due -150
    una -120

    eh eh a volte chi fa da se fa per TRE!!!

    ciao a tutti!!!
    NAN V' PENZ PREPT

  3. #3
    a me sembra che venga usato l'oggetto Date di Flash che legge l'ora della macchina su cui viene eseguito... prova a sportare l'orologio del tuo pc!

    codice:
    var d = new Date (); 
    var s = d.getSeconds (); 
    var mm = d.getMilliseconds (); 
    var m = d.getMinutes (); 
    var h = d.getHours ();
    potresti modificare h e metterlo sette ore indietro... ma poi sarebbe indietro rispetto all'ora del pc e non a quella del server!
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.