+ class FACTORY : public BASE_PARSER::FACTORY
+ {
+ public:
+ FACTORY(USERS & users, STORE & store, const TARIFFS & tariffs)
+ : m_users(users), m_store(store), m_tariffs(tariffs)
+ {}
+ virtual BASE_PARSER * create(const ADMIN & admin) { return new CHG_USER(admin, m_users, m_store, m_tariffs); }
+ static void Register(REGISTRY & registry, USERS & users, STORE & store, const TARIFFS & tariffs)
+ { registry[ToLower(tag)] = new FACTORY(users, store, tariffs); }
+ private:
+ USERS & m_users;
+ STORE & m_store;
+ const TARIFFS & m_tariffs;
+ };
+
+ static const char * tag;
+
+ CHG_USER(const ADMIN & admin, USERS & users,
+ STORE & store, const TARIFFS & tariffs)
+ : BASE_PARSER(admin, tag),
+ m_users(users),
+ m_store(store),
+ m_tariffs(tariffs),
+ m_cashMustBeAdded(false) {}
+