comparison mod_invites_page/html/client.html @ 4132:36795f773faf

mod_invites_page: Apply fixes from invite page to client URI page
author Matthew Wild <mwild1@gmail.com>
date Tue, 15 Sep 2020 16:15:51 +0100
parents dd00a2b9927c
children 09b8144051ea
comparison
equal deleted inserted replaced
4131:330b1948bdc0 4132:36795f773faf
12 <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5"> 12 <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
13 <meta name="msapplication-TileColor" content="#fbd308"> 13 <meta name="msapplication-TileColor" content="#fbd308">
14 <meta name="theme-color" content="#fbd308"> 14 <meta name="theme-color" content="#fbd308">
15 </head> 15 </head>
16 <body> 16 <body>
17 <div id="background" class="fixed-top overflow-hidden" aria-role="none presentation"></div> 17 <div id="background" class="fixed-top overflow-hidden"></div>
18 <div id="form" class="container col-md-10 col-md-offset-1 col-sm-8 col-sm-offset-2 col-lg-10 col-lg-offset-1 mt-2 mt-md-5"> 18 <div id="form" class="container col-md-10 col-md-offset-1 col-sm-8 col-sm-offset-2 col-lg-10 col-lg-offset-1 mt-2 mt-md-5">
19 <div class="card rounded-lg shadow"> 19 <div class="card rounded-lg shadow">
20 <h1 class="card-header rounded-lg rounded-lg"> 20 <h1 class="card-header rounded-lg rounded-lg">
21 Join {site_name} with {app.name}<br/> 21 Join {site_name} with {app.name}<br/>
22 </h1> 22 </h1>
23 <div class="card-body"> 23 <div class="card-body">
24 <div id="qr-button-container" class="float-right w-25 border border-info p-3 d-none"> 24 <div id="qr-button-container" class="float-right w-25 border border-info p-3 d-none">
25 <strong>Tip:</strong> You can open this invite 25 <strong>Tip:</strong> You can open this invite
26 on your mobile device by scanning a barcode with 26 on your mobile device by scanning a barcode with
27 your camera. 27 your camera.
28 <a href="#qr-modal" class="mt-2 d-block" id="qr-modal-show"> 28 <button id="qr-modal-show" class="mt-2 d-block btn btn-secondary" title="Send this invite to your device"
29 <button class="btn btn-secondary" title="Send this invite to your device" 29 data-toggle="modal" data-target="#qr-modal">
30 data-toggle="modal" data-target="#qr-modal"> 30 <img src="{static}/qr-logo.png" alt="QR code icon" class="align-middle h-50 mt-1" style="display:inline" >
31 <img src="{static}/qr-logo.png" class="align-middle h-50 mt-1" style="display:inline" > 31 Scan with mobile device
32 Scan with mobile device 32 </button>
33 </button>
34 </a>
35 </div> 33 </div>
36 34
37 {inviter?<p>You have been invited to chat on {site_name} using XMPP, 35 {inviter?<p>You have been invited to chat on {site_name} using XMPP,
38 a secure and decentralized messaging network.</p>} 36 a secure and decentralized messaging network.</p>}
39 37
70 <a href="{item.url}" {item.target&target="{item.target}"} rel="noopener"> 68 <a href="{item.url}" {item.target&target="{item.target}"} rel="noopener">
71 <img src="{item.image}" {item.alttext&alt="{item.alttext}"}> 69 <img src="{item.image}" {item.alttext&alt="{item.alttext}"}>
72 </a> 70 </a>
73 } 71 }
74 {item.text& 72 {item.text&
75 <a href="{item.url}" {item.target&target="{item.target}"} rel="noopener"> 73 <a href="{item.url}" {item.target&target="{item.target}"} class="btn btn-primary" rel="noopener">
76 <button class="btn btn-primary"> 74 {item.text}
77 {item.text}
78 </button>
79 </a> 75 </a>
80 } 76 }
81 } 77 }
82 </div> 78 </div>
83 79
86 <h3>Step 2: Activate your account</h3> 82 <h3>Step 2: Activate your account</h3>
87 83
88 <p>Installed ok? Great! <strong>Click or tap the button below</strong> to accept your invite and continue with your account setup:</p> 84 <p>Installed ok? Great! <strong>Click or tap the button below</strong> to accept your invite and continue with your account setup:</p>
89 85
90 <div> 86 <div>
91 <a href="{uri}" id="uri-cta"><button class="btn btn-primary ml-5 mt-1 mb-3">Accept invite using {app.name}</button></a><br/> 87 <a href="{uri}" id="uri-cta" class="btn btn-primary ml-5 mt-1 mb-3">Accept invite using {app.name}</a><br/>
92 </div> 88 </div>
93 89
94 <p>After clicking the button you will be taken to {app.name} to finish setting up your new {site_name} account.</p> 90 <p>After clicking the button you will be taken to {app.name} to finish setting up your new {site_name} account.</p>
95 </div> 91 </div>
96 </div> 92 </div>
97 </div> 93 </div>
98 94
99 <div class="modal" tabindex="-1" role="dialog" id="qr-modal"> 95 <div class="modal" tabindex="-1" role="dialog" id="qr-modal">
100 <div class="modal-dialog" role="document"> 96 <div class="modal-dialog" role="document">
101 <div class="modal-content"> 97 <div class="modal-content">
102 <div class="modal-header"> 98 <div class="modal-header">
103 <h5 class="modal-title">Scan invite code</h5> 99 <h5 class="modal-title">Scan invite code</h5>
104 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 100 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
105 <span aria-hidden="true">&times;</span> 101 <span aria-hidden="true">&times;</span>
106 </button> 102 </button>
107 </div> 103 </div>
108 <div class="modal-body"> 104 <div class="modal-body">
109 <p>You can transfer this invite to your mobile device by scanning a code with your camera.</p> 105 <p>You can transfer this invite to your mobile device by scanning a code with your camera.</p>
110 <div id="qr-info-url" class="tab-pane show active"> 106 <div id="qr-info-url" class="tab-pane show active">
111 <p>Use a <em>QR code</em> scanner on your mobile device to scan the code below:</p> 107 <p>Use a <em>QR code</em> scanner on your mobile device to scan the code below:</p>
112 <div id="qr-invite-page" class="w-50 p-1 mx-auto"></div> 108 <div id="qr-invite-page" class="w-50 p-1 mx-auto"></div>
113 </div> 109 </div>
114 <div class="modal-footer"> 110 </div>
115 <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> 111 <div class="modal-footer">
116 </div> 112 <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
117 </div> 113 </div>
118 </div> 114 </div>
115 </div>
119 </div> 116 </div>
120 117
121 <script src="/share/jquery/jquery.min.js"></script> 118 <script src="/share/jquery/jquery.min.js"></script>
122 <script src="/share/bootstrap4/js/bootstrap.min.js"></script> 119 <script src="/share/bootstrap4/js/bootstrap.min.js"></script>
123 <script src="{static}/qrcode.min.js"></script> 120 <script src="{static}/qrcode.min.js"></script>
124 <script type="text/javascript"> 121 <script>
125 $(function () { 122 $(function () {
126 // If QR lib loaded ok, show QR button on desktop devices 123 // If QR lib loaded ok, show QR button on desktop devices
127 if(window.QRCode) { 124 if(window.QRCode) {
128 $('#qr-modal').one('show.bs.modal', function (e) { 125 $('#qr-modal').one('show.bs.modal', function (e) {
129 new QRCode(document.getElementById("qr-invite-page"), document.location.href); 126 new QRCode(document.getElementById("qr-invite-page"), document.location.href);