diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-28 23:15:41 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-28 23:15:41 +0200 |
commit | b6e774585d32017e5f1ceeeb2b2e2a5e350354d3 (patch) | |
tree | 080cb5afe3b48c0428abd2d7de1ff7fe34d9b9b1 /src/pages/add-auditor.tsx | |
parent | 38a74188d759444d7e1abac856f78ae710e2a4c5 (diff) |
move webex specific things in their own directory
Diffstat (limited to 'src/pages/add-auditor.tsx')
-rw-r--r-- | src/pages/add-auditor.tsx | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/src/pages/add-auditor.tsx b/src/pages/add-auditor.tsx deleted file mode 100644 index 8bef557d9..000000000 --- a/src/pages/add-auditor.tsx +++ /dev/null @@ -1,125 +0,0 @@ -/* - This file is part of TALER - (C) 2017 Inria - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -/** - * View and edit auditors. - * - * @author Florian Dold - */ - - -import { - ExchangeRecord, - DenominationRecord, - AuditorRecord, - CurrencyRecord, - ReserveRecord, - CoinRecord, - PreCoinRecord, - Denomination -} from "../types"; -import { ImplicitStateComponent, StateHolder } from "../components"; -import { - getCurrencies, - updateCurrency, -} from "../wxApi"; -import { getTalerStampDate } from "../helpers"; - -import * as React from "react"; -import * as ReactDOM from "react-dom"; -import URI = require("urijs"); - -interface ConfirmAuditorProps { - url: string; - currency: string; - auditorPub: string; - expirationStamp: number; -} - -class ConfirmAuditor extends ImplicitStateComponent<ConfirmAuditorProps> { - addDone: StateHolder<boolean> = this.makeState(false); - constructor() { - super(); - } - - async add() { - let currencies = await getCurrencies(); - let currency: CurrencyRecord|undefined = undefined; - - for (let c of currencies) { - if (c.name == this.props.currency) { - currency = c; - } - } - - if (!currency) { - currency = { name: this.props.currency, auditors: [], fractionalDigits: 2, exchanges: [] }; - } - - let newAuditor = { auditorPub: this.props.auditorPub, baseUrl: this.props.url, expirationStamp: this.props.expirationStamp }; - - let auditorFound = false; - for (let idx in currency.auditors) { - let a = currency.auditors[idx]; - if (a.baseUrl == this.props.url) { - auditorFound = true; - // Update auditor if already found by URL. - currency.auditors[idx] = newAuditor; - } - } - - if (!auditorFound) { - currency.auditors.push(newAuditor); - } - - await updateCurrency(currency); - - this.addDone(true); - } - - back() { - window.history.back(); - } - - render(): JSX.Element { - return ( - <div id="main"> - <p>Do you want to let <strong>{this.props.auditorPub}</strong> audit the currency "{this.props.currency}"?</p> - {this.addDone() ? - (<div>Auditor was added! You can also <a href={chrome.extension.getURL("/src/pages/auditors.html")}>view and edit</a> auditors.</div>) - : - (<div> - <button onClick={() => this.add()} className="pure-button pure-button-primary">Yes</button> - <button onClick={() => this.back()} className="pure-button">No</button> - </div>) - } - </div> - ); - } -} - -export function main() { - const walletPageUrl = new URI(document.location.href); - const query: any = JSON.parse((URI.parseQuery(walletPageUrl.query()) as any)["req"]); - const url = query.url; - const currency: string = query.currency; - const auditorPub: string = query.auditorPub; - const expirationStamp = Number.parseInt(query.expirationStamp); - const args = { url, currency, auditorPub, expirationStamp }; - ReactDOM.render(<ConfirmAuditor {...args} />, document.getElementById("container")!); -} - -document.addEventListener("DOMContentLoaded", main); |