String AuctionListScreen::getTime(String enddate) { String all = enddate; String year = ""; String month = ""; String day = ""; struct tm * cmp_p = new tm; int indexof = all.find("-"); if (indexof > -1) { year = all.substr(0,indexof++).c_str(); all=all.substr(indexof); } indexof = all.find("-"); if (indexof > -1) { month = all.substr(0,indexof++).c_str(); all=all.substr(indexof); day = all; } cmp_p->tm_hour = 23; cmp_p->tm_min = 59; cmp_p->tm_sec = 59; cmp_p->tm_year = Convert::toInt(year)-1900; cmp_p->tm_mon = Convert::toInt(month)-1; cmp_p->tm_mday = Convert::toInt(day); time_t test = mktime(cmp_p); time_t timeleft = test - maTime(); if (timeleft < 0) { //should be set to zero, for now gonna use negative inferred value for testing timeleft = 0; //expired = true; } split_time(timeleft, cmp_p); char buffer[128]; memset(buffer, 0, 128); String days = "Days"; String hours = "Hours"; if (cmp_p->tm_mday == 1) { days = "Days"; } if (cmp_p->tm_hour == 1) { hours = "Hours"; } if (cmp_p->tm_mday == 1) { snprintf(buffer, 128, "%d %s %d %s", cmp_p->tm_mday, days.c_str(), cmp_p->tm_hour, hours.c_str()); } else { snprintf(buffer, 128, "%d %s %d %s", cmp_p->tm_mday, days.c_str(), cmp_p->tm_hour, hours.c_str()); } delete cmp_p; cmp_p = NULL; if (timeleft == 0) { return "Expired"; } return buffer; }
int utcTime() { printf("UTC time:\n"); printf("%s\n", sprint_time(maTime())); return 0; }
/** * \brief This function is used for reading the settings from the settings file */ void SettingsManager::_readSettings() { char settingsFileContent[Model::BUFF_SIZE]; MAUtil::String content; int fileSize = maFileSize(_settingsFile); maFileRead(_settingsFile, settingsFileContent, fileSize); content.append(settingsFileContent, strlen(settingsFileContent)); int offset = 0; int position = content.find("|", offset); _coin = content.substr(offset, position); //read the coin offset = position + 1; position = content.find("|", offset); int day = MAUtil::stringToInteger(content.substr(offset, position - offset), 10); //read the reset day offset = position + 1; position = content.find("|", offset); MAUtil::String dateString = content.substr(offset, position - offset); //read the dateString offset = position + 1; position = content.find("|", offset); MAUtil::String binaryMask = content.substr(offset, position - offset); //read the binary mask offset = position + 1; _debtValue = MAUtil::stringToDouble(content.substr(offset, content.length() - offset)); if(binaryMask == "100") { _showAll = true; _showMonthly = false; _showFromDate = false; } else if(binaryMask == "010") { _showAll = false; _showMonthly = true; _showFromDate = false; } else if(binaryMask == "001") { _showAll = false; _showMonthly = false; _showFromDate = true; } if(_showMonthly) { _date._day = day; struct tm * dateTime = new tm; split_time(maTime(), dateTime); _date._mounth = dateTime->tm_mon + 1; _date._year = dateTime->tm_year + 1900; delete dateTime; } else if(_showFromDate) { offset = 0; position = dateString.find("-", offset); _date._year = MAUtil::stringToInteger(dateString.substr(offset, position), 10); offset = position + 1; position = dateString.find("-", offset); _date._mounth = MAUtil::stringToInteger(dateString.substr(offset, position - offset), 10); offset = position + 1; _date._day = MAUtil::stringToInteger(dateString.substr(offset, dateString.length() - offset), 10); } else if(_showAll) { _date._day = 1; _date._mounth = 1; _date._year = 1601; } }