cleanup screenshot html
add location to screenshot metadata
This commit is contained in:
@@ -660,8 +660,9 @@ void Profile::LoadGeneralDataFromNode( const XNode* pNode )
|
|||||||
CString sStyle;
|
CString sStyle;
|
||||||
if( !style->GetAttrValue( "Style", sStyle ) )
|
if( !style->GetAttrValue( "Style", sStyle ) )
|
||||||
WARN_AND_CONTINUE;
|
WARN_AND_CONTINUE;
|
||||||
|
|
||||||
Style s = GAMEMAN->GameAndStringToStyle( g, sStyle );
|
Style s = GAMEMAN->GameAndStringToStyle( g, sStyle );
|
||||||
|
if( s == STYLE_INVALID )
|
||||||
|
WARN_AND_CONTINUE;
|
||||||
|
|
||||||
style->GetValue( m_iNumSongsPlayedByStyle[s] );
|
style->GetValue( m_iNumSongsPlayedByStyle[s] );
|
||||||
}
|
}
|
||||||
@@ -1355,13 +1356,16 @@ void Profile::LoadScreenshotDataFromNode( const XNode* pNode )
|
|||||||
Screenshot ss;
|
Screenshot ss;
|
||||||
|
|
||||||
if( !(*screenshot)->GetChildValue("FileName",ss.sFileName) )
|
if( !(*screenshot)->GetChildValue("FileName",ss.sFileName) )
|
||||||
WARN_AND_CONTINUE;
|
WARN;
|
||||||
|
|
||||||
if( !(*screenshot)->GetChildValue("MD5",ss.sMD5) )
|
if( !(*screenshot)->GetChildValue("MD5",ss.sMD5) )
|
||||||
WARN_AND_CONTINUE;
|
WARN;
|
||||||
|
|
||||||
if( !(*screenshot)->GetChildValue("Time",(int&)ss.time) ) // time_t is a signed long on Win32. Is this ok on other platforms?
|
if( !(*screenshot)->GetChildValue("Time",(int&)ss.time) ) // time_t is a signed long on Win32. Is this ok on other platforms?
|
||||||
WARN_AND_CONTINUE;
|
WARN;
|
||||||
|
|
||||||
|
if( !(*screenshot)->GetChildValue("Location",ss.sLocation) )
|
||||||
|
WARN;
|
||||||
|
|
||||||
m_vScreenshots.push_back( ss );
|
m_vScreenshots.push_back( ss );
|
||||||
}
|
}
|
||||||
@@ -1386,6 +1390,7 @@ XNode* Profile::SaveScreenshotDataCreateNode() const
|
|||||||
pScreenshotNode->AppendChild( "FileName", ss.sFileName );
|
pScreenshotNode->AppendChild( "FileName", ss.sFileName );
|
||||||
pScreenshotNode->AppendChild( "MD5", ss.sMD5);
|
pScreenshotNode->AppendChild( "MD5", ss.sMD5);
|
||||||
pScreenshotNode->AppendChild( "Time", (int) ss.time);
|
pScreenshotNode->AppendChild( "Time", (int) ss.time);
|
||||||
|
pScreenshotNode->AppendChild( "Location", ss.sLocation);
|
||||||
}
|
}
|
||||||
|
|
||||||
return pNode;
|
return pNode;
|
||||||
|
|||||||
@@ -157,6 +157,7 @@ public:
|
|||||||
CString sFileName; // no directory part - just the file name
|
CString sFileName; // no directory part - just the file name
|
||||||
CString sMD5; // MD5 hash of the screenshot file
|
CString sMD5; // MD5 hash of the screenshot file
|
||||||
time_t time; // return value of time() when screenshot was taken
|
time_t time; // return value of time() when screenshot was taken
|
||||||
|
CString sLocation; // location name where this screenshot was taken
|
||||||
};
|
};
|
||||||
vector<Screenshot> m_vScreenshots;
|
vector<Screenshot> m_vScreenshots;
|
||||||
void AddScreenshot( Screenshot screenshot );
|
void AddScreenshot( Screenshot screenshot );
|
||||||
|
|||||||
@@ -911,6 +911,7 @@ void PrintScreenshot( RageFile &f, const Profile::Screenshot &ss )
|
|||||||
TABLE_LINE2( "File", ss.sFileName );
|
TABLE_LINE2( "File", ss.sFileName );
|
||||||
TABLE_LINE2( "MD5", ss.sMD5 );
|
TABLE_LINE2( "MD5", ss.sMD5 );
|
||||||
TABLE_LINE2( "Time", (CString)ctime(&ss.time) );
|
TABLE_LINE2( "Time", (CString)ctime(&ss.time) );
|
||||||
|
TABLE_LINE2( "Location", ss.sLocation );
|
||||||
|
|
||||||
END_TABLE;
|
END_TABLE;
|
||||||
|
|
||||||
@@ -923,15 +924,39 @@ void PrintScreenshots( RageFile &f, const Profile *pProfile, CString sTitle, CSt
|
|||||||
{
|
{
|
||||||
PRINT_OPEN(f, sTitle );
|
PRINT_OPEN(f, sTitle );
|
||||||
{
|
{
|
||||||
PRINT_OPEN(f, "Less Than 1 Month Old" );
|
CString sCurrentMonth;
|
||||||
|
bool bFirstMonth = true;
|
||||||
|
|
||||||
|
for( int i = (int)pProfile->m_vScreenshots.size()-1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
for( unsigned i=0; i<pProfile->m_vScreenshots.size(); i++ )
|
Profile::Screenshot ss = pProfile->m_vScreenshots[i];
|
||||||
|
tm* new_time = localtime( &ss.time );
|
||||||
|
int iYear = new_time->tm_year+1900;
|
||||||
|
int iMonth = new_time->tm_mon+1;
|
||||||
|
CString sNewMonth = ssprintf("%02d/%d", iMonth, iYear );
|
||||||
|
|
||||||
|
if( sNewMonth != sCurrentMonth )
|
||||||
{
|
{
|
||||||
const Profile::Screenshot &ss = pProfile->m_vScreenshots[i];
|
if( !bFirstMonth )
|
||||||
PrintScreenshot( f, ss );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
PRINT_CLOSE(f);
|
PRINT_CLOSE(f);
|
||||||
|
PRINT_OPEN(f, sNewMonth, bFirstMonth);
|
||||||
|
}
|
||||||
|
PrintScreenshot( f, ss );
|
||||||
|
|
||||||
|
sCurrentMonth = sNewMonth;
|
||||||
|
bFirstMonth = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( pProfile->m_vScreenshots.empty() )
|
||||||
|
{
|
||||||
|
BEGIN_TABLE(1);
|
||||||
|
TABLE_LINE1("empty");
|
||||||
|
END_TABLE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
PRINT_CLOSE(f);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
PRINT_CLOSE(f);
|
PRINT_CLOSE(f);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1284,6 +1284,7 @@ void ScreenEvaluation::Input( const DeviceInput& DeviceI, const InputEventType t
|
|||||||
screenshot.sFileName = sFileName;
|
screenshot.sFileName = sFileName;
|
||||||
screenshot.sMD5 = CRYPTMAN->GetMD5( sPath );
|
screenshot.sMD5 = CRYPTMAN->GetMD5( sPath );
|
||||||
screenshot.time = time(NULL);
|
screenshot.time = time(NULL);
|
||||||
|
screenshot.sLocation = PREFSMAN->m_sMachineName;
|
||||||
pProfile->AddScreenshot( screenshot );
|
pProfile->AddScreenshot( screenshot );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user