Skip to content

Commit

Permalink
Merge pull request #770 from alexgo-io/feat/amm-swap-pool-helper
Browse files Browse the repository at this point in the history
feat: allow multiple approves in case of wrong wrap token
  • Loading branch information
zhigang1992 authored Mar 27, 2024
2 parents 90685db + 9ffb942 commit e8be64e
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions clarity/contracts/helpers/amm-swap-pool-helper.clar
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
(request-details (try! (get-request-or-fail request-id)))
(updated-request-details (merge request-details { token-y: wrapped-token-y, status: APPROVED, status-memo: memo })))
(try! (check-is-approved))
(asserts! (is-eq (get status request-details) PENDING) err-request-already-processed)
(asserts! (and (not (is-eq (get status request-details) FINALIZED)) (not (is-eq (get status request-details) REJECTED))) err-request-already-processed)
(map-set requests request-id updated-request-details)
(print { notification: "approve-request", payload: updated-request-details })
(ok true)))
Expand All @@ -109,12 +109,12 @@
(let (
(request-details (try! (get-request-or-fail request-id)))
(updated-request-details (merge request-details { status: REJECTED, status-memo: memo })))
(try! (check-is-approved))
(asserts! (is-eq (get status request-details) PENDING) err-request-already-processed)
(asserts! (or (is-ok (check-is-approved)) (is-eq tx-sender (get requested-by request-details))) err-not-authorised) ;; either requestor or approved operator can reject
(asserts! (or (is-eq (get status request-details) PENDING) (is-eq (get status request-details) APPROVED)) err-request-already-processed)
(asserts! (is-eq (get token-x request-details) (contract-of token-x-trait)) err-token-mismatch)
(as-contract (try! (contract-call? token-x-trait transfer-fixed (get bal-x request-details) tx-sender (get requested-by request-details) none)))
(map-set requests request-id updated-request-details)
(print { notification: "approve-request", payload: updated-request-details })
(print { notification: "reject-request", payload: updated-request-details })
(ok true)))

;; governance calls
Expand Down

0 comments on commit e8be64e

Please sign in to comment.