app-detail.component.html 21.2 KB
Newer Older
1
<div id="main" class="panel">
神楽坂玲奈's avatar
神楽坂玲奈 committed
2
    <img *ngIf="currentApp.cover" class="cover rounded" [src]="currentApp.cover">
3 4 5
    <div id="right">
        <h1>{{currentApp.name}}</h1>
        <div id="time">您已玩了 2564 小时</div>
神楽坂玲奈's avatar
神楽坂玲奈 committed
6 7 8

        <!--应用未购买-->
        <div *ngIf="!currentApp.isBought()">
神楽坂玲奈's avatar
神楽坂玲奈 committed
9

神楽坂玲奈's avatar
神楽坂玲奈 committed
10
            <button i18n type="button" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#purchase-modal">{{currentApp.price.cny | currency:'CNY':true}} 购买</button>
神楽坂玲奈's avatar
神楽坂玲奈 committed
11
            <button i18n type="button" (click)="updateInstallOption(currentApp)" class="btn btn-secondary btn-sm" data-toggle="modal" data-target="#install-modal">安装试玩版</button>
神楽坂玲奈's avatar
神楽坂玲奈 committed
12 13 14 15 16 17

            <!--<button i18n (click)="updateInstallOption(currentApp)" type="button" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#install-modal">我已经购买过</button>-->
        </div>


        <!--应用已购买,未安装-->
2breakegg's avatar
2breakegg committed
18
        <div *ngIf="currentApp.isBought() && !currentApp.isInstalled()" class="i-b">
19 20 21
            <button i18n (click)="updateInstallOption(currentApp)" type="button" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#install-modal">安装</button>
            <button i18n *ngIf="currentApp.runnable()" (click)="updateInstallOption(currentApp)" type="button" class="btn btn-secondary btn-sm" data-toggle="modal" data-target="#import-modal">导入</button>
        </div>
wudizhanche1000's avatar
wudizhanche1000 committed
22

23
        <!--应用变更中-->
2breakegg's avatar
2breakegg committed
24 25
        <div *ngIf="currentApp.isInstalled() && !currentApp.isReady()" class="i-b">
            <div id="status" class="i-b">
26 27 28 29 30 31 32
                <span i18n *ngIf="currentApp.isDownloading()">正在下载</span>
                <span i18n *ngIf="currentApp.isInstalling()">正在安装...</span>
                <span i18n *ngIf="currentApp.isUninstalling()">正在卸载...</span>
                <span i18n *ngIf="currentApp.isWaiting()">等待安装...</span>
                <span i18n *ngIf="currentApp.isUpdating()">正在更新...</span>
                <span *ngIf="currentApp.status.total">{{(currentApp.status.progress/currentApp.status.total * 100).toFixed()}}%</span>
                <span>{{currentApp.progressMessage()}}</span>
hjistc's avatar
hjistc committed
33
            </div>
34 35
            <progress class="progress" [class.progress-striped]="!currentApp.status.total" [class.progress-animated]="!currentApp.status.total" value="{{currentApp.status.total ? currentApp.status.progress : 1}}" max="{{currentApp.status.total}}"></progress>
        </div>
wudizhanche1000's avatar
wudizhanche1000 committed
36

37
        <!--应用ready-->
2breakegg's avatar
2breakegg committed
38
        <div *ngIf="currentApp.isReady() && (currentApp.id != 'ygopro')" class="i-b">
39 40
            <button *ngIf="currentApp.runnable()" (click)="runApp(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-primary btn-sm">
                <i class="fa fa-play" aria-hidden="true"></i> <span i18n>运行</span></button>
神楽坂玲奈's avatar
神楽坂玲奈 committed
41 42
            <button *ngIf="currentApp.actions.get('network')" [disabled]="!appsService.allReady(currentApp)" (click)="runApp(currentApp,'network')" type="button" class="btn btn-primary btn-sm">
                <i class="fa fa-play" aria-hidden="true"></i> <span>运行 (联机版)</span></button>
43
            <button i18n *ngIf="currentApp.runnable() && currentApp.actions.get('custom')" [disabled]="!appsService.allReady(currentApp)" (click)="custom(currentApp)" type="button" class="btn btn-secondary btn-sm">设置</button>
2breakegg's avatar
2breakegg committed
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63



            <!--<div id="network" *ngIf="currentApp.network && currentApp.network.protocol == 'maotama'">-->
                <!--<div class="input-group input-group-sm">-->
                    <!--<input *ngIf="appsService.connections.get(currentApp)" [value]="appsService.connections.get(currentApp).address || 'Loading...'" readonly type="text" class="form-control" title="address">-->
                    <!--<div class="input-group-btn" style="flex-direction: row">-->
                        <!--<button i18n *ngIf="!appsService.connections.get(currentApp)" [disabled]="!appsService.allReady(currentApp)" (click)="appsService.network(currentApp, currentApp.network.servers[0])" type="button" class="btn btn-secondary btn-sm">联机</button>-->
                        <!--<button i18n *ngIf="appsService.connections.get(currentApp)" (click)="copy(appsService.connections.get(currentApp).address)" [disabled]="!appsService.connections.get(currentApp).address" type="button" class="btn btn-secondary btn-sm">复制</button>-->
                        <!--<button type="button" class="btn btn-sm btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown"></button>-->
                        <!--<div class="dropdown-menu" [class.dropdown-menu-right]="appsService.connections.get(currentApp)">-->
                            <!--<h6 i18n class="dropdown-header">选择服务器</h6>-->
                            <!--<a *ngFor="let server of currentApp.network.servers" (click)="appsService.network(currentApp, server)" class="dropdown-item" href="#">{{server.id}}</a>-->
                            <!--<div *ngIf="appsService.connections.get(currentApp)" class="dropdown-divider"></div>-->
                            <!--<a i18n *ngIf="appsService.connections.get(currentApp)" (click)="appsService.connections.get(currentApp).connection.close()" class="dropdown-item" href="#">取消</a>-->
                        <!--</div>-->
                    <!--</div>-->
                <!--</div>-->
            <!--</div>-->

神楽坂玲奈's avatar
神楽坂玲奈 committed
64
        </div>
2breakegg's avatar
2breakegg committed
65 66
        <!--<button (click)="log(appsService)">test</button>-->
        <network *ngIf="(currentApp.id != 'ygopro') && currentApp && currentApp.network && currentApp.network.protocol == 'maotama'" [currentApp]="currentApp"></network>
67
        <ygopro *ngIf="currentApp.isReady() && (currentApp.id == 'ygopro')" [app]="currentApp" [currentApp]="currentApp" (points)="onPoints($event)"></ygopro>
神楽坂玲奈's avatar
神楽坂玲奈 committed
68
    </div>
wudizhanche1000's avatar
wudizhanche1000 committed
69

70 71
</div>

神楽坂玲奈's avatar
神楽坂玲奈 committed
72
<div id="arena" class="panel panel-default" *ngIf="currentApp.id === 'ygopro' && points ">
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
    <h2 i18n>排位成绩</h2>
    <table class="table table-sm">
        <tbody>
        <tr>
            <th i18n>竞技排名</th>
            <td>{{points.arena_rank}}</td>
            <th i18n>娱乐排名</th>
            <td>{{points.exp_rank}}</td>
        </tr>
        <tr>
            <th i18n>竞技胜率</th>
            <td>{{points.athletic_wl_ratio}}%</td>
            <th i18n>经验</th>
            <td>{{points.exp}}</td>
        </tr>
        <tr>
            <th i18n>胜场</th>
            <td>{{points.athletic_win}}</td>
            <th i18n>胜场</th>
            <td>{{points.entertain_win}}</td>
        </tr>
        <tr>
            <th i18n>负场</th>
96
            <td>{{points.athletic_lose}}</td>
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
            <th i18n>负场</th>
            <td>{{points.entertain_lose}}</td>
        </tr>
        <tr>
            <th i18n>平局</th>
            <td>{{points.athletic_draw}}</td>
            <th i18n>平局</th>
            <td>{{points.entertain_draw}}</td>
        </tr>
        <tr>
            <th i18n>总场</th>
            <td>{{points.athletic_all}}</td>
            <th i18n>总场</th>
            <td>{{points.entertain_all}}</td>
        </tr>
        </tbody>
    </table>
神楽坂玲奈's avatar
神楽坂玲奈 committed
114
    <a i18n href="https://mycard.moe/ygopro/arena/" target="_blank" class="moreinfo">更多资料</a>
115 116
</div>

117
<div *ngIf="currentApp.description" class="d-flex">
神楽坂玲奈's avatar
神楽坂玲奈 committed
118 119 120
    <div class="panel" id="game_info">
        <p [innerHTML]="currentApp.description"></p>
        <div id="tags" *ngIf="currentApp.tags">
mercury233's avatar
mercury233 committed
121
            <div *ngFor="let tag of currentApp.tags" class="btn btn-sm btn-info tag">{{tags[tag] || tag}}</div>
神楽坂玲奈's avatar
神楽坂玲奈 committed
122 123 124 125
        </div>
    </div>
    <div class="panel" id="game_info_2">
        <dl>
神楽坂玲奈's avatar
i18n  
神楽坂玲奈 committed
126
            <dt i18n>开发</dt>
127 128 129 130 131
            <dd>
                <div *ngFor="let developer of currentApp.developers">
                    <a *ngIf="developer.url" target="_blank" [href]="developer.url">{{developer.name}}</a>
                    <span *ngIf="!developer.url">{{developer.name}}</span>
                </div>
132
            </dd>
133

神楽坂玲奈's avatar
i18n  
神楽坂玲奈 committed
134
            <dt i18n>发行日期</dt>
神楽坂玲奈's avatar
神楽坂玲奈 committed
135 136 137 138
            <dd>{{currentApp.released_at | date:'mediumDate'}}</dd>
        </dl>
    </div>
</div>
139 140 141 142

<div class="panel panel-default" *ngIf="news && news.length">
    <h2 i18n>新闻</h2>
    <div id="news" *ngFor="let item of news">
神楽坂玲奈's avatar
神楽坂玲奈 committed
143
        <h3><a class="title" [href]="item.url" target="_blank">{{item.title}}</a></h3>
神楽坂玲奈's avatar
神楽坂玲奈 committed
144
        <span>{{item.updated_at | date:'shortDate'}}</span>
145 146 147
        <p>{{item.text}}</p>
        <a i18n *ngIf="item.url" [href]="item.url" target="_blank">了解更多</a>
    </div>
神楽坂玲奈's avatar
神楽坂玲奈 committed
148
    <!--<a href="https://mycard.moe/ygopro/arena/" target="_blank" class="moreinfo">查看所有新闻</a>-->
149
</div>
神楽坂玲奈's avatar
fix  
神楽坂玲奈 committed
150

hjistc's avatar
hjistc committed
151

152 153 154 155
<div *ngIf="currentApp.isReady()">
    <div *ngIf="mods && mods.length">
        <table class="table table-striped">
            <thead class="thead-inverse">
wudizhanche1000's avatar
wudizhanche1000 committed
156
            <tr>
157 158 159
                <th>#</th>
                <th i18n>名称</th>
                <th i18n>操作</th>
wudizhanche1000's avatar
wudizhanche1000 committed
160
            </tr>
161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
            </thead>
            <tbody>
            <tr *ngFor="let mod of mods; let i = index">
                <th scope="row">{{i + 1}}</th>
                <td>{{mod.name}}</td>
                <td *ngIf="mod.isReady()">
                    <button i18n type="button" [disabled]="mod.isInstalled()&&!appsService.allReady(mod)" (click)="uninstall(mod)" class="btn btn-danger btn-sm">卸载</button>
                </td>
                <td *ngIf="!mod.isInstalled()">
                    <button i18n (click)="installMod(mod)" [disabled]="mod.isInstalled()&&!appsService.allReady(mod)" type="button" *ngIf="!mod.isInstalled()" class="btn btn-primary btn-sm">安装</button>
                </td>
                <td *ngIf="mod.isInstalled()&&!mod.isReady()">
                    <progress class="progress progress-striped progress-animated" value="{{mod.status.total ? mod.status.progress : 1}}" max="{{mod.status.total}}"></progress>
                    <!--<div i18n *ngIf="mod.isWaiting()">等待安装...</div>-->
                </td>
wudizhanche1000's avatar
wudizhanche1000 committed
176 177 178
            </tr>
            </tbody>
        </table>
hjistc's avatar
hjistc committed
179 180 181
    </div>


182 183 184 185 186 187
    <div class="panel panel-default" id="local">
        <h2 i18n>本地文件</h2>
        <div>
            <button i18n (click)="appsService.browse(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary btn-sm">浏览本地文件</button>
            <button i18n type="button" (click)="verifyFiles(currentApp)" [disabled]="!appsService.allReady(currentApp)" class="btn btn-secondary btn-sm">校验完整性</button>
            <button i18n (click)="uninstall(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary btn-sm">卸载</button>
hjistc's avatar
hjistc committed
188
        </div>
wudizhanche1000's avatar
wudizhanche1000 committed
189
    </div>
hjistc's avatar
hjistc committed
190 191


192
</div>
hjistc's avatar
hjistc committed
193

神楽坂玲奈's avatar
神楽坂玲奈 committed
194
<!--<div class="panel panel-default">--><!--<h2 i18n>广告</h2>--><!--<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>--><!--&lt;!&ndash; mycard &ndash;&gt;--><!--<ins class="adsbygoogle"--><!--style="display:block"--><!--data-ad-client="ca-pub-1173264056684633"--><!--data-ad-slot="3903147661"--><!--data-ad-format="auto"></ins>--><!--<script>--><!--(adsbygoogle = window.adsbygoogle || []).push({});--><!--</script>--><!--</div>-->
195

196 197 198 199 200 201 202 203 204
<!--安装modal-->
<div class="modal fade" id="install-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" *ngIf="installOption">
    <div class="modal-dialog" role="document">
        <form id="install-form" class="modal-content" (ngSubmit)="install(currentApp,installOption,referencesInstall)" #theForm="ngForm">
            <div class="modal-header">
                <h5 i18n class="modal-title" id="myModalLabel">安装 {{currentApp.name}}</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span>&times;</span>
                </button>
hjistc's avatar
hjistc committed
205
            </div>
206 207 208 209 210 211
            <div class="modal-body">
                <p i18n>即将开始安装 {{currentApp.name}}</p>
                <h4 i18n>安装位置</h4>
                <div class="form-group">
                    <select class="form-control" name="installPath" (change)="selectLibrary()" [(ngModel)]="installOption.installLibrary" title="path">
                        <option *ngFor="let library of libraries" value="{{library}}"> {{library}}</option>
神楽坂玲奈's avatar
神楽坂玲奈 committed
212
                        <option *ngFor="let library of availableLibraries" value="create_{{library}}">在 {{library}}\ 盘新建 MyCard 库</option>
213 214 215 216
                    </select></div>
                <h4 i18n>快捷方式</h4>
                <div class="checkbox">
                    <input id="create_application_shortcut" type="checkbox" name="application" [(ngModel)]="installOption.createShortcut">
nanahira's avatar
nanahira committed
217
                    <label i18n *ngIf="platform == 'linux'" for="create_application_shortcut">创建启动菜单快捷方式</label>
218 219
                    <label i18n *ngIf="platform == 'darwin'" for="create_application_shortcut">创建 LaunchPad 快捷方式</label>
                    <label i18n *ngIf="platform == 'win32'" for="create_application_shortcut">创建开始菜单快捷方式</label>
神楽坂玲奈's avatar
神楽坂玲奈 committed
220
                </div>
221 222 223
                <div class="checkbox">
                    <input id="create_desktop_shortcut" type="checkbox" name="desktop" [(ngModel)]="installOption.createDesktopShortcut">
                    <label i18n for="create_desktop_shortcut">创建桌面快捷方式</label>
神楽坂玲奈's avatar
神楽坂玲奈 committed
224
                </div>
225 226 227 228 229 230 231
                <h4 i18n *ngIf="references.length>0">扩展内容</h4>
                <div *ngFor="let reference of references"><label>
                    <input type="checkbox" [(ngModel)]="referencesInstall[reference.id]" name="references"> {{reference.name}}
                </label></div>
                <div *ngIf="currentApp.findDependencies().length">
                    <span i18n>依赖:</span>
                    <span class="dependency" *ngFor="let dependency of currentApp.findDependencies()">{{dependency.name}}</span>
232
                </div>
233 234 235 236 237 238
            </div>
            <div class="modal-footer">
                <button i18n type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
                <button i18n type="submit" [disabled]="!theForm.form.valid" class="btn btn-primary">安装</button>
            </div>
        </form>
神楽坂玲奈's avatar
神楽坂玲奈 committed
239
    </div>
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261
</div>

<div class="modal fade" id="import-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" *ngIf="installOption">
    <div class="modal-dialog" role="document">
        <form id="import-form" class="modal-content" (ngSubmit)="importGame(currentApp,installOption,referencesInstall)" #theForm="ngForm">
            <div class="modal-header">
                <h5 i18n class="modal-title">导入 {{currentApp.name}}</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span>&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <p i18n>选择主程序 {{currentApp.actions.get('main').execute}}</p>
                <label class="custom-file" lang="en">
                    <input (click)="$event.preventDefault();selectImport(currentApp)" type="file" id="file" class="custom-file-input">
                    <span class="custom-file-control">{{import_path || currentApp.actions.get('main').execute}}</span>
                </label>

                <h4 i18n>导入到</h4>
                <div class="form-group">
                    <select class="form-control" name="installPath" (change)="selectLibrary()" [(ngModel)]="installOption.installLibrary" title="path">
                        <option *ngFor="let library of libraries" value="{{library}}"> {{library}}</option>
神楽坂玲奈's avatar
神楽坂玲奈 committed
262
                        <option *ngFor="let library of availableLibraries" value="create_{{library}}">在 {{library}}\ 盘新建 MyCard 库</option>
263
                    </select>
神楽坂玲奈's avatar
神楽坂玲奈 committed
264
                </div>
265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281
                <!--<h4 i18n>快捷方式</h4>-->
                <!--<div class="checkbox">-->
                <!--<input id="create_application_shortcut" type="checkbox" name="application" [(ngModel)]="installOption.createShortcut">-->
                <!--<label i18n *ngIf="platform == 'darwin'" for="create_application_shortcut">创建 LaunchPad 快捷方式</label>-->
                <!--<label i18n *ngIf="platform == 'win32'" for="create_application_shortcut">创建开始菜单快捷方式</label>-->
                <!--</div>-->
                <!--<div class="checkbox">-->
                <!--<input id="create_desktop_shortcut" type="checkbox" name="desktop" [(ngModel)]="installOption.createDesktopShortcut">-->
                <!--<label i18n for="create_desktop_shortcut">创建桌面快捷方式</label>-->
                <!--</div>-->
                <h4 i18n *ngIf="references.length>0">扩展内容</h4>
                <div *ngFor="let reference of references"><label>
                    <input type="checkbox" [(ngModel)]="referencesInstall[reference.id]" name="references"> {{reference.name}}
                </label></div>
                <div *ngIf="currentApp.findDependencies().length">
                    <span i18n>依赖:</span>
                    <span class="dependency" *ngFor="let dependency of currentApp.findDependencies()">{{dependency.name}}</span>
hjistc's avatar
hjistc committed
282
                </div>
283 284 285 286 287 288
            </div>
            <div class="modal-footer">
                <button i18n type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
                <button i18n type="submit" [disabled]="import_path && !theForm.form.valid" class="btn btn-primary">导入</button>
            </div>
        </form>
神楽坂玲奈's avatar
modal  
神楽坂玲奈 committed
289
    </div>
神楽坂玲奈's avatar
神楽坂玲奈 committed
290 291 292 293 294 295 296 297 298 299 300 301 302
</div>


<div class="modal fade" id="purchase-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" *ngIf="!currentApp.isBought()">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 i18n class="modal-title">购买 {{currentApp.name}}</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span>&times;</span>
                </button>
            </div>
            <div class="modal-body">
神楽坂玲奈's avatar
神楽坂玲奈 committed
303 304 305 306 307 308 309 310 311 312
                <!--<div class="form-group">-->
                    <!--<label for="exampleSelect1">国家/地区</label>-->
                    <!--<select class="form-control" id="exampleSelect1">-->
                        <!--<option>中国(¥)</option>-->
                        <!--<option>美国($)</option>-->
                        <!--<option>3</option>-->
                        <!--<option>4</option>-->
                        <!--<option>5</option>-->
                    <!--</select>-->
                <!--</div>-->
神楽坂玲奈's avatar
神楽坂玲奈 committed
313 314 315 316 317 318 319 320 321
                <div class="d-flex justify-content-between">
                    <img *ngIf="currentApp.cover" [src]="currentApp.cover" class="banner">
                    <span class="p-2">{{currentApp.name}}</span>
                    <span class="p-2 ml-auto">{{currentApp.price.cny | currency:'CNY':true}}</span>
                </div>
                <form id="purchase-form" class="form-inline">
                    <!--<fieldset class="form-group">-->
                    <legend>支付方式</legend>
                    <div class="form-check">
神楽坂玲奈's avatar
神楽坂玲奈 committed
322
                        <input [(ngModel)]="payment" id="alipay" type="radio" class="form-check-input" name="payment" value="alipay" checked>
神楽坂玲奈's avatar
神楽坂玲奈 committed
323 324 325
                        <label for="alipay" class="form-check-label">支付宝</label>
                    </div>
                    <div class="form-check">
神楽坂玲奈's avatar
神楽坂玲奈 committed
326
                        <input [(ngModel)]="payment" id="wechat" type="radio" class="form-check-input" name="payment" value="wechat" checked>
神楽坂玲奈's avatar
神楽坂玲奈 committed
327 328 329
                        <label for="wechat" class="form-check-label">微信</label>
                    </div>
                    <!--<div class="form-check">-->
330 331
                    <!--<input id="paypal" type="radio" class="form-check-input" name="optionsRadios" value="alipay" checked>-->
                    <!--<label for="paypal" class="form-check-label">PayPal</label>-->
神楽坂玲奈's avatar
神楽坂玲奈 committed
332 333 334 335 336 337
                    <!--</div>-->
                    <!--</fieldset>-->
                </form>

            </div>
            <div class="modal-footer">
神楽坂玲奈's avatar
神楽坂玲奈 committed
338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357
                <button i18n class="btn btn-secondary" data-dismiss="modal">取消</button>
                <button i18n [disabled]="creating_order" class="btn btn-primary" (click)="purchase()">购买</button>
            </div>
        </div>
    </div>
</div>


<div class="modal fade" id="purchase-modal-alipay" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static" *ngIf="!currentApp.isBought()">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 i18n class="modal-title">购买 {{currentApp.name}}</h5>
                <!--<button type="button" class="close" data-dismiss="modal" aria-label="Close">-->
                    <!--<span>&times;</span>-->
                <!--</button>-->
            </div>
            <div class="modal-body">
                订单已经创建,请在新窗口中进行支付,支付成功后页面会自动跳转

神楽坂玲奈's avatar
神楽坂玲奈 committed
358
                若支付成功后没有自动跳转 请联系 thdod@mycard.moe
神楽坂玲奈's avatar
神楽坂玲奈 committed
359 360 361 362
                若支付失败,请返回并选择其他支付方式
            </div>
            <div class="modal-footer">
                <button i18n type="button" class="btn btn-secondary" data-dismiss="modal">返回</button>
神楽坂玲奈's avatar
神楽坂玲奈 committed
363 364 365
            </div>
        </div>
    </div>
nanahira's avatar
nanahira committed
366
</div>