\GRes
Some goose doin some resistance
Synopsis
class GRes
{
- // constants
- const TABLE_STRATEGY = 'gr_strat';
- const TABLE_SPECS = 'gr_spec';
- const URL_ME = '?module=gooseresistance';
- const ROUTE_ST_DELETE = 'deletestrategyid';
- const PROUTE_ST_CREATE = 'createnewstrategy';
- const PROUTE_ST_EDIT = 'editstrategyid';
- const PROUTE_ST_NAME = 'strategyname';
- const PROUTE_ST_ASSIGNS = 'strategyassignsflag';
- const PROUTE_ST_AGENTID = 'strategyprimaryagentid';
- const PROUTE_ST_TARIFF = 'strategytariffname';
- const ROUTE_SP_DELETE = 'deletespecid';
- const ROUTE_SP_EDIT = 'editstrateryspecs';
- const ROUTE_SP_CUSTDATA = 'speccustdataedit';
- const PROUTE_SP_CREATE = 'createnewspec';
- const PROUTE_SP_EDIT = 'editspecid';
- const PROUTE_SP_STRAT = 'specstratid';
- const PROUTE_SP_AGENT = 'specagentid';
- const PROUTE_SP_TYPE = 'spectype';
- const PROUTE_SP_VALUE = 'specvalue';
- const ROUTE_CD_DELKEY = 'delcustdatakey';
- const PROUTE_CD_SPEC = 'newcustomdataspecid';
- const PROUTE_CD_KEY = 'newcustomdatakey';
- const PROUTE_CD_VAL = 'newcustomdatavalue';
- const PROUTE_CH_USER = 'runcheckuser';
- const PROUTE_CH_AMOUNT = 'runcheckamount';
- const PROUTE_CH_STRAT = 'runcheckstratid';
- // members
- protected array $altCfg = ;
- protected array $allUserData = ;
- protected array $allAgents = ;
- protected array $allAgentsExtInfo = ;
- protected array $stategyAgentsExtInfo = ;
- protected array $fullAgentData = ;
- protected array $allAgentNames = ;
- protected array $allAssigns = ;
- protected array $allAssignsStrict = ;
- protected $messages = '';
- protected $avarice = '';
- protected $strategyDb = '';
- protected $specsDb = '';
- protected array $allStrategies = ;
- protected array $allSpecs = ;
- protected array $allPrimaryAgents = ;
- protected array $specTypes = ;
- protected integer $amount = 0;
- protected string $userLogin = '';
- protected string $userPaymentId = '';
- protected $openPayz = '';
- protected array $allPaymentIds = ;
- protected array $allCustomerPaymentIds = ;
- protected string $runtime = '';
- protected array $allTariffs = ;
- protected array $allTariffNames = ;
- protected integer $maxAmount = 0;
- protected integer $minAmount = 0;
- protected bool $paymentIsValid = false;
- protected integer $splitPercentPrecision = 0;
- // methods
- public void __construct()
- protected void initMessages()
- protected void loadConfigs()
- protected void setSpecTypes()
- protected void initDb()
- protected void loadTariffs()
- protected void loadStrategies()
- protected void loadAgents()
- protected void loadUserData()
- protected void loadAssigns()
- protected void loadAgentsExtInfo()
- protected void initOpayz()
- protected void preprocessAgentData()
- public void setAmount()
- public void setUserLogin()
- public void setPaymentId()
- public void setRuntime()
- protected array getRuntime()
- public array getUserAssignedAgentData()
- public string renderStrategyCreateForm()
- public void createStrategy()
- public void saveStrategy()
- public void deleteStrategy()
- protected void flushStrategySpecs()
- public string renderStrategyEditForm()
- protected string renderStratTestingForm()
- public string renderStrategiesList()
- public string getStrategyName()
- public void createSpec()
- public void saveSpec()
- public void deleteSpec()
- public string renderSpecCreateForm()
- public string renderSpecEditForm()
- public string renderStratSpecsList()
- public void setCustDataField()
- public void deleteCustDataField()
- protected string renderCustomDataCreateForm()
- public string renderCustomDataEditor()
- public string renderStratTestingResults()
- protected array calcAgents()
- protected int detectUserStrategyId()
- public array getStrategyData()
Constants
| Name | Value |
|---|---|
| TABLE_STRATEGY | 'gr_strat' |
| TABLE_SPECS | 'gr_spec' |
| URL_ME | '?module=gooseresistance' |
| ROUTE_ST_DELETE | 'deletestrategyid' |
| PROUTE_ST_CREATE | 'createnewstrategy' |
| PROUTE_ST_EDIT | 'editstrategyid' |
| PROUTE_ST_NAME | 'strategyname' |
| PROUTE_ST_ASSIGNS | 'strategyassignsflag' |
| PROUTE_ST_AGENTID | 'strategyprimaryagentid' |
| PROUTE_ST_TARIFF | 'strategytariffname' |
| ROUTE_SP_DELETE | 'deletespecid' |
| ROUTE_SP_EDIT | 'editstrateryspecs' |
| ROUTE_SP_CUSTDATA | 'speccustdataedit' |
| PROUTE_SP_CREATE | 'createnewspec' |
| PROUTE_SP_EDIT | 'editspecid' |
| PROUTE_SP_STRAT | 'specstratid' |
| PROUTE_SP_AGENT | 'specagentid' |
| PROUTE_SP_TYPE | 'spectype' |
| PROUTE_SP_VALUE | 'specvalue' |
| ROUTE_CD_DELKEY | 'delcustdatakey' |
| PROUTE_CD_SPEC | 'newcustomdataspecid' |
| PROUTE_CD_KEY | 'newcustomdatakey' |
| PROUTE_CD_VAL | 'newcustomdatavalue' |
| PROUTE_CH_USER | 'runcheckuser' |
| PROUTE_CH_AMOUNT | 'runcheckamount' |
| PROUTE_CH_STRAT | 'runcheckstratid' |
Members
protected
- $allAgentNames
—
array
Contains all existing agents names as id=>name - $allAgents
—
array
Contains all available agents data as id=>agentData - $allAgentsExtInfo
—
array
Contains all available agents extended data as agentId=>[extDataArr] - $allAssigns
—
array
Contains all address based assigns as agentId=>street - $allAssignsStrict
—
array
Contains all available strict assigns as login=>agentId - $allCustomerPaymentIds
—
array
Contains all users paymentIds as userLogin=>paymentId - $allPaymentIds
—
array
Contains all PaymentIds as paymentId=>userLogin - $allPrimaryAgents
—
array
Contains all strategies with enabled use assigns flag and theis primary agents as stratId=>agentId - $allSpecs
—
array
Contains all existing strat specs as id=>data - $allStrategies
—
array
Contains existing strategies full data as stratId=>data/specs - $allTariffNames
—
array
Contains all tariff names as tariffname=>tariffname - $allTariffs
—
array
Contains all available tariffs data - $allUserData
—
array
Contains all available userdata as login=>userData - $altCfg
—
array
Contains system alter.ini config as key=>value - $amount
—
float
Contains money ammount to apply strategy - $avarice
—
Avarice instance placeholder - $fullAgentData
—
array
Contains preprocessed all agents data as agentId=>[data]+[exinfo]+[split] - $maxAmount
—
float
Contains maximum valid amount for payment depend on selected strategy - $messages
—
System messages helper object placeholder - $minAmount
—
float
Contains minimum valid amount for payment depend on selected strategy - $openPayz
—
OpenPayz object placeholder - $paymentIsValid
—
bool
Contains payment validity flag depends if current amount>=minAmount - $runtime
—
string
Contains current instance runtime which will be returned with every reply - $specTypes
—
array
Contains available strategy spec types - $specsDb
—
Strategy specs database abstraction layer - $splitPercentPrecision
—
int
Contains splitted values percent precision to avoid 1 cent diff - $stategyAgentsExtInfo
—
array
Contains agents extended data for strategy as agentExtId=>[extDataArr] - $strategyDb
—
Strategy database abstraction layer - $userLogin
—
string
Contains current instance user login - $userPaymentId
—
string
Contains current instance user paymentId
Methods
protected
- calcAgents() — Preprocess some agents data depend on strategy specs
- detectUserStrategyId() — Detects the strategy ID assigned to a user based on their login.
- flushStrategySpecs() — Flushed all strategy specs on strategy deletion
- getRuntime() — Returns some runtime array
- initDb() — Inits required database layers
- initMessages() — Inits system message helper for further usage
- initOpayz() — Inits OpenPayz instance and preloads some paymentId=>login mappings
- loadAgents() — Loads existing agents data from database
- loadAgentsExtInfo() — Loads extended agents infor from database
- loadAssigns() — Preloads all address based and strict assigns into priavate props
- loadConfigs() — Preloads some required configs and sets few options
- loadStrategies() — Preloads all existing strategies from database
- loadTariffs() — Loads existing tariffs data and names into protected properties
- loadUserData() — Loads all existing users data
- preprocessAgentData() — Preprocesses all existing agents and extinfo data in some protected prop
- renderCustomDataCreateForm() — Renders a custom data fields creation form based on the provided specification ID.
- renderStratTestingForm() — Renders strategies dry-run testing form
- setSpecTypes() — Sets default strategy spec types
public
- __construct()
- createSpec() — Creates a new specification entry in the database.
- createStrategy() — Creates new strategy database record
- deleteCustDataField() — Deletes custom data field record for some spec
- deleteSpec() — Deletes a specific specification by its ID.
- deleteStrategy() — Deletes a strategy from the database.
- getStrategyData() — Returns strategy data by its ID
- getStrategyName() — Retrieves the name of a strategy based on its ID.
- getUserAssignedAgentData() — Returns some existing user assigned agent data
- renderCustomDataEditor() — Renders spec custom data list and editors
- renderSpecCreateForm() — Renders a form for creating a new specification.
- renderSpecEditForm() — Renders a form for editing a existing specification.
- renderStratSpecsList() — Renders the strategy specifications list for a given strategy ID.
- renderStratTestingResults() — Renders strategy-run testing results
- renderStrategiesList() — Renders a list of available strategies in a table format.
- renderStrategyCreateForm() — Renders the form for creating a new strategy.
- renderStrategyEditForm() — Renders the form for editing existing strategy.
- saveSpec() — Save or update a specification in the database.
- saveStrategy() — Save or update an existing strategy in the database.
- setAmount() — Sets current instance amount property
- setCustDataField() — Creates new or replaces custom data field record for some spec
- setPaymentId() — Sets the user payment Id property and tries to set valid userLogin based on it
- setRuntime() — Sets current instance runtime ID
- setUserLogin() — Sets the user login after applying necessary filters.