Fixing time offset but day offset is actual not working
This commit is contained in:
		
							parent
							
								
									9e03b3cb4a
								
							
						
					
					
						commit
						a5240dd3e5
					
				| 
						 | 
					@ -28,9 +28,10 @@ FormatedData formatValue(GwApi::BoatValue *value, CommonData &commondata){
 | 
				
			||||||
    char buffer[bsize+1];
 | 
					    char buffer[bsize+1];
 | 
				
			||||||
    buffer[0]=0;
 | 
					    buffer[0]=0;
 | 
				
			||||||
    //########################################################
 | 
					    //########################################################
 | 
				
			||||||
 | 
					    time_t tv = 0;
 | 
				
			||||||
    if (value->getFormat() == "formatDate"){
 | 
					    if (value->getFormat() == "formatDate"){
 | 
				
			||||||
        time_t tv=tNMEA0183Msg::daysToTime_t(value->value);
 | 
					 | 
				
			||||||
        tmElements_t parts;
 | 
					        tmElements_t parts;
 | 
				
			||||||
 | 
					        time_t tv=tNMEA0183Msg::daysToTime_t(value->value);
 | 
				
			||||||
        tNMEA0183Msg::breakTime(tv,parts);
 | 
					        tNMEA0183Msg::breakTime(tv,parts);
 | 
				
			||||||
        if(usesimudata == false) { 
 | 
					        if(usesimudata == false) { 
 | 
				
			||||||
            if(String(dateFormat) == "DE"){
 | 
					            if(String(dateFormat) == "DE"){
 | 
				
			||||||
| 
						 | 
					@ -58,13 +59,24 @@ FormatedData formatValue(GwApi::BoatValue *value, CommonData &commondata){
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    //########################################################
 | 
					    //########################################################
 | 
				
			||||||
    else if(value->getFormat() == "formatTime"){
 | 
					    else if(value->getFormat() == "formatTime"){
 | 
				
			||||||
 | 
					        double timeInSeconds;
 | 
				
			||||||
        double inthr;
 | 
					        double inthr;
 | 
				
			||||||
        double intmin;
 | 
					        double intmin;
 | 
				
			||||||
        double intsec;
 | 
					        double intsec;
 | 
				
			||||||
        double val;
 | 
					        double val;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if(timeZone > 0){
 | 
				
			||||||
 | 
					            timeInSeconds = value->value + timeZone * 3600;
 | 
				
			||||||
 | 
					            timeInSeconds = int(timeInSeconds) % 86400;                 // Reduce to one day (86400s)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else{
 | 
				
			||||||
 | 
					            timeInSeconds = value->value + timeZone * 3600 + 86400;     // Add one day
 | 
				
			||||||
 | 
					            timeInSeconds = int(timeInSeconds) % 86400;                 // Reduce to one day (86400s)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if(usesimudata == false) {    
 | 
					        if(usesimudata == false) {    
 | 
				
			||||||
            val=modf(value->value/3600.0,&inthr);
 | 
					            val=modf(timeInSeconds/3600.0,&inthr);
 | 
				
			||||||
            inthr += timeZone; 
 | 
					 | 
				
			||||||
            val=modf(val*3600.0/60.0,&intmin);
 | 
					            val=modf(val*3600.0/60.0,&intmin);
 | 
				
			||||||
            modf(val*60.0,&intsec);
 | 
					            modf(val*60.0,&intsec);
 | 
				
			||||||
            snprintf(buffer,bsize,"%02.0f:%02.0f:%02.0f",inthr,intmin,intsec);
 | 
					            snprintf(buffer,bsize,"%02.0f:%02.0f:%02.0f",inthr,intmin,intsec);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue