55 lines
1.8 KiB
C++
55 lines
1.8 KiB
C++
|
#include "user.h"
|
||
|
|
||
|
#include "../../../sdk/include/huagao/brand.h"
|
||
|
#include "../../../sdk/include/huagao/hgscanner_error.h"
|
||
|
#include "../../../sdk/include/sane/sane_ex.h"
|
||
|
|
||
|
|
||
|
|
||
|
static std::string device_opt_json[] = {
|
||
|
"{\"login\":{\"cat\":\"base\",\"group\":\"\\u9ad8\\u7ea7\\u8bbe\\u7f6e\",\"title\":\"\\u7528\\u6237\\u767b\\u5f55\",\"desc\":\"\\u767b\\u5f55\\u7528\\u6237\\u8d26\\u53f7\",\"ver\":0,\"pos\":0,\"fix-id\":39168,\"type\":\"string\",\"unit\":\"none\",\"affect\":0,\"visible\":false,\"enabled\":false,\"size\":64,\"cur\":\"\",\"default\":\"\"},\"logout\":{\"cat\":\"base\",\"group\":\"\\u9ad8\\u7ea7\\u8bbe\\u7f6e\",\"title\":\"\\u7528\\u6237\\u767b\\u51fa\",\"desc\":\"\\u9000\\u51fa\\u767b\\u5f55\\u7528\\u6237\\u8d26\\u53f7\",\"ver\":0,\"pos\":0,\"fix-id\":39169,\"type\":\"string\",\"unit\":\"none\",\"affect\":0,\"visible\":false,\"enabled\":false,\"size\":64,\"cur\":\"\",\"default\":\"\"}}"
|
||
|
};
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
// memory management ...
|
||
|
hguser::hguser() : name_(""), pwd_(""), priv_(USER_PRIVILEGE_COMMON)
|
||
|
{}
|
||
|
hguser::~hguser()
|
||
|
{}
|
||
|
|
||
|
// name and password should encrypt here, FIXED me ...
|
||
|
int hguser::login(const char* name, const char* pwd)
|
||
|
{
|
||
|
name_ = name;
|
||
|
pwd_ = pwd;
|
||
|
|
||
|
if (name_ == ADMIN_NAME && pwd_ == ADMIN_PWD)
|
||
|
priv_ = USER_PRIVILEGE_LOCAL_MGR;
|
||
|
else
|
||
|
{
|
||
|
// higher privilege checks must be more complex, to be implementing ...
|
||
|
}
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
int hguser::logout(const char* name, const char* pwd)
|
||
|
{
|
||
|
if (name == name && pwd_ == pwd)
|
||
|
{
|
||
|
name = "";
|
||
|
pwd_ = "";
|
||
|
priv_ = USER_PRIVILEGE_COMMON;
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
return SCANNER_ERR_ACCESS_DENIED;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
bool hguser::has_privilege(int priv)
|
||
|
{
|
||
|
return priv & priv_ == priv;
|
||
|
}
|