Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
5634b564
Commit
5634b564
authored
Aug 15, 2015
by
woogerboy21
Browse files
Merge pull request #1378 from woogerboy21/last_login
Add last_login column to user table and populate upon login
parents
98fa9eb1
bb0b626c
Changes
6
Hide whitespace changes
Inline
Side-by-side
common/server.cpp
View file @
5634b564
...
...
@@ -179,6 +179,7 @@ AuthenticationResult Server::loginUser(Server_ProtocolHandler *session, QString
databaseInterface
->
updateUsersClientID
(
name
,
clientid
);
}
databaseInterface
->
updateUsersLastLoginTime
(
name
);
se
=
Server_ProtocolHandler
::
prepareSessionEvent
(
event
);
sendIsl_SessionEvent
(
*
se
);
delete
se
;
...
...
common/server_database_interface.h
View file @
5634b564
...
...
@@ -42,6 +42,7 @@ public:
virtual
bool
registerUser
(
const
QString
&
/* userName */
,
const
QString
&
/* realName */
,
ServerInfo_User_Gender
const
&
/* gender */
,
const
QString
&
/* password */
,
const
QString
&
/* emailAddress */
,
const
QString
&
/* country */
,
bool
/* active = false */
)
{
return
false
;
}
virtual
bool
activateUser
(
const
QString
&
/* userName */
,
const
QString
&
/* token */
)
{
return
false
;
}
virtual
void
updateUsersClientID
(
const
QString
&
/* userName */
,
const
QString
&
/* userClientID */
)
{
}
virtual
void
updateUsersLastLoginTime
(
const
QString
&
/* userName */
)
{
}
enum
LogMessage_TargetType
{
MessageTargetRoom
,
MessageTargetGame
,
MessageTargetChat
,
MessageTargetIslRoom
};
virtual
void
logMessage
(
const
int
/* senderId */
,
const
QString
&
/* senderName */
,
const
QString
&
/* senderIp */
,
const
QString
&
/* logMessage */
,
LogMessage_TargetType
/* targetType */
,
const
int
/* targetId */
,
const
QString
&
/* targetName */
)
{
};
...
...
servatrice/migrations/servatrice_0005_to_0006.sql
0 → 100644
View file @
5634b564
-- Servatrice db migration from version 5 to version 6
alter
table
cockatrice_users
add
last_login
datetime
not
null
;
UPDATE
cockatrice_schema_version
SET
version
=
6
WHERE
version
=
5
;
servatrice/servatrice.sql
View file @
5634b564
...
...
@@ -20,7 +20,7 @@ CREATE TABLE IF NOT EXISTS `cockatrice_schema_version` (
PRIMARY
KEY
(
`version`
)
)
ENGINE
=
MyISAM
DEFAULT
CHARSET
=
utf8
;
INSERT
INTO
cockatrice_schema_version
VALUES
(
5
);
INSERT
INTO
cockatrice_schema_version
VALUES
(
6
);
CREATE
TABLE
IF
NOT
EXISTS
`cockatrice_decklist_files`
(
`id`
int
(
7
)
unsigned
zerofill
NOT
NULL
auto_increment
,
...
...
@@ -84,6 +84,7 @@ CREATE TABLE IF NOT EXISTS `cockatrice_users` (
`active`
tinyint
(
1
)
NOT
NULL
,
`token`
binary
(
16
)
NOT
NULL
,
`clientid`
varchar
(
15
)
NOT
NULL
,
`last_login`
datetime
NOT
NULL
,
PRIMARY
KEY
(
`id`
),
UNIQUE
KEY
`name`
(
`name`
),
KEY
`token`
(
`token`
),
...
...
servatrice/src/servatrice_database_interface.cpp
View file @
5634b564
...
...
@@ -880,3 +880,14 @@ void Servatrice_DatabaseInterface::updateUsersClientID(const QString &userName,
execSqlQuery
(
query
);
}
void
Servatrice_DatabaseInterface
::
updateUsersLastLoginTime
(
const
QString
&
userName
)
{
if
(
!
checkSql
())
return
;
QSqlQuery
*
query
=
prepareQuery
(
"update {prefix}_users set last_login = NOW() where name = :user_name"
);
query
->
bindValue
(
":user_name"
,
userName
);
execSqlQuery
(
query
);
}
servatrice/src/servatrice_database_interface.h
View file @
5634b564
...
...
@@ -9,7 +9,7 @@
#include
"server.h"
#include
"server_database_interface.h"
#define DATABASE_SCHEMA_VERSION
5
#define DATABASE_SCHEMA_VERSION
6
class
Servatrice
;
...
...
@@ -73,6 +73,7 @@ public:
const
QString
&
password
,
const
QString
&
emailAddress
,
const
QString
&
country
,
QString
&
token
,
bool
active
=
false
);
bool
activateUser
(
const
QString
&
userName
,
const
QString
&
token
);
void
updateUsersClientID
(
const
QString
&
userName
,
const
QString
&
userClientID
);
void
updateUsersLastLoginTime
(
const
QString
&
userName
);
void
logMessage
(
const
int
senderId
,
const
QString
&
senderName
,
const
QString
&
senderIp
,
const
QString
&
logMessage
,
LogMessage_TargetType
targetType
,
const
int
targetId
,
const
QString
&
targetName
);
bool
changeUserPassword
(
const
QString
&
user
,
const
QString
&
oldPassword
,
const
QString
&
newPassword
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment