Documentation ¶
Overview ¶
dcrclient.go
Index ¶
- Variables
- func APIResponse(data []string, response string, err error) string
- func DisableLog()
- func GetLog() btclog.Logger
- func NewGetTicketsCacheData(tfar *dcrjson.TicketsForAddressResult) *getTicketsCacheData
- func SetLogWriter(w io.Writer, level string) error
- func UseLogger(logger btclog.Logger)
- type ApiController
- type MainController
- func (controller *MainController) API(c web.C, r *http.Request) (string, int)
- func (controller *MainController) APIAddress(c web.C, r *http.Request) ([]string, string, error)
- func (controller *MainController) APIPurchaseInfo(c web.C, r *http.Request) ([]string, string, error)
- func (controller *MainController) APISignIn(c web.C, r *http.Request) ([]string, string, error)
- func (controller *MainController) APISignUp(c web.C, r *http.Request) ([]string, string, error)
- func (controller *MainController) APIStats(c web.C, r *http.Request) ([]string, string, error)
- func (controller *MainController) Address(c web.C, r *http.Request) (string, int)
- func (controller *MainController) AddressPost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) EmailUpdate(c web.C, r *http.Request) (string, int)
- func (controller *MainController) EmailVerify(c web.C, r *http.Request) (string, int)
- func (controller *MainController) Error(c web.C, r *http.Request) (string, int)
- func (controller *MainController) FeeAddressForUserID(uid int) (dcrutil.Address, error)
- func (controller *MainController) Index(c web.C, r *http.Request) (string, int)
- func (controller *MainController) Logout(c web.C, r *http.Request) (string, int)
- func (controller *MainController) PasswordReset(c web.C, r *http.Request) (string, int)
- func (controller *MainController) PasswordResetPost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) PasswordUpdate(c web.C, r *http.Request) (string, int)
- func (controller *MainController) PasswordUpdatePost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) RPCIsStopped() bool
- func (controller *MainController) RPCStart()
- func (controller *MainController) RPCStop() error
- func (controller *MainController) RPCSync(dbMap *gorp.DbMap) error
- func (controller *MainController) SendMail(emailaddress string, subject string, body string) error
- func (controller *MainController) Settings(c web.C, r *http.Request) (string, int)
- func (controller *MainController) SettingsPost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) SignIn(c web.C, r *http.Request) (string, int)
- func (controller *MainController) SignInPost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) SignUp(c web.C, r *http.Request) (string, int)
- func (controller *MainController) SignUpPost(c web.C, r *http.Request) (string, int)
- func (controller *MainController) Stats(c web.C, r *http.Request) (string, int)
- func (controller *MainController) Status(c web.C, r *http.Request) (string, int)
- func (controller *MainController) Tickets(c web.C, r *http.Request) (string, int)
- func (controller *MainController) TicketsPost(c web.C, r *http.Request) (string, int)
Constants ¶
This section is empty.
Variables ¶
var (
ErrSetVoteBitsCoolDown = fmt.Errorf("can not set the vote bits because " +
"last call was too soon")
)
Functions ¶
func APIResponse ¶
APIResponse formats a response
func DisableLog ¶
func DisableLog()
DisableLog disables all library log output. Logging output is disabled by default until either UseLogger or SetLogWriter are called.
func NewGetTicketsCacheData ¶
func NewGetTicketsCacheData(tfar *dcrjson.TicketsForAddressResult) *getTicketsCacheData
func SetLogWriter ¶
SetLogWriter uses a specified io.Writer to output package logging info. This allows a caller to direct package logging output without needing a dependency on seelog. If the caller is also using btclog, UseLogger should be used instead.
Types ¶
type ApiController ¶
type ApiController struct {
system.Controller
}
type MainController ¶
type MainController struct { system.Controller // contains filtered or unexported fields }
MainController
func NewMainController ¶
func NewMainController(params *chaincfg.Params, baseURL string, closePool bool, closePoolMsg string, extPubStr string, poolEmail string, poolFees float64, poolLink string, recaptchaSecret string, recaptchaSiteKey string, smtpFrom string, smtpHost string, smtpUsername string, smtpPassword string, version string, walletHosts []string, walletCerts []string, walletUsers []string, walletPasswords []string) (*MainController, error)
NewMainController is the constructor for the entire controller routing.
func (*MainController) API ¶
API is the main frontend that handles all API requests. XXX This is very hacky. It can be made more elegant by improving or re-writing the middleware and switching to a more modern framework such as goji2 or something else that utilizes the context package/built-in. This would make it much easier to share code between the web UI and JSON API with less duplication.
func (*MainController) APIAddress ¶
APIAddress is AddressPost API'd a bit
func (*MainController) APIPurchaseInfo ¶
func (controller *MainController) APIPurchaseInfo(c web.C, r *http.Request) ([]string, string, error)
APIPurchaseInfo fetches and returns the user's info or an error
func (*MainController) AddressPost ¶
AddressPost is address form submit route.
func (*MainController) EmailUpdate ¶
EmailUpdate validates the passed token and updates the user's email address.
func (*MainController) EmailVerify ¶
EmailVerify renders the email verification page.
func (*MainController) FeeAddressForUserID ¶
func (controller *MainController) FeeAddressForUserID(uid int) (dcrutil.Address, error)
FeeAddressForUserID generates a unique payout address per used ID for fees for an individual pool user.
func (*MainController) PasswordReset ¶
PasswordReset renders the password reset page.
func (*MainController) PasswordResetPost ¶
PasswordResetPost handles the posted password reset form.
func (*MainController) PasswordUpdate ¶
PasswordUpdate renders the password update page.
func (*MainController) PasswordUpdatePost ¶
PasswordUpdatePost handles updating passwords.
func (*MainController) RPCIsStopped ¶
func (controller *MainController) RPCIsStopped() bool
RPCIsStopped checks to see if w.shutdown is set or not.
func (*MainController) RPCStart ¶
func (controller *MainController) RPCStart()
RPCStart starts the connected rpcServers.
func (*MainController) RPCStop ¶
func (controller *MainController) RPCStop() error
RPCStop stops the connected rpcServers.
func (*MainController) RPCSync ¶
func (controller *MainController) RPCSync(dbMap *gorp.DbMap) error
RPCSync checks to ensure that the wallets are synced on startup.
func (*MainController) SendMail ¶
func (controller *MainController) SendMail(emailaddress string, subject string, body string) error
SendMail sends an email with the passed data using the system's SMTP configuration.
func (*MainController) SettingsPost ¶
SettingsPost handles changing the user's email address or password.
func (*MainController) SignInPost ¶
SignInPost is the form submit route. Logs user in or sets an appropriate message in session if login was not successful.
func (*MainController) SignUpPost ¶
SignUpPost form submit route. Registers new user or shows Sign Up route with appropriate messages set in session.
func (*MainController) TicketsPost ¶
TicketsPost form submit route.