Admin Play.AsemediaDS
Documentacion del editor rapido para invitaciones personalizadas.
Que hace este modulo
/Admin/ es el panel principal. El editor se abre desde una invitacion personalizada
usando edit=true. La invitacion carga el panel JavaScript y consume
/Admin/custom-editor/api.php para leer y guardar los datos del custom.
Para subir invitaciones nuevas, resubir archivos, generar mensaje y abrir editor con ticket temporal, usa Panel Admin.
Archivos principales:
assets/js/EventScriptCore.js: detecta modo editor y registra accesos.assets/js/CustomEditorPanel.js: muestra el panel, login, guardado, historial y accesos.Admin/custom-editor/api.php: API JSON para cargar, guardar, revertir y registrar accesos.
Abrir editor manualmente
https://play.asemediads.com/{EVENT}/{TYPE}/{CODE}/?id={CUSTOM_ID}&edit=true
Ejemplo:
https://play.asemediads.com/MiCumple/IV/CUMPS18/?id=40deVictor&edit=true
Autologin
Para abrir sin pedir contrasena y sin mostrar el password, genera primero un ticket temporal
con la API y envia ese ticket en el hash de la URL. El JavaScript lo lee, lo guarda en
localStorage/sessionStorage y limpia la URL.
POST /Admin/custom-editor/api.php
{
"action": "create_editor_ticket",
"event": "MiCumple",
"type": "IV",
"code": "CUMPS18",
"id": "40deVictor",
"auth": "PASSWORD"
}
https://play.asemediads.com/{EVENT}/{TYPE}/{CODE}/?id={CUSTOM_ID}&edit=true#editor_ticket={TICKET}
Ejemplo:
https://play.asemediads.com/MiCumple/IV/CUMPS18/?id=40deVictor&edit=true#editor_ticket=TICKET_TEMPORAL
Parametros aceptados:
editor_ticketeditor_tokeneditor_autheditor_passwordauth
Recomendado: usar #editor_ticket=.... El password real solo debe viajar por POST al crear el ticket.
PowerShell
function Open-AseEditor {
param(
[string]$Event,
[string]$Type,
[string]$Code,
[string]$Id,
[string]$Password
)
$baseUrl = "https://play.asemediads.com"
$apiUrl = "$baseUrl/Admin/custom-editor/api.php"
$payload = @{
action = "create_editor_ticket"
event = $Event
type = $Type
code = $Code
id = $Id
auth = $Password
} | ConvertTo-Json
$ticketResponse = Invoke-RestMethod -Uri $apiUrl -Method Post -ContentType "application/json" -Body $payload
$url = "{0}/{1}/{2}/{3}/?id={4}&edit=true#editor_ticket={5}" -f `
$baseUrl,
[uri]::EscapeDataString($Event),
[uri]::EscapeDataString($Type),
[uri]::EscapeDataString($Code),
[uri]::EscapeDataString($Id),
[uri]::EscapeDataString([string]$ticketResponse.ticket)
Start-Process $url
}
API
Endpoint:
https://play.asemediads.com/Admin/custom-editor/api.php
Acciones principales:
load: carga datos, cambios y accesos.save: guarda cambios enData.txt.revert_change: revierte un cambio.track_access: registra visitas y clics.access_logs: lista accesos.delete_access_entry: elimina un acceso; requiere admin.create_editor_ticket: devuelve un ticket temporal para autologin.
Archivos del custom
{EVENT}/{TYPE}/Customs/{CODE}/{CUSTOM_ID}/Data.txt
{EVENT}/{TYPE}/Customs/{CODE}/{CUSTOM_ID}/log.json
{EVENT}/{TYPE}/Customs/{CODE}/{CUSTOM_ID}/access_log.json