373 lines
17 KiB
PHP
373 lines
17 KiB
PHP
<x-layouts.nasa.app>
|
||
<input hidden id="nasa_api_path" value="{{ $sApiPath }}">
|
||
<input hidden id="nasa_site_www" value="{{ $sSiteWww }}">
|
||
|
||
<div class="mac-card-small flex-align-center justify-between text-muted">
|
||
<div class="flex-center gap8" style="height:30px;">
|
||
@foreach ($cNasaBook as $oNasaBook)
|
||
<a nasabook-id="{{ $oNasaBook->id }}" class="text-muted js-nasabook-load"><i class="ri-book-line"></i> {{ $oNasaBook->name }}<span class="test-muted">({{ strlen($oNasaBook->content) }})</span></a>
|
||
@endforeach
|
||
</div>
|
||
<div>@include($sHeaderActionView ?? 'nasa.v1._actions.none')</div>
|
||
</div>
|
||
|
||
@if (count($aData['aSelectField']) > 0)
|
||
<div class="mac-card-small flex-align-center text-muted js-condition">
|
||
@foreach ($aData['aSelectField'] as $k)
|
||
@php
|
||
$sFieldName = $aData['aListField'][$k] ?? $k;
|
||
$sFieldName = is_array($sFieldName)? $k : $sFieldName;
|
||
@endphp
|
||
|
||
@if (isset($aData['aMap'][$k]))
|
||
<select class="js-condition-value" js-condition-field="{{$k}}" js-condition-operator="eq">
|
||
<option value="">--- {{$sFieldName}} ---</option>
|
||
@foreach ($aData['aMap'][$k] as $sCMapKey => $sCmapValue)
|
||
<option value="{{$sCMapKey}}" @if (isset($aData['aFilterParam']['c'][$k]['sValue']) && $aData['aFilterParam']['c'][$k]['sValue'] == $sCMapKey) selected @endif>{{$sFieldName}}:{{$sCmapValue}}</option>
|
||
@endforeach
|
||
</select>
|
||
@else
|
||
<div class="mac-input-group">
|
||
<input type="text" placeholder="" class="js-condition-value" js-condition-field="{{$k}}">
|
||
</div>
|
||
@endif
|
||
@endforeach
|
||
</div>
|
||
@endif
|
||
|
||
@foreach ($aData['aFilterParam']['cc'] as $aRow)
|
||
<div class="mac-card-small js-custom-condition flex-align-center">
|
||
<select class="js-custom-condition-select">
|
||
@foreach ($aData['aCcField'] as $k => $v)
|
||
<option value={{$k}}
|
||
@if ($aRow['sField'] == $k) selected @endif
|
||
@if (isset($aData['aMap'][$k])) js-isCcMap='true' @endif
|
||
>{{$v}}</option>
|
||
@endforeach
|
||
</select>
|
||
@if (isset($aData['aMap'][$aRow['sField']]))
|
||
<select class="js-custom-condition-value" js-condition-field="{{$aRow['sField']}}" js-condition-operator="{{$aRow['sOperator'] ?? 'eq'}}">
|
||
@foreach ($aData['aMap'][$aRow['sField']] as $sCcMapKey => $sCcMapValue)
|
||
<option value="{{$sCcMapKey}}" @if ($aRow['sValue'] == $sCcMapKey) selected @endif>{{$sCcMapValue}}</option>
|
||
@endforeach
|
||
</select>
|
||
@else
|
||
<div class="mac-input-group" style="flex: 1; ">
|
||
<input class="text-secondary js-custom-condition-value" type="text" placeholder="" value="{{$aRow['sValue']}}" js-condition-field="{{$aRow['sField']}}" js-condition-operator="{{$aRow['sOperator'] ?? 'eq'}}">
|
||
</div>
|
||
@endif
|
||
<select class="js-condition-operator-select">
|
||
<option value='eq' @if ($aRow['sOperator'] == 'eq') selected @endif>等于</option>
|
||
<option value='like' @if ($aRow['sOperator'] == 'like') selected @endif>约等</option>
|
||
<option value='gt' @if ($aRow['sOperator'] == 'gt') selected @endif>大于</option>
|
||
<option value='lt' @if ($aRow['sOperator'] == 'lt') selected @endif>小于</option>
|
||
<option value='gte' @if ($aRow['sOperator'] == 'gte') selected @endif>大等</option>
|
||
<option value='lte' @if ($aRow['sOperator'] == 'lte') selected @endif>小等</option>
|
||
<option value='ne' @if ($aRow['sOperator'] == 'ne') selected @endif>不等</option>
|
||
</select>
|
||
<a class="text-muted to-right js-custom-condition-del" action="0">
|
||
<i class="ri-close-line"></i> Del
|
||
</a>
|
||
</div>
|
||
@endforeach
|
||
|
||
<div class="mac-bar-container">
|
||
<div class="mac-bar flex-align-center">
|
||
<a class="text-muted js-custom-condition-add" cc-next="cc__{{$aData['sCcLast']}}__eq" action="0" ><i class="ri-add-line"></i> Condition</a>
|
||
<span class="divider"></span>
|
||
<a class="js-custom-condition-filter text-muted"><i class="ri-corner-down-right-line"></i> Filter </a>
|
||
<a class="to-right flex-align-center gap8 js-tom-modal-open" tom-modal-open="order">
|
||
<span class="text-muted flex-align-center gap4">
|
||
<i class="ri-arrow-up-down-line"></i>
|
||
@foreach ($aData["aPager"]["aOrderBy"] as $aOrderBy)
|
||
@php
|
||
$sField = $aData["aListField"][$aOrderBy['sField']] ?? $aOrderBy['sField'];
|
||
$sSort = $aOrderBy['sSort'];
|
||
$sField = ucfirst($sField);
|
||
$sSort = ucfirst($sSort);
|
||
@endphp
|
||
|
||
{{ $sField }} - {{ $sSort }}@if(!$loop->last), @endif
|
||
@endforeach
|
||
</span>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mac-table-container">
|
||
@include($sListView ?? 'nasa.v1._lists.list')
|
||
</div>
|
||
|
||
<div class="mac-pager-bar">
|
||
<span class="text-muted">共 {{$aData['aPager']['iTotal']}} 条</span>
|
||
<div class="flex-align-center gap8">
|
||
<a class="text-muted mac-input-small flex-align-center js-page-prev">
|
||
<i class="ri-play-reverse-line"></i>Prev
|
||
</a>
|
||
<span class="text-muted">
|
||
<span class="text-secondary">{{$aData['aPager']['iCurrentPage']}}</span> / {{$aData['aPager']['iLastPage']}}
|
||
</span>
|
||
<a class="text-muted mac-input-small flex-align-center js-page-next">
|
||
Next<i class="ri-play-line"></i>
|
||
</a>
|
||
<span class="divider"></span>
|
||
<input class="mac-input-small text-secondary js-page-jump-text"
|
||
type="number"
|
||
style="width: 50px; text-align: center;">
|
||
<input action="0" class="js-page-jump"
|
||
value="{{ $aData['aPager']['iCurrentPage'] }}"
|
||
|
||
min="1"
|
||
max="{{ $aData['aPager']['iLastPage'] ?? 1 }}"
|
||
data-last-page="{{ $aData['aPager']['iLastPage'] ?? 1 }}" hidden>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</x-layouts.nasa.app>
|
||
|
||
<div class="tom-modal" tom-modal-name="clone" tabindex="-1" tom-modal-lock="true" hidden></div>
|
||
|
||
<div class="tom-modal" tom-modal-name="add" tabindex="-1" tom-modal-lock="true" hidden></div>
|
||
|
||
<div class="tom-modal" tom-modal-name="detail" tabindex="-1" tom-modal-lock="true" hidden></div>
|
||
|
||
<div class="tom-modal" tom-modal-name="tool" tabindex="-1" tom-modal-lock="false" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">调整</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex" style="gap:10px;">
|
||
<button class="mac-btn-primary width-full js-list-tool-clone-trigger">克隆</button>
|
||
<button class="mac-btn-primary js-list-delete-trigger js-tom-alert-trigger"
|
||
tom-alert-type="warning"
|
||
tom-alert-msg="删除吗?"
|
||
>删除</button>
|
||
</div>
|
||
<div class="tom-modal-footer" hidden>
|
||
<button class="mac-btn-primary width-full js-custom-condition-filter">确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="article" tabindex="-1" tom-modal-lock="true" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">文章编辑终端</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
|
||
<div class="tom-modal-body-flex">
|
||
|
||
<div class="editor-container">
|
||
<div id="div-modal-editor" class="article-area" style="padding: 15px; overflow-y: auto; outline: none;"></div>
|
||
</div>
|
||
|
||
<input hidden type="hidden" class="js-tom-modal-save-input" id="s-hidden-markdown">
|
||
<input type="checkbox" class="js-tom-modal-save-checked" value="1" lock checked hidden>
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-tom-modal-save"
|
||
onclick="f_list_article()"
|
||
tom-modal-save-id=""
|
||
tom-modal-save-url="/nasa/list/detail/"
|
||
tom-modal-save-close="true"
|
||
>确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="art-sync" tabindex="-1" tom-modal-lock="true" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">json</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<table>
|
||
<tr>
|
||
<td>ID:</td>
|
||
<td><input class="art-sync-id" type="text" class="mac-input-medium text-secondary js-tom-modal-save-input"></td>
|
||
</tr>
|
||
<tr>
|
||
<td>siteGroupCode:</td>
|
||
<td><input class="art-sync-sitegroupcode" type="text" class="mac-input-medium text-secondary js-tom-modal-save-input"></td>
|
||
</tr>
|
||
<tr>
|
||
<td>TYPE:</td>
|
||
<td>
|
||
<select class="art-sync-type">
|
||
<option value="put">put</option>
|
||
</select>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-art-sync-save js-enter">确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="json" tabindex="-1" tom-modal-lock="true" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">json</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<textarea class="js-tom-modal-save-input" style="min-width:500px; min-height:600px;"></textarea>
|
||
<input type="checkbox" class="js-tom-modal-save-checked" value="1" lock checked hidden>
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-tom-modal-save"
|
||
tom-modal-save-id=""
|
||
tom-modal-save-url="/nasa/list/detail/"
|
||
tom-modal-save-close="true"
|
||
>确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="image" tabindex="-1" tom-modal-lock="false" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">image</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<img src="">
|
||
<input type="checkbox" class="js-tom-modal-save-checked" value="1" lock checked hidden>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="text" tabindex="-1" tom-modal-lock="true" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">text</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<textarea class="js-tom-modal-save-input" style="min-width:800px; min-height:600px;"></textarea>
|
||
<input type="checkbox" class="js-tom-modal-save-checked" value="1" lock checked hidden>
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-tom-modal-save"
|
||
tom-modal-save-id=""
|
||
tom-modal-save-url="/nasa/list/detail/"
|
||
tom-modal-save-close="true"
|
||
>确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="nasabook" tabindex="-1" tom-modal-lock="true" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">nasa book</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<textarea class="js-tom-modal-save-input" field="content" style="min-width:1200px; min-height:800px;"></textarea>
|
||
<input type="checkbox" class="js-tom-modal-save-checked" field="content" value="1" lock checked hidden>
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-tom-modal-save"
|
||
tom-modal-save-id=""
|
||
tom-modal-save-url="/nasa/book/"
|
||
tom-modal-save-close="true"
|
||
>确定</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tom-modal" tom-modal-name="order" tabindex="-1" tom-modal-mark="mask" tom-modal-lock="false" hidden>
|
||
<div class="tom-modal-inner">
|
||
<div class="tom-modal-header">
|
||
<span class="text-muted">排序 & 行数</span>
|
||
<a class="text-muted js-tom-modal-close">✕</a>
|
||
</div>
|
||
<div class="tom-modal-body-flex">
|
||
<div class="flex-align-center">
|
||
<span class="text-to-right" style="width: 60px;">显示行数:</span>
|
||
<input type="number" class="flex-1 js-page-limit-text" value="{{ $aData['aPager']['iLimit'] }}">
|
||
</div>
|
||
@foreach ($aData["aPager"]["aOrderBySchema"] as $aOrderBySchema)
|
||
@if (!empty($aOrderBySchema))
|
||
<div class="flex-align-center js-page-orderby">
|
||
<span class="text-to-right" style="width: 60px;">排序 {{$loop->iteration}}:</span>
|
||
<select class="text-p text-primary js-page-orderby-field">
|
||
<option value="">--- 字段 ---</option>
|
||
@foreach ($aData['aListField'] as $k => $v)
|
||
@continue (is_array($v))
|
||
<option value="{{ $k }}" @if ($aOrderBySchema['sField'] == $k) selected @endif>{{ $v }}</option>
|
||
@endforeach
|
||
</select>
|
||
<select class="flex-1 text-primary js-page-orderby-sort">
|
||
<option value="">--- 排序 ---</option>
|
||
<option value="asc" @if ($aOrderBySchema['sSort'] == 'asc') selected @endif>升序 (ASC)</option>
|
||
<option value="desc" @if ($aOrderBySchema['sSort'] == 'desc') selected @endif>降序(DESC)</option>
|
||
</select>
|
||
</div>
|
||
@else
|
||
<div class="flex-align-center js-page-orderby">
|
||
<span class="text-to-right" style="width: 60px;">排序 {{$loop->iteration}}:</span>
|
||
<select class="text-p text-primary js-page-orderby-field">
|
||
<option value="">--- 字段 ---</option>
|
||
@foreach ($aData['aListField'] as $k => $v)
|
||
@continue (is_array($v))
|
||
<option value="{{ $k }}">{{ $v }}</option>
|
||
@endforeach
|
||
</select>
|
||
<select class="flex-1 text-primary js-page-orderby-sort">
|
||
<option value="">--- 排序 ---</option>
|
||
<option value="asc" selected>升序(ASC)</option>
|
||
<option value="desc">降序(DESC)</option>
|
||
</select>
|
||
</div>
|
||
@endif
|
||
@endforeach
|
||
</div>
|
||
<div class="tom-modal-footer">
|
||
<button class="mac-btn-primary width-full js-custom-condition-filter">确定</button>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<!--
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-type="info"
|
||
tom-alert-msg="干几把啥?"
|
||
tom-alert-url="123"
|
||
tom-alert-confirm="false"
|
||
tom-alert-icon-visible="false"
|
||
tom-alert-border-variant="false"
|
||
tom-alert-data-id="123"
|
||
>全参数</button>
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-msg="干几把啥?"
|
||
>最少参数</button>
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-type="info"
|
||
tom-alert-msg="干几把啥?"
|
||
>info</button>
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-type="warning"
|
||
tom-alert-msg="干几把啥?"
|
||
>warning</button>
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-type="danger"
|
||
tom-alert-msg="干几把啥?"
|
||
>danger</button>
|
||
<button class="mac-btn-primary js-tom-alert-trigger"
|
||
tom-alert-type="success"
|
||
tom-alert-msg="干几把啥?"
|
||
>success</button>
|
||
|
||
|
||
|
||
-->
|