<div class="container-fluid">
    <div class="row align-items-center justify-content-center">
        <div class="col">
            <div class="card my-4">
                <div class="card-header">
                    <h3>Configuración de Dispositivos Hikvision</h3>
                </div>
                <div class="card-body">
                    <!-- Acciones principales -->
                    <div class="row mb-4">
                        <div class="col-md-12 text-right">
                            <button class="btn btn-success" 
                                    ng-click="sincronizarHikvision()" 
                                    ng-if="modulos_acciones_list | contains:'920601'">
                                <i class="fas fa-sync-alt"></i> Sincronizar con Hikvision
                            </button>
                        </div>
                    </div>

                    <!-- Formulario de dispositivo -->
                    <form ng-submit="guardarDispositivo()">
                        <div class="row">
                            <div class="col-md-4 form-group">
                                <label>Nombre:</label>
                                <input type="text" ng-model="dispositivo_form.nombre" class="form-control" required>
                            </div>
                            <div class="col-md-4 form-group">
                                <label>Dirección IP:</label>
                                <input type="text" ng-model="dispositivo_form.ip_address" class="form-control" required>
                            </div>
                            <div class="col-md-4 form-group">
                                <label>Puerto:</label>
                                <input type="number" ng-model="dispositivo_form.puerto" class="form-control" required>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-4 form-group">
                                <label>Usuario:</label>
                                <input type="text" ng-model="dispositivo_form.usuario" class="form-control" required>
                            </div>
                            <div class="col-md-4 form-group">
                                <label>Contraseña:</label>
                                <input type="password" ng-model="dispositivo_form.password" class="form-control" ng-required="!editando">
                            </div>
                            <div class="col-md-4 form-group">
                                <label>Ubicación:</label>
                                <input type="text" ng-model="dispositivo_form.ubicacion" class="form-control">
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-4 form-group">
                                <label>Tipo de Acceso:</label>
                                <select ng-model="dispositivo_form.tipo_acceso" class="form-control" required>
                                    <option value="ENTRADA">Entrada</option>
                                    <option value="SALIDA">Salida</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mt-3">
                            <div class="col-md-12 text-right">
                                <button type="button" class="btn btn-secondary" ng-click="nuevoDispositivo()" ng-if="editando">
                                    <i class="fas fa-times"></i> Cancelar
                                </button>
                                <button type="submit" class="btn btn-primary">
                                    <i class="fas" ng-class="{'fa-save': editando, 'fa-plus': !editando}"></i>
                                    {{editando ? 'Actualizar' : 'Agregar'}} Dispositivo
                                </button>
                            </div>
                        </div>
                    </form>

                    <!-- Spinner de carga -->
                    <div class="mt-4 text-center" ng-if="loading">
                        <div class="spinner-border text-primary" role="status">
                            <span class="sr-only">Cargando...</span>
                        </div>
                        <p class="mt-2">Procesando...</p>
                    </div>

                    <!-- Lista de dispositivos -->
                    <div class="table-responsive mt-4" ng-if="!loading">
                        <table class="table table-striped table-hover">
                            <thead class="thead-dark">
                                <tr>
                                    <th>Nombre</th>
                                    <th>IP</th>
                                    <th>Puerto</th>
                                    <th>Usuario</th>
                                    <th>Ubicación</th>
                                    <th>Tipo</th>
                                    <th>Acciones</th>
                                </tr>
                            </thead>
                            <tbody>
                                <tr ng-repeat="dispositivo in dispositivos">
                                    <td>{{dispositivo.nombre}}</td>
                                    <td>{{dispositivo.ip_address}}</td>
                                    <td>{{dispositivo.puerto}}</td>
                                    <td>{{dispositivo.usuario}}</td>
                                    <td>{{dispositivo.ubicacion}}</td>
                                    <td>
                                        <span class="badge" ng-class="{'badge-success': dispositivo.tipo_acceso === 'ENTRADA', 'badge-danger': dispositivo.tipo_acceso === 'SALIDA'}">
                                            {{dispositivo.tipo_acceso}}
                                        </span>
                                    </td>
                                    <td>
                                        <button class="btn btn-sm btn-primary" 
                                                ng-click="editarDispositivo(dispositivo)"
                                                ng-if="modulos_acciones_list | contains:'920603'">
                                            <i class="fas fa-edit"></i> Editar
                                        </button>
                                    </td>
                                </tr>
                            </tbody>
                        </table>
                    </div>
                    
                    <!-- Mensaje sin resultados -->
                    <div class="alert alert-info mt-4" ng-if="!loading && dispositivos.length === 0">
                        <i class="fas fa-info-circle"></i> No se encontraron dispositivos configurados.
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>