123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- @extends('user.layouts')
- @section('css')
- <script src="//at.alicdn.com/t/font_682457_e6aq10jsbq0yhkt9.js" type="text/javascript"></script>
- <link href="/assets/global/fonts/font-awesome/font-awesome.min.css" type="text/css" rel="stylesheet">
- <link href="/assets/global/vendor/webui-popover/webui-popover.min.css" type="text/css" rel="stylesheet">
- @endsection
- @section('content')
- <!-- BEGIN CONTENT BODY -->
- <div class="page-content container-fluid">
- <div class="row">
- @foreach($nodeList as $node)
- <div class="col-xxl-3 col-xl-4 col-sm-6">
- <div class="card card-inverse card-shadow bg-white">
- <div class="card-block p-30 row">
- <div class="col-4">
- <svg class="w-p100 text-center" aria-hidden="true">
- <use xlink:href="@if($node->country_code)#icon-{{$node->country_code}}@else #icon-un @endif"></use>
- </svg>
- </div>
- <div class="col-8 text-break text-right">
- <p class="font-size-20 blue-600">
- @if($node->offline)
- <i class="red-600 icon wb-warning" data-content="线路不稳定/维护中" data-trigger="hover" data-toggle="popover" data-placement="top"></i>
- @endif
- @if($node->traffic_rate != 1)
- <i class="green-600 icon wb-info-circle" data-content="{{$node->traffic_rate}} 倍流量消耗" data-trigger="hover" data-toggle="popover" data-placement="top"></i>
- @endif
- {{$node->name}}
- <span class="badge badge-pill font-size-10 up m-0 @if($node->labels->label_id == 1) badge-success @elseif($node->labels->label_id == 7) badge-danger @else badge-info @endif">{{$node->labels->labelInfo->name}}</span>
- </p>
- <blockquote>
- {{$node->desc}}
- </blockquote>
- <p class="font-size-14">
- <button class="btn btn-sm btn-outline-info" onclick="getInfo('{{$node->id}}','code')"><i id="code{{$node->id}}" class="icon fa-code"></i></button>
- <button class="btn btn-sm btn-outline-info" onclick="getInfo('{{$node->id}}','qrcode')"><i id="qrcode{{$node->id}}" class="icon fa-qrcode"></i></button>
- <button class="btn btn-sm btn-outline-info" onclick="getInfo('{{$node->id}}','text')"><i id="text{{$node->id}}" class="icon fa-list"></i></button>
- </p>
- </div>
- </div>
- </div>
- </div>
- @endforeach
- </div>
- </div>
- @endsection @section('script')
- <script src="/assets/global/vendor/matchheight/jquery.matchHeight-min.js" type="text/javascript"></script>
- <script src="/assets/global/js/Plugin/matchheight.js" type="text/javascript"></script>
- <script src="/assets/custom/Plugin/jquery-qrcode/jquery.qrcode.min.js" type="text/javascript"></script>
- <script src="/assets/global/js/Plugin/webui-popover.js" type="text/javascript"></script>
- <script type="text/javascript">
- $(function() {
- $('.card').matchHeight();
- });
- function getInfo(id, type) {
- const oldClass = $("#" + type + id).attr("class");
- $.ajax({
- type: "POST",
- url: '/nodeList',
- data: {_token: '{{csrf_token()}}', id: id, type: type},
- beforeSend: function () {
- $("#" + type + id).removeAttr("class").addClass("icon wb-loop icon-spin");
- },
- success: function (ret) {
- if (ret.status === 'success') {
- switch (type) {
- case 'code':
- swal.fire({
- html: '<textarea class="form-control" rows="8" readonly="readonly">' + ret.data + '</textarea>' +
- '<a href="' + ret.data + '" class="btn btn-danger btn-block mt-10">打开' + ret.title + '</a>',
- showConfirmButton: false
- });
- break;
- case 'qrcode':
- swal.fire({
- title: '{{trans('home.scan_qrcode')}}',
- html: '<div id="qrcode"></div>',
- onBeforeOpen: () => {
- $("#qrcode").qrcode({text: ret.data});
- },
- showConfirmButton: false
- });
- break;
- case 'text':
- swal.fire({
- title: '{{trans('home.setting_info')}}',
- html: '<textarea class="form-control" rows="12" readonly="readonly">' + ret.data + '</textarea>',
- showConfirmButton: false
- });
- break;
- default:
- swal.fire({title: ret.title, text: ret.data});
- }
- }
- },
- complete: function () {
- $("#" + type + id).removeAttr("class").addClass(oldClass);
- }
- });
- }
- </script>
- @endsection
|