diff options
| author | James Cook <james@lindenlab.com> | 2010-05-11 17:27:14 -0700 | 
|---|---|---|
| committer | James Cook <james@lindenlab.com> | 2010-05-11 17:27:14 -0700 | 
| commit | 5aa8b5d37eb6824865d09af248aa9d9d518daeb9 (patch) | |
| tree | f8b4b43b30001a6d7968a0b557cd8ab530c15d95 /indra | |
| parent | e2deaf5a14a01020afe4240f33e438a0676ba0ec (diff) | |
Clean up merge, dueling LLDateUtil refactoring
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/lldateutil.cpp | 72 | ||||
| -rw-r--r-- | indra/newview/lldateutil.h | 6 | ||||
| -rw-r--r-- | indra/newview/llfloateravatarpicker.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/tests/lldateutil_test.cpp | 18 | 
4 files changed, 54 insertions, 44 deletions
| diff --git a/indra/newview/lldateutil.cpp b/indra/newview/lldateutil.cpp index 32b8b9662a..ae955b6cad 100644 --- a/indra/newview/lldateutil.cpp +++ b/indra/newview/lldateutil.cpp @@ -59,18 +59,22 @@ static S32 days_from_month(S32 year, S32 month)  	}  } -std::string LLDateUtil::ageFromDate(S32 born_year, -									S32 born_month, -									S32 born_day, -									const LLDate& now) +bool LLDateUtil::dateFromPDTString(LLDate& date, const std::string& str)  { -	LLDate born_date; -	born_date.fromYMDHMS(born_year, born_month, born_day); -	F64 born_date_secs_since_epoch = born_date.secondsSinceEpoch(); -	// Correct for the fact that account creation dates are in Pacific time, -	// == UTC - 8 -	born_date_secs_since_epoch += 8.0 * 60.0 * 60.0; -	born_date.secondsSinceEpoch(born_date_secs_since_epoch); +	S32 month, day, year; +	S32 matched = sscanf(str.c_str(), "%d/%d/%d", &month, &day, &year); +	if (matched != 3) return false; +	date.fromYMDHMS(year, month, day); +	F64 secs_since_epoch = date.secondsSinceEpoch(); +	// Correct for the fact that specified date is in Pacific time, == UTC - 8 +	secs_since_epoch += 8.0 * 60.0 * 60.0; +	date.secondsSinceEpoch(secs_since_epoch); +	return true; +} + +std::string LLDateUtil::ageFromDate(const LLDate& born_date, const LLDate& now) +{ +	S32 born_month, born_day, born_year;  	// explode out to month/day/year again  	born_date.split(&born_year, &born_month, &born_day); @@ -154,13 +158,14 @@ std::string LLDateUtil::ageFromDate(S32 born_year,  	return LLTrans::getString("TodayOld");  } -std::string LLDateUtil::ageFromDate(const std::string& date_string, -									const LLDate& now) +std::string LLDateUtil::ageFromDate(const std::string& date_string, const LLDate& now)  { -	S32 born_month, born_day, born_year; -	S32 matched = sscanf(date_string.c_str(), "%d/%d/%d", &born_month, &born_day, &born_year); -	if (matched != 3) return "???"; -	return ageFromDate(born_year, born_month, born_day, now); +	LLDate born_date; + +	if (!dateFromPDTString(born_date, date_string)) +		return "???"; + +	return ageFromDate(born_date, now);  }  std::string LLDateUtil::ageFromDate(const std::string& date_string) @@ -168,17 +173,22 @@ std::string LLDateUtil::ageFromDate(const std::string& date_string)  	return ageFromDate(date_string, LLDate::now());  } -std::string LLDateUtil::ageFromDateISO(const std::string& date_string, -									   const LLDate& now) -{ -	S32 born_month, born_day, born_year; -	S32 matched = sscanf(date_string.c_str(), "%d-%d-%d", -			&born_year, &born_month, &born_day); -	if (matched != 3) return "???"; -	return ageFromDate(born_year, born_month, born_day, now); -} - -std::string LLDateUtil::ageFromDateISO(const std::string& date_string) -{ -	return ageFromDateISO(date_string, LLDate::now()); -} +//std::string LLDateUtil::ageFromDateISO(const std::string& date_string, +//									   const LLDate& now) +//{ +//	S32 born_month, born_day, born_year; +//	S32 matched = sscanf(date_string.c_str(), "%d-%d-%d", +//			&born_year, &born_month, &born_day); +//	if (matched != 3) return "???"; +//	date.fromYMDHMS(year, month, day); +//	F64 secs_since_epoch = date.secondsSinceEpoch(); +//	// Correct for the fact that specified date is in Pacific time, == UTC - 8 +//	secs_since_epoch += 8.0 * 60.0 * 60.0; +//	date.secondsSinceEpoch(secs_since_epoch); +//	return ageFromDate(born_year, born_month, born_day, now); +//} +// +//std::string LLDateUtil::ageFromDateISO(const std::string& date_string) +//{ +//	return ageFromDateISO(date_string, LLDate::now()); +//} diff --git a/indra/newview/lldateutil.h b/indra/newview/lldateutil.h index a2bfa11ce7..8d41eea511 100644 --- a/indra/newview/lldateutil.h +++ b/indra/newview/lldateutil.h @@ -69,12 +69,12 @@ namespace LLDateUtil  	std::string ageFromDate(const std::string& date_string);  	// As above, for YYYY-MM-DD dates -	std::string ageFromDateISO(const std::string& date_string, const LLDate& now); +	//std::string ageFromDateISO(const std::string& date_string, const LLDate& now);  	// Calls the above with LLDate::now() -	std::string ageFromDateISO(const std::string& date_string); +	//std::string ageFromDateISO(const std::string& date_string); -	std::string ageFromDate(S32 born_year, S32 born_month, S32 born_day, const LLDate& now); +	//std::string ageFromDate(S32 born_year, S32 born_month, S32 born_day, const LLDate& now);  }  #endif diff --git a/indra/newview/llfloateravatarpicker.cpp b/indra/newview/llfloateravatarpicker.cpp index bca9282cec..e0346222c0 100644 --- a/indra/newview/llfloateravatarpicker.cpp +++ b/indra/newview/llfloateravatarpicker.cpp @@ -604,7 +604,7 @@ void LLFloaterAvatarPicker::processResponse(const LLUUID& query_id, const LLSD&  		S32 year, month, day;  		account_created.split(&year, &month, &day);  		std::string age = -			LLDateUtil::ageFromDate(year, month, day, LLDate::now()); +			LLDateUtil::ageFromDate(account_created, LLDate::now());  		columns[2]["column"] = "age";  		columns[2]["value"] = age;  		search_results->addElement(item); diff --git a/indra/newview/tests/lldateutil_test.cpp b/indra/newview/tests/lldateutil_test.cpp index e19983db8f..9ec24eb515 100644 --- a/indra/newview/tests/lldateutil_test.cpp +++ b/indra/newview/tests/lldateutil_test.cpp @@ -190,13 +190,13 @@ namespace tut  			"3 weeks old" );  	} -	template<> template<> -	void dateutil_object_t::test<6>() -	{ -		set_test_name("ISO dates"); -		LLDate now(std::string("2010-01-04T12:00:00Z")); -		ensure_equals("days", -			LLDateUtil::ageFromDateISO("2009-12-13", now), -			"3 weeks old" ); -	} +	//template<> template<> +	//void dateutil_object_t::test<6>() +	//{ +	//	set_test_name("ISO dates"); +	//	LLDate now(std::string("2010-01-04T12:00:00Z")); +	//	ensure_equals("days", +	//		LLDateUtil::ageFromDateISO("2009-12-13", now), +	//		"3 weeks old" ); +	//}  } | 
