Source Code

(define-constant O tx-sender)
(define-constant E1 (err u750))
(define-data-var total-markets uint u0)
(define-data-var total-staked uint u0)
(define-data-var total-resolved uint u0)
(define-data-var total-claimed uint u0)
(define-data-var total-users uint u0)
(define-map user-registered principal bool)
(define-public (record-market)
 (ok (var-set total-markets (+ (var-get total-markets) u1))))
(define-public (record-stake (amt uint))
 (ok (var-set total-staked (+ (var-get total-staked) amt))))
(define-public (record-resolution)
 (ok (var-set total-resolved (+ (var-get total-resolved) u1))))
(define-public (record-claim (amt uint))
 (ok (var-set total-claimed (+ (var-get total-claimed) amt))))
(define-public (register-user (u principal))
 (begin
  (if (default-to false (map-get? user-registered u))
   (ok false)
   (begin (map-set user-registered u true)
    (var-set total-users (+ (var-get total-users) u1))
    (ok true)))))
(define-read-only (get-stats)
 {markets: (var-get total-markets),
  staked: (var-get total-staked),
  resolved: (var-get total-resolved),
  claimed: (var-get total-claimed),
  users: (var-get total-users)})

Functions (6)

FunctionAccessArgs
record-marketpublic
record-stakepublicamt: uint
record-resolutionpublic
record-claimpublicamt: uint
register-userpublicu: principal
get-statsread-only