#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; }