Merge branch 'origin' into 'japanese'

Update 4.4.1

See merge request harukin/core!62
This commit is contained in:
harukin
2019-08-17 08:42:47 +09:00
110 changed files with 34848 additions and 50754 deletions

View File

@@ -33,5 +33,6 @@ main.fullscreen .fc td:last-child {
.bootstrap-tagsinput {
width: 100%;
padding: 6px 12px;
margin-bottom: 0px !important;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -107,6 +107,7 @@ App::$strings["Link to source"] = "Enlace a la fuente";
App::$strings["Event title"] = "Título del evento";
App::$strings["Start date and time"] = "Fecha y hora de comienzo";
App::$strings["End date and time"] = "Fecha y hora de finalización";
App::$strings["Timezone:"] = "Zona horaria: ";
App::$strings["Description"] = "Descripción";
App::$strings["Location"] = "Ubicación";
App::$strings["Previous"] = "Anterior";
@@ -165,6 +166,7 @@ App::$strings["Some permissions may be inherited from your channel's <a href=\"s
App::$strings["You must be logged in to see this page."] = "Debe haber iniciado sesión para poder ver esta página.";
App::$strings["Posts and comments"] = "Publicaciones y comentarios";
App::$strings["Only posts"] = "Solo publicaciones";
App::$strings["This is the home page of %s."] = "Esta es la página personal de %s.";
App::$strings["Insufficient permissions. Request redirected to profile page."] = "Permisos insuficientes. Petición redirigida a la página del perfil.";
App::$strings["Search Results For:"] = "Buscar resultados para:";
App::$strings["Reset form"] = "Reiniciar el formulario";
@@ -260,7 +262,6 @@ App::$strings["Edit Description"] = "Editar la descripción";
App::$strings["Edit Location"] = "Modificar la dirección";
App::$strings["Preview"] = "Previsualizar";
App::$strings["Permission settings"] = "Configuración de permisos";
App::$strings["Timezone:"] = "Zona horaria: ";
App::$strings["Advanced Options"] = "Opciones avanzadas";
App::$strings["l, F j"] = "l j F";
App::$strings["Edit event"] = "Editar evento";
@@ -940,7 +941,6 @@ App::$strings["Client key starts with"] = "La \"client key\" empieza por";
App::$strings["No name"] = "Sin nombre";
App::$strings["Remove authorization"] = "Eliminar autorización";
App::$strings["Permissions denied."] = "Permisos denegados.";
App::$strings["Import"] = "Importar";
App::$strings["Authorize application connection"] = "Autorizar una conexión de aplicación";
App::$strings["Return to your app and insert this Security Code:"] = "Vuelva a su aplicación e introduzca este código de seguridad: ";
App::$strings["Please login to continue."] = "Por favor inicie sesión para continuar.";
@@ -1567,7 +1567,7 @@ App::$strings["Connect"] = "Conectar";
App::$strings["Public Forum:"] = "Foro público:";
App::$strings["Keywords: "] = "Palabras clave:";
App::$strings["Don't suggest"] = "No sugerir:";
App::$strings["Common connections (estimated):"] = "Conexiones comunes (estimadas): ";
App::$strings["Common connections (estimated):"] = "Conexiones comunes (estimadas): ";
App::$strings["Global Directory"] = "Directorio global:";
App::$strings["Local Directory"] = "Directorio local:";
App::$strings["Finding:"] = "Encontrar:";
@@ -1914,6 +1914,7 @@ App::$strings["Please visit %s to approve or reject the suggestion."] = "Por fav
App::$strings["[\$Projectname:Notify]"] = "[\$Projectname:Aviso]";
App::$strings["created a new post"] = "ha creado una nueva entrada";
App::$strings["commented on %s's post"] = "ha comentado la entrada de %s";
App::$strings["repeated %s's post"] = "repetida la entrada de %s";
App::$strings["edited a post dated %s"] = "ha editado una entrada fechada el %s";
App::$strings["edited a comment dated %s"] = "ha editado un comentario fechado el %s";
App::$strings["Wiki updated successfully"] = "El wiki se ha actualizado con éxito";
@@ -2284,8 +2285,10 @@ App::$strings["This app looks in posts for the words/text you specify below, and
App::$strings["Comma separated list of keywords to hide"] = "Lista separada por comas de palabras clave para ocultar";
App::$strings["Word, /regular-expression/, lang=xx, lang!=xx"] = "Palabra, /expresión regular/, lang=xx, lang!=xx";
App::$strings["NSFW"] = "NSFW";
App::$strings["Not allowed."] = "No permitido/a.";
App::$strings["Max queueworker threads"] = "Máximo de hilos en la cola";
App::$strings["Assume workers dead after ___ seconds"] = "Asumir que el proceso de trabajo está muerto después de ___ segundos";
App::$strings["Pause before starting next task: (microseconds. Minimum 100 = .0001 seconds)"] = "Haga una pausa antes de comenzar la siguiente tarea: (microsegundos. Mínimo 100 =.0001 segundos)";
App::$strings["Queueworker Settings"] = "Configuración del gestor de procesos de trabajo en cola";
App::$strings["Insane Journal Crosspost Connector Settings saved."] = "Se han guardado los ajustes del Conector de publicación cruzada de InsaneJournal.";
App::$strings["Insane Journal Crosspost Connector App"] = "App Ajustes del Conector de publicación cruzada de InsaneJournal";
@@ -2520,7 +2523,7 @@ App::$strings["Your channel has been upgraded to \$Projectname version"] = "Su c
App::$strings["Please have a look at the"] = "Por favor, eche un vistazo a la ";
App::$strings["git history"] = "historial del git";
App::$strings["change log"] = "lista de cambios";
App::$strings["for further infos."] = "para más información.";
App::$strings["for further info."] = "para más información.";
App::$strings["Upgrade Info"] = "Información de actualización";
App::$strings["Do not show this again"] = "No mostrar esto de nuevo";
App::$strings["Access Denied"] = "Acceso denegado";
@@ -3100,6 +3103,7 @@ App::$strings["activity"] = "la/su actividad";
App::$strings["a-z, 0-9, -, and _ only"] = "a-z, 0-9, -, and _ only";
App::$strings["Design Tools"] = "Herramientas de diseño web";
App::$strings["Pages"] = "Páginas";
App::$strings["Import"] = "Importar";
App::$strings["Import website..."] = "Importar un sitio web...";
App::$strings["Select folder to import"] = "Seleccionar la carpeta que se va a importar";
App::$strings["Import from a zipped folder:"] = "Importar desde una carpeta comprimida: ";
@@ -3304,6 +3308,9 @@ App::$strings["Like this thing"] = "Me gusta esto";
App::$strings["l F d, Y \\@ g:i A"] = "l d de F, Y \\@ G:i";
App::$strings["Starts:"] = "Comienza:";
App::$strings["Finishes:"] = "Finaliza:";
App::$strings["l F d, Y"] = "l F d, Y";
App::$strings["Start:"] = "Iniciar: ";
App::$strings["End:"] = "Finalizar: ";
App::$strings["This event has been added to your calendar."] = "Este evento ha sido añadido a su calendario.";
App::$strings["Not specified"] = "Sin especificar";
App::$strings["Needs Action"] = "Necesita de una intervención";
@@ -3346,6 +3353,8 @@ App::$strings["Embedding disabled"] = "Incrustación deshabilitada";
App::$strings["OpenWebAuth: %1\$s welcomes %2\$s"] = "OpenWebAuth: %1\$s da la bienvenida a %2\$s";
App::$strings["Start calendar week on Monday"] = "Comenzar el calendario semanal por el lunes";
App::$strings["Default is Sunday"] = "Por defecto es domingo";
App::$strings["Event Timezone Selection"] = "Selección del huso horario del evento";
App::$strings["Allow event creation in timezones other than your own."] = "Permitir la creación de eventos en husos horarios distintos del suyo.";
App::$strings["Search by Date"] = "Buscar por fecha";
App::$strings["Ability to select posts by date ranges"] = "Capacidad de seleccionar entradas por rango de fechas";
App::$strings["Tag Cloud"] = "Nube de etiquetas";
@@ -3386,11 +3395,6 @@ App::$strings["Suppress Duplicate Posts/Comments"] = "Prevenir entradas o coment
App::$strings["Prevent posts with identical content to be published with less than two minutes in between submissions."] = "Prevenir que entradas con contenido idéntico se publiquen con menos de dos minutos de intervalo.";
App::$strings["Auto-save drafts of posts and comments"] = "Guardar automáticamente borradores de entradas y comentarios";
App::$strings["Automatically saves post and comment drafts in local browser storage to help prevent accidental loss of compositions"] = "Guarda automáticamente los borradores de comentarios y publicaciones en el almacenamiento del navegador local para ayudar a evitar la pérdida accidental de composiciones.";
App::$strings["Events"] = "Eventos";
App::$strings["Smart Birthdays"] = "Cumpleaños inteligentes";
App::$strings["Make birthday events timezone aware in case your friends are scattered across the planet."] = "Enlazar los eventos de cumpleaños con el huso horario en el caso de que sus amigos estén dispersos por el mundo.";
App::$strings["Event Timezone Selection"] = "Selección del huso horario del evento";
App::$strings["Allow event creation in timezones other than your own."] = "Permitir la creación de eventos en husos horarios distintos del suyo.";
App::$strings["Manage"] = "Gestionar";
App::$strings["Navigation Channel Select"] = "Navegación por el selector de canales";
App::$strings["Change channels directly from within the navigation dropdown menu"] = "Cambiar de canales directamente desde el menú de navegación desplegable";

View File

@@ -1077,17 +1077,9 @@ function justifyPhotos(id) {
justifiedGalleryActive = true;
$('#' + id).show();
$('#' + id).justifiedGallery({
selector: 'a, div:not(.spinner, #page-end)',
selector: 'a, div:not(#page-end)',
margins: 3,
border: 0,
sizeRangeSuffixes: {
'lt100': '-3',
'lt240': '-3',
'lt320': '-3',
'lt500': '-2',
'lt640': '-2',
'lt1024': '-1'
}
border: 0
}).on('jg.complete', function(e){ justifiedGalleryActive = false; });
}

View File

@@ -1,8 +0,0 @@
[region=aside]
[widget=eventstools][/widget]
[widget=tasklist][/widget]
[/region]
[region=right_aside]
[widget=notifications][/widget]
[widget=newmember][/widget]
[/region]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

105
view/tpl/cal_calendar.tpl Executable file
View File

@@ -0,0 +1,105 @@
<script>
var calendar;
$(document).ready(function() {
var calendarEl = document.getElementById('calendar');
calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'dayGrid' ],
eventSources: [ {{$sources}} ],
timeZone: '{{$timezone}}',
locale: '{{$lang}}',
eventTextColor: 'white',
header: false,
height: 'auto',
firstDay: {{$first_day}},
monthNames: aStr['monthNames'],
monthNamesShort: aStr['monthNamesShort'],
dayNames: aStr['dayNames'],
dayNamesShort: aStr['dayNamesShort'],
allDayText: aStr['allday'],
eventClick: function(info) {
var event_id = info.event._def.extendedProps.item.id;
showEvent(event_id);
},
loading: function(isLoading, view) {
$('#events-spinner').show();
$('#today-btn > i').hide();
if(!isLoading) {
$('#events-spinner').hide();
$('#today-btn > i').show();
}
}
});
calendar.render();
$('#title').text(calendar.view.title);
$('#today-btn').on('click', function() {
calendar.today();
$('#title').text(calendar.view.title);
});
$('#prev-btn').on('click', function() {
calendar.prev();
$('#title').text(calendar.view.title);
});
$('#next-btn').on('click', function() {
calendar.next();
$('#title').text(calendar.view.title);
});
$(document).on('click','#fullscreen-btn', updateSize);
$(document).on('click','#inline-btn', updateSize);
});
function showEvent(event_id) {
$.get(
'cal/{{$nick}}?id='+event_id,
function(data){
$.colorbox({ scrolling: false, html: data, onComplete: function() { $.colorbox.resize(); }});
}
);
}
function changeView(action, viewName) {
calendar.changeView(viewName);
$('#title').text(calendar.view.title);
$('#view_selector').html(views[calendar.view.type]);
return;
}
function updateSize() {
calendar.updateSize();
}
</script>
<div class="generic-content-wrapper">
<div class="section-title-wrapper">
<div class="float-right">
<div class="btn-group">
<button id="prev-btn" class="btn btn-outline-secondary btn-sm" title="{{$prev}}"><i class="fa fa-backward"></i></button>
<button id="today-btn" class="btn btn-outline-secondary btn-sm" title="{{$today}}"><div id="events-spinner" class="spinner s"></div><i class="fa fa-bullseye" style="display: none; width: 1rem;"></i></button>
<button id="next-btn" class="btn btn-outline-secondary btn-sm" title="{{$next}}"><i class="fa fa-forward"></i></button>
</div>
<button id="fullscreen-btn" type="button" class="btn btn-outline-secondary btn-sm" onclick="makeFullScreen();"><i class="fa fa-expand"></i></button>
<button id="inline-btn" type="button" class="btn btn-outline-secondary btn-sm" onclick="makeFullScreen(false);"><i class="fa fa-compress"></i></button>
</div>
<h2 id="title"></h2>
<div class="clear"></div>
</div>
<div class="section-content-wrapper-np">
<div id="calendar"></div>
</div>
</div>

View File

@@ -39,13 +39,26 @@ $(document).ready(function() {
defaultView: default_view,
defaultDate: default_date,
weekNumbers: true,
navLinks: true,
navLinkDayClick: function(date, jsEvent) {
calendar.gotoDate( date );
changeView('timeGridDay');
},
navLinkWeekClick: function(date, jsEvent) {
calendar.gotoDate( date );
changeView('timeGridWeek');
},
monthNames: aStr['monthNames'],
monthNamesShort: aStr['monthNamesShort'],
dayNames: aStr['dayNames'],
dayNamesShort: aStr['dayNamesShort'],
allDayText: aStr['allday'],
snapDuration: '00:15:00',
snapDuration: '00:05:00',
dateClick: function(info) {
if(new_event.id) {
@@ -56,6 +69,14 @@ $(document).ready(function() {
allday = info.allDay;
if(allday) {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').hide();
}
else {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').show();
}
var dtend = new Date(info.date.toUTCString());
if(allday) {
dtend.setDate(dtend.getDate() + 1);
@@ -72,14 +93,14 @@ $(document).ready(function() {
$('#id_description').attr('disabled', false);
$('#id_location').attr('disabled', false);
$('#calendar_select').val($("#calendar_select option:first").val()).attr('disabled', false);
$('#id_dtstart').val(info.date.toUTCString());
$('#id_dtend').val(dtend ? dtend.toUTCString() : '');
$('#id_dtstart').val(info.date.toUTCString().slice(0, -4));
$('#id_dtend').val(dtend ? dtend.toUTCString().slice(0, -4) : '');
$('#id_description').val('');
$('#id_location').val('');
$('#event_submit').val('create_event').html('{{$create}}');
$('#event_delete').hide();
new_event = { id: new_event_id, title: 'New event', start: $('#id_dtstart').val(), end: $('#id_dtend').val(), allDay: info.allDay, editable: true, color: '#bbb' };
new_event = { id: new_event_id, title: 'New event', start: info.date.toUTCString(), end: dtend ? dtend.toUTCString() : '', allDay: info.allDay, editable: true, color: '#bbb' };
calendar.addEvent(new_event);
},
@@ -101,6 +122,13 @@ $(document).ready(function() {
$('#l2s').remove();
}
if(event.allDay) {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').hide();
}
else {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').show();
}
if(event.publicId == new_event_id) {
$('#calendar_select').trigger('change');
$('#event_submit').show();
@@ -136,8 +164,8 @@ $(document).ready(function() {
$('#id_timezone_select').val(event.extendedProps.timezone);
$('#id_location').val(event.extendedProps.location);
$('#id_categories').tagsinput('add', event.extendedProps.categories);
$('#id_dtstart').val(dtstart.toUTCString());
$('#id_dtend').val(dtend.toUTCString());
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
$('#id_description').val(event.extendedProps.description);
$('#id_location').val(event.extendedProps.location);
$('#event_submit').val('update_event').html('{{$update}}');
@@ -183,15 +211,14 @@ $(document).ready(function() {
},
eventResize: function(info) {
console.log(info);
var event = info.event._def;
var dtstart = new Date(info.event._instance.range.start);
var dtend = new Date(info.event._instance.range.end);
$('#id_title').val(event.title);
$('#id_dtstart').val(dtstart.toUTCString());
$('#id_dtend').val(dtend.toUTCString());
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
@@ -205,8 +232,8 @@ $(document).ready(function() {
'preview': 0,
'summary': event.title,
'timezone_select': event.extendedProps.timezone,
'dtstart': dtstart.toUTCString(),
'dtend': dtend.toUTCString(),
'dtstart': dtstart.toUTCString().slice(0, -4),
'dtend': dtend.toUTCString().slice(0, -4),
'adjust': event.allDay ? 0 : 1,
'categories': event.extendedProps.categories,
'desc': event.extendedProps.description,
@@ -222,8 +249,8 @@ $(document).ready(function() {
'id[]': event.extendedProps.calendar_id,
'uri': event.extendedProps.uri,
'timezone_select': event.extendedProps.timezone,
'dtstart': dtstart ? dtstart.toUTCString() : '',
'dtend': dtend ? dtend.toUTCString() : '',
'dtstart': dtstart ? dtstart.toUTCString().slice(0, -4) : '',
'dtend': dtend ? dtend.toUTCString().slice(0, -4) : '',
'allday': event.allDay ? 1 : 0
})
.fail(function() {
@@ -239,8 +266,8 @@ $(document).ready(function() {
var dtend = new Date(info.event._instance.range.end);
$('#id_title').val(event.title);
$('#id_dtstart').val(dtstart.toUTCString());
$('#id_dtend').val(dtend.toUTCString());
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
@@ -254,8 +281,8 @@ $(document).ready(function() {
'preview': 0,
'summary': event.title,
'timezone_select': event.extendedProps.timezone,
'dtstart': dtstart.toUTCString(),
'dtend': dtend.toUTCString(),
'dtstart': dtstart.toUTCString().slice(0, -4),
'dtend': dtend.toUTCString().slice(0, -4),
'adjust': event.allDay ? 0 : 1,
'categories': event.extendedProps.categories,
'desc': event.extendedProps.description,
@@ -271,8 +298,8 @@ $(document).ready(function() {
'id[]': event.extendedProps.calendar_id,
'uri': event.extendedProps.uri,
'timezone_select': event.extendedProps.timezone,
'dtstart': dtstart ? dtstart.toUTCString() : '',
'dtend': dtend ? dtend.toUTCString() : '',
'dtstart': dtstart ? dtstart.toUTCString().slice(0, -4) : '',
'dtend': dtend ? dtend.toUTCString().slice(0, -4) : '',
'allday': event.allDay ? 1 : 0
})
.fail(function() {
@@ -340,8 +367,8 @@ $(document).ready(function() {
$('#calendar_select').val('channel_calendar').attr('disabled', true);
$('#id_title').val(resource.summary);
$('#id_dtstart').val(new Date(resource.dtstart).toUTCString());
$('#id_dtend').val(new Date(resource.dtend).toUTCString());
$('#id_dtstart').val(new Date(resource.dtstart).toUTCString().slice(0, -4));
$('#id_dtend').val(new Date(resource.dtend).toUTCString().slice(0, -4));
$('#id_categories').tagsinput('add', '{{$categories}}'),
$('#id_description').val(resource.description);
$('#id_location').val(resource.location);
@@ -352,13 +379,25 @@ $(document).ready(function() {
else
$('#event_submit').html('{{$update}}');
}
if(default_view === 'dayGridMonth');
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').hide();
});
function changeView(action, viewName) {
function changeView(viewName) {
calendar.changeView(viewName);
$('#title').text(calendar.view.title);
$('#view_selector').html(views[calendar.view.type]);
if(viewName === 'dayGridMonth') {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').hide();
}
else {
$('#id_dtstart_wrapper, #id_dtend_wrapper, #id_timezone_select_wrapper').show();
}
return;
}
@@ -538,13 +577,13 @@ function exportDate() {
<div class="dropdown">
<button id="view_selector" type="button" class="btn btn-outline-secondary btn-sm dropdown-toggle" data-toggle="dropdown"></button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'dayGridMonth'); return false;">{{$month}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'timeGridWeek'); return false;">{{$week}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'timeGridDay'); return false;">{{$day}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('dayGridMonth'); return false;">{{$month}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('timeGridWeek'); return false;">{{$week}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('timeGridDay'); return false;">{{$day}}</a></li>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'listMonth'); return false;">{{$list_month}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'listWeek'); return false;">{{$list_week}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('changeView', 'listDay'); return false;">{{$list_day}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('listMonth'); return false;">{{$list_month}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('listWeek'); return false;">{{$list_week}}</a></li>
<a class="dropdown-item" href="#" onclick="changeView('listDay'); return false;">{{$list_day}}</a></li>
</div>
<div class="btn-group">
<button id="prev-btn" class="btn btn-outline-secondary btn-sm" title="{{$prev}}"><i class="fa fa-backward"></i></button>

View File

@@ -9,12 +9,12 @@
<div class="wall-item-outside-wrapper{{if $item.is_comment}} comment{{/if}}{{if $item.previewing}} preview{{/if}}" data-mid="{{$item.mid}}" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="clearfix wall-item-content-wrapper{{if $item.is_comment}} comment{{/if}}" id="wall-item-content-wrapper-{{$item.id}}">
{{if $item.photo}}
<div class="wall-photo-item{{if $item.is_new && !$item.title}} wall-item-head-new rounded-top{{/if}}" id="wall-photo-item-{{$item.id}}">
<div class="wall-photo-item" id="wall-photo-item-{{$item.id}}">
{{$item.photo}}
</div>
{{/if}}
{{if $item.event}}
<div class="wall-event-item{{if $item.is_new && !$item.title}} wall-item-head-new rounded-top{{/if}}" id="wall-event-item-{{$item.id}}">
<div class="wall-event-item" id="wall-event-item-{{$item.id}}">
{{$item.event}}
</div>
{{/if}}
@@ -26,7 +26,7 @@
<hr class="m-0">
{{/if}}
{{/if}}
<div class="p-2 clearfix wall-item-head{{if $item.is_new && !$item.title && !$item.event && !$item.is_comment && !$item.photo}} wall-item-head-new rounded-top{{/if}}" >
<div class="p-2 clearfix wall-item-head{{if !$item.title && !$item.event && !$item.photo}} rounded-top{{/if}}{{if $item.is_new && !$item.event && !$item.is_comment}} wall-item-head-new{{/if}}" >
{{if $item.thr_parent}}
<a href="javascript:doscroll('{{$item.thr_parent}}',{{$item.parent}});" title="{{$item.top_hint}}" class="float-right"><i class="fa fa-angle-double-up">&nbsp;&nbsp;&nbsp;</i></a>
{{/if}}

View File

@@ -9,12 +9,12 @@
<div class="wall-item-outside-wrapper{{if $item.is_comment}} comment{{/if}}{{if $item.previewing}} preview{{/if}}" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="clearfix wall-item-content-wrapper{{if $item.is_comment}} comment{{/if}}" id="wall-item-content-wrapper-{{$item.id}}">
{{if $item.photo}}
<div class="wall-photo-item{{if $item.is_new && !$item.title}} wall-item-head-new rounded-top{{/if}}" id="wall-photo-item-{{$item.id}}">
<div class="wall-photo-item" id="wall-photo-item-{{$item.id}}">
{{$item.photo}}
</div>
{{/if}}
{{if $item.event}}
<div class="wall-event-item{{if $item.is_new && !$item.title}} wall-item-head-new rounded-top{{/if}}" id="wall-event-item-{{$item.id}}">
<div class="wall-event-item" id="wall-event-item-{{$item.id}}">
{{$item.event}}
</div>
{{/if}}
@@ -26,7 +26,7 @@
<hr class="m-0">
{{/if}}
{{/if}}
<div class="p-2 clearfix wall-item-head{{if $item.is_new && !$item.title && !$item.event && !$item.is_comment && !$item.photo}} wall-item-head-new rounded-top{{/if}}">
<div class="p-2 clearfix wall-item-head{{if !$item.title && !$item.event && !$item.photo}} rounded-top{{/if}}{{if $item.is_new && !$item.event && !$item.is_comment}} wall-item-head-new{{/if}}">
<div class="wall-item-info" id="wall-item-info-{{$item.id}}" >
<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} h-card p-author" id="wall-item-photo-wrapper-{{$item.id}}">
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" /></a>

View File

@@ -1,4 +1,4 @@
<div class='form-group field select'>
<div id='id_{{$field.0}}_wrapper' class='form-group field select'>
<label for='id_{{$field.0}}'>{{$field.1}}</label>
<select class="form-control" name='{{$field.0}}' id='id_{{$field.0}}'>
{{foreach $field.4 as $group=>$opts}}

View File

@@ -1,4 +1,4 @@
<div id="mail-{{$mail.id}}" class="mb-2 clearfix mail-conv-outside-wrapper">
<div id="mail-{{$mail.id}}" class="mb-2 clearfix mail-conv-outside-wrapper"{{if $mail.sig}} data-sig="{{$mail.sig}}"{{/if}}>
<div class="mb-2 clearfix wall-item-head">
<div class="wall-item-info" >
<a href="{{$mail.from_url}}"><img class="wall-item-photo" src="{{$mail.from_photo}}" alt="{{$mail.from_name}}" /></a>

View File

@@ -11,6 +11,7 @@
<input type="hidden" id="inp-prvmail-expires" name="expires" value="{{$defexpire}}" />
<input type="hidden" name="media_str" id="jot-media" value="" />
<input type="hidden" name="preview" id="mail-preview" value="0" />
<input type="hidden" name="signature" id="mail-sig" value="" />
{{if $new}}
<div class="form-group">
<label for="recip">{{$to}}</label>

View File

@@ -20,7 +20,7 @@
<hr class="m-0">
{{/if}}
{{/if}}
<div class="p-2 clearfix wall-item-head{{if $item.is_new && !$item.title && !$item.event && !$item.is_comment}} wall-item-head-new rounded-top{{/if}}">
<div class="p-2 clearfix wall-item-head{{if !$item.title && !$item.event && !$item.photo}} rounded-top{{/if}}{{if $item.is_new && !$item.event && !$item.is_comment}} wall-item-head-new{{/if}}" >
<div class="wall-item-info" id="wall-item-info-{{$item.id}}" >
<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}">
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" />