34579 lines
1.9 MiB
Plaintext
34579 lines
1.9 MiB
Plaintext
<?xml version="1.0" encoding="UTF-8"?>
|
|
<theme name="Default" author_name="Invision Power Services, Inc" author_url="http://www.invisionpower.com">
|
|
<field sc_key="ajax_pagination" sc_type="YesNo" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="1" sc_tab_key="custom" sc_show_in_vse="1" sc_title="themesetting_ajax_pagination" sc_order="9">[{"key":"","value":""}]</field>
|
|
<field sc_key="alternate_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#2d4760" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_alternate_button" sc_order="3">[{"key":"","value":""}]</field>
|
|
<field sc_key="alternate_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_alternate_button_font" sc_order="4">[]</field>
|
|
<field sc_key="area_background" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ebebeb" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_area_background" sc_order="8">[]</field>
|
|
<field sc_key="area_background_dark" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#283a4a" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_area_background_dark" sc_order="9">[]</field>
|
|
<field sc_key="area_background_light" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#f5f5f5" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_area_background_light" sc_order="10">[]</field>
|
|
<field sc_key="area_background_reset" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_area_background_reset" sc_order="11">[]</field>
|
|
<field sc_key="button_bar" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#3c6994" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_button_bar" sc_order="13">[]</field>
|
|
<field sc_key="enable_fluid_width" sc_type="YesNo" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="0" sc_tab_key="custom" sc_show_in_vse="1" sc_title="themesetting_enable_fluid_width" sc_order="6">[{"key":"","value":""},{"key":"","value":""}]</field>
|
|
<field sc_key="fluid_width_size" sc_type="Number" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="95" sc_tab_key="custom" sc_show_in_vse="1" sc_title="themesetting_fluid_width_size" sc_order="7">[]</field>
|
|
<field sc_key="header" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#3c6994" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_header" sc_order="2">[]</field>
|
|
<field sc_key="important_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#37848b" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_important_button" sc_order="7">[]</field>
|
|
<field sc_key="important_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_important_button_font" sc_order="8">[]</field>
|
|
<field sc_key="item_status" sc_type="Color" sc_multiple="0" sc_updated="1441703443" sc_app="core" sc_default="#3c6994" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="Item Status Badges Active" sc_order="22">[{"key":"","value":""}]</field>
|
|
<field sc_key="js_include" sc_type="Radio" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="head" sc_tab_key="custom" sc_show_in_vse="0" sc_title="Javascript include location" sc_order="8"><![CDATA[[{"key":"head","value":"Inside the <head>"},{"key":"footer","value":"Just before <\/body> tag"}]]]></field>
|
|
<field sc_key="light_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#e5e5e5" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_light_button" sc_order="9">[]</field>
|
|
<field sc_key="light_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#333333" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_light_button_font" sc_order="10">[]</field>
|
|
<field sc_key="link" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#3c6994" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_link" sc_order="3">[]</field>
|
|
<field sc_key="link_hover" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ad1457" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_link_hover" sc_order="4">[]</field>
|
|
<field sc_key="main_nav" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#304d66" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_main_nav" sc_order="3">[]</field>
|
|
<field sc_key="main_nav_tab" sc_type="Color" sc_multiple="0" sc_updated="1441703443" sc_app="core" sc_default="#f5f5f5" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="Main Navigation Active Tab" sc_order="4">[{"key":"","value":""}]</field>
|
|
<field sc_key="mentions" sc_type="Color" sc_multiple="0" sc_updated="1442572429" sc_app="core" sc_default="#3084c4" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="Mentions" sc_order="24">[{"key":"","value":""}]</field>
|
|
<field sc_key="moderated" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#f7edf1" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_moderated" sc_order="13">[{"key":"","value":""}]</field>
|
|
<field sc_key="moderated_light" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#fcf7f9" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_moderated_light" sc_order="14">[{"key":"","value":""}]</field>
|
|
<field sc_key="moderated_text" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#880e4f" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_moderated_text" sc_order="15">[{"key":"","value":""}]</field>
|
|
<field sc_key="moderated_text_light" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#a4768f" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_moderated_text_light" sc_order="16">[{"key":"","value":""}]</field>
|
|
<field sc_key="normal_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#417ba3" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_normal_button" sc_order="5">[]</field>
|
|
<field sc_key="normal_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_normal_button_font" sc_order="6">[]</field>
|
|
<field sc_key="notification_bubble" sc_type="Color" sc_multiple="0" sc_updated="1441703443" sc_app="core" sc_default="#ad1457" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="Notification Bubble" sc_order="23">[{"key":"","value":""}]</field>
|
|
<field sc_key="page_background" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ebeef2" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_page_background" sc_order="1">[]</field>
|
|
<field sc_key="poll_bar" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#2a94de" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_poll_bar" sc_order="17">[]</field>
|
|
<field sc_key="prefix" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ad1457" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_prefix" sc_order="6">[]</field>
|
|
<field sc_key="price" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#c62828" sc_tab_key="textcolors" sc_show_in_vse="1" sc_title="Price" sc_order="9">[{"key":"","value":""}]</field>
|
|
<field sc_key="primary_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#37474f" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_primary_button" sc_order="1">[]</field>
|
|
<field sc_key="primary_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_primary_button_font" sc_order="2">[]</field>
|
|
<field sc_key="profile_header" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#262e33" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_profile_header" sc_order="5">[]</field>
|
|
<field sc_key="rating_hover" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#2a94de" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_rating_hover" sc_order="18">[]</field>
|
|
<field sc_key="rating_on" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ad1457" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_rating_on" sc_order="19">[]</field>
|
|
<field sc_key="responsive" sc_type="YesNo" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="1" sc_tab_key="custom" sc_show_in_vse="0" sc_title="themesetting_responsive" sc_order="1">[{"key":"","value":""},{"key":"","value":""}]</field>
|
|
<field sc_key="rounded_photos" sc_type="YesNo" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="1" sc_tab_key="custom" sc_show_in_vse="0" sc_title="themesetting_rounded_photos" sc_order="2">[{"key":"","value":""},{"key":"","value":""}]</field>
|
|
<field sc_key="secondary_title" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#3d5e78" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_secondary_title" sc_order="7">[{"key":"","value":""}]</field>
|
|
<field sc_key="secondary_title_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_secondary_title_font" sc_order="8">[{"key":"","value":""}]</field>
|
|
<field sc_key="section_title" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#304d66" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_section_title" sc_order="5">[]</field>
|
|
<field sc_key="section_title_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_section_title_font" sc_order="6">[]</field>
|
|
<field sc_key="selected" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ebf4f9" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_selected" sc_order="7">[]</field>
|
|
<field sc_key="sidebar_position" sc_type="Select" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="right" sc_tab_key="custom" sc_show_in_vse="0" sc_title="themesetting_sidebar_position" sc_order="3">[{"key":"left","value":"Left"},{"key":"right","value":"Right"}]</field>
|
|
<field sc_key="sidebar_responsive" sc_type="YesNo" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="1" sc_tab_key="custom" sc_show_in_vse="1" sc_title="themesetting_sidebar_responsive" sc_order="4">[{"key":"","value":""}]</field>
|
|
<field sc_key="step_background" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ad1457" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="themesetting_step_background" sc_order="20">[]</field>
|
|
<field sc_key="text_color" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#525252" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_text_color" sc_order="1">[]</field>
|
|
<field sc_key="text_light" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#9c9c9c" sc_tab_key="textcolors" sc_show_in_vse="0" sc_title="themesetting_text_light" sc_order="2">[]</field>
|
|
<field sc_key="timeline_color" sc_type="Color" sc_multiple="0" sc_updated="1441703443" sc_app="core" sc_default="#4d4d4d" sc_tab_key="frontendcolors" sc_show_in_vse="1" sc_title="activity_stream_timeline" sc_order="21">[{"key":"","value":""}]</field>
|
|
<field sc_key="very_light_button" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#ffffff" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_very_light_button" sc_order="11">[]</field>
|
|
<field sc_key="very_light_button_font" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#333333" sc_tab_key="buttoncolors" sc_show_in_vse="0" sc_title="themesetting_very_light_button_font" sc_order="12">[]</field>
|
|
<field sc_key="widget_title_bar" sc_type="Color" sc_multiple="0" sc_updated="1435569146" sc_app="core" sc_default="#3c6994" sc_tab_key="frontendcolors" sc_show_in_vse="0" sc_title="themesetting_widget_title_bar" sc_order="12">[]</field>
|
|
<template template_group="advancedsettings" template_name="ruleCriteriaForm" template_data="$name, $field, $type, $value" template_location="admin" template_app="core"><![CDATA[<select name="{$name}[criteria_field]">
|
|
<option value='to'{{if $field == 'to' }} selected{{endif}}>{lang="ie_cf_to"}</option>
|
|
<option value='from'{{if $field == 'from' }} selected{{endif}}>{lang="ie_cf_from"}</option>
|
|
<option value='sbjt'{{if $field == 'sbjt' }} selected{{endif}}>{lang="ie_cf_sbjt"}</option>
|
|
<option value='body'{{if $field == 'body' }} selected{{endif}}>{lang="ie_cf_body"}</option>
|
|
</select>
|
|
<select name="{$name}[criteria_type]">
|
|
<option value='ctns'{{if $field == 'ctns' }} selected{{endif}}>{lang="ie_ct_ctns"}</option>
|
|
<option value='eqls'{{if $field == 'eqls' }} selected{{endif}}>{lang="ie_ct_eqls"}</option>
|
|
<option value='regx'{{if $field == 'regx' }} selected{{endif}}>{lang="ie_ct_regx"}</option>
|
|
</select>
|
|
<input type="text" name="{$name}[criteria_value]" value="{$value}" required>]]></template>
|
|
<template template_group="advancedsettings" template_name="taskResult" template_data="$success, $message, $id" template_location="admin" template_app="core"><![CDATA[{{if $success}}
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
{lang="task_manager_ran_log"}
|
|
<pre>{{if is_string( $message )}}{$message}{{else}}{expression="var_export( $message, TRUE )"}{{endif}}</pre>
|
|
</div>
|
|
{{else}}
|
|
<p class="ipsMessage ipsMessage_error">
|
|
{$message}
|
|
</p>
|
|
{{endif}}
|
|
<div class="ipsAreaBackground ipsClearfix ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=settings&controller=advanced&do=runTask&id={$id}"}" class="ipsButton ipsButton_primary">{lang="task_manager_run_again"}</a> {lang="or"} <a href="{url="app=core&module=settings&controller=advanced&do=tasks"}" class="ipsButton ipsButton_alternate">{lang="task_manager_return"}</a>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="applicationWrapper" template_data="$tree, $lang" template_location="admin" template_app="core"><![CDATA[<br />
|
|
<br />
|
|
<div class='acpBlock_title'>{lang="$lang"}</div>
|
|
{$tree|raw}]]></template>
|
|
<template template_group="applications" template_name="appRowTitle" template_data="$app" template_location="admin" template_app="core"><![CDATA[{$app->_title} <span class='ipsType_small ipsType_unbold ipsType_light'>{$app->version}</span>]]></template>
|
|
<template template_group="applications" template_name="codeHookEditor" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input->error}}
|
|
<div class="ipsPad ipsAreaBackground_light">
|
|
<p class='ipsMessage ipsMessage_error'>{lang="$input->error"}</p>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<section class='ipsAreaBackground_light ipsPad_half' id='elCodeHookEditor' data-controller='core.admin.system.codeHook'>
|
|
<div class="ipsColumns ipsColumns_collapsePhone">
|
|
<div class="ipsColumn ipsColumn_wide">
|
|
{expression="array_pop( $sidebar )" raw="true"}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{$input->html()|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsType_center">
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</section>
|
|
</form>]]></template>
|
|
<template template_group="applications" template_name="codeHookSidebar" template_data="$data" template_location="admin" template_app="core"><![CDATA[<div class="cHookEditor_sidebar ipsScrollbar ipsSideMenu">
|
|
{{foreach $data as $className => $constructs}}
|
|
<h3 class='ipsType_reset ipsAreaBackground ipsPad_half'>{$className}</h3>
|
|
<br>
|
|
{{if isset( $constructs['properties'] )}}
|
|
<h4 class='ipsSideMenu_title'>{lang="plugin_hook_properties"}</h4>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $constructs['properties'] as $property}}
|
|
<li class="ipsSideMenu_item" data-signature='{$property->signature}' data-codeToInject='{$property->codeToInject}'>
|
|
<a href='#'>
|
|
{{if $property->isPublic()}}
|
|
<i class="fa fa-circle-o" title="public"></i>
|
|
{{else}}
|
|
<i class="fa fa-circle" title="protected"></i>
|
|
{{endif}}
|
|
{{if $property->isStatic()}}
|
|
static
|
|
{{endif}}
|
|
${$property->getName()}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if isset( $constructs['methods'] )}}
|
|
<h4 class='ipsSideMenu_title'>{lang="plugin_hook_methods"}</h4>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $constructs['methods'] as $method}}
|
|
<li class="ipsSideMenu_item" data-signature='{$method->signature}' data-codeToInject='{$method->codeToInject}'>
|
|
<a href='#'>
|
|
{{if $method->isPublic()}}
|
|
<i class="fa fa-circle-o" title="public"></i>
|
|
{{else}}
|
|
<i class="fa fa-circle" title="protected"></i>
|
|
{{endif}}
|
|
{{if $method->isFinal()}}
|
|
final
|
|
{{endif}}
|
|
{{if $method->isStatic()}}
|
|
static
|
|
{{endif}}
|
|
{{if $method->isAbstract()}}
|
|
abstract
|
|
{{endif}}
|
|
{{if !$method->getNumberOfParameters()}}
|
|
{$method->getName()}()
|
|
{{else}}
|
|
{{if !$method->getNumberOfRequiredParameters()}}
|
|
{$method->getName()}( {$method->getNumberOfParameters()} )
|
|
{{elseif $method->getNumberOfParameters() != $method->getNumberOfRequiredParameters()}}
|
|
{$method->getName()}( {$method->getNumberOfRequiredParameters()} [, {expression="$method->getNumberOfParameters() - $method->getNumberOfRequiredParameters()"} ] )
|
|
{{else}}
|
|
{$method->getName()}( [ {$method->getNumberOfParameters()} ] )
|
|
{{endif}}
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="details" template_data="$application, $lastUpgrade" template_location="admin" template_app="core"><![CDATA[<table class='ipsTable'>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="app_details_app_title"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{lang="__app_{$application->directory}"}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="app_details_app_version"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{lang="app_version_string" sprintf="$application->version, $application->long_version"}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="app_details_app_author"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$application->author}{{if $application->website}} <a href='{$application->website}' target='_blank'><i class="fa fa-external-link-square" title='{$application->website}'></i></a>{{endif}}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="app_details_app_installed"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{datetime="$application->added"}
|
|
</td>
|
|
</tr>
|
|
{{if $lastUpgrade !== NULL}}
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="app_details_app_updated"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{datetime="$lastUpgrade"}
|
|
</td>
|
|
</tr>
|
|
{{endif}}
|
|
</table>
|
|
]]></template>
|
|
<template template_group="applications" template_name="downloadDialog" template_data="$application" template_location="admin" template_app="core"><![CDATA[<div class='ipsPad ipsAreaBackground ipsType_center'>
|
|
<a href='{url="app=core&module=applications&controller=applications&appKey={$application}&do=download&type=build"}' class='ipsButton'>{lang="app_buildanddownload"}</a>
|
|
<a href='{url="app=core&module=applications&controller=applications&appKey={$application}&do=download&type=download"}' class='ipsButton ipsButton_alternate'>{lang="app_justdownload"}</a>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="enhancements" template_data="$rows" template_location="admin" template_app="core"><![CDATA[<div id='acpEnhancements' data-ipsKeyNav data-ipsKeyNav-observe='t r return'>
|
|
<h2 class='acpBlock_title'>{lang="enhancements_ips"}</h2>
|
|
<br>
|
|
|
|
{{foreach $rows[1] as $key => $data}}
|
|
<div class='ipsAreaBackground_light ipsPad' data-keyNavBlock>
|
|
{{if $data['icon'] != ""}}<img src='{resource="enhancements/{$data['icon']}" app="core" location="admin"}' class='acpEnhancement_logo ipsPos_right'>{{endif}}
|
|
<h3><strong>{lang="$data['title']"}</strong></h3>
|
|
{{if $data['description']}}
|
|
<p class='ipsType_medium'>
|
|
{lang="$data['description']"}
|
|
</p>
|
|
{{endif}}
|
|
<br>
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
{{if $data['enabled'] == 1}}
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=enableToggle&id={$key}&status=0"}' class='ipsButton ipsButton_medium ipsButton_alternate' data-keyAction='t'>{lang="disable"}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=enableToggle&id={$key}&status=1"}' class='ipsButton ipsButton_medium ipsButton_alternate' data-keyAction='t'>{lang="enable"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{if $data['config']}}
|
|
<li>
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=edit&id={$key}"}'><i class='fa fa-pencil'></i> {lang="enhancements_configure"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<br>
|
|
{{endforeach}}
|
|
|
|
<br>
|
|
<h2 class='acpBlock_title'>{lang="enhancements_thirdparty"}</h2>
|
|
<br>
|
|
|
|
{{foreach $rows[0] as $key => $data}}
|
|
<div class='ipsAreaBackground_light ipsPad' data-keyNavBlock>
|
|
{{if $data['icon'] }}<img src='{resource="enhancements/{$data['icon']}" app="{$data['app']}" location="admin"}' class='acpEnhancement_logo ipsPos_right'>{{endif}}
|
|
<h3><strong>{lang="$data['title']"}</strong></h3>
|
|
{{if $data['description']}}
|
|
<p class='ipsType_medium'>
|
|
{lang="$data['description']"}
|
|
</p>
|
|
{{endif}}
|
|
<br>
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
{{if $data['enabled'] == 1}}
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=enableToggle&id={$key}&status=0"}' class='ipsButton ipsButton_medium ipsButton_alternate' data-keyAction='t'>{lang="disable"}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=enableToggle&id={$key}&status=1"}' class='ipsButton ipsButton_medium ipsButton_alternate' data-keyAction='t'>{lang="enable"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{if $data['config']}}
|
|
<li>
|
|
<a href='{url="app=core&module=applications&controller=enhancements&do=edit&id={$key}"}'><i class='fa fa-pencil'></i> {lang="enhancements_configure"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<br>
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="menuItem" template_data="$item, $id" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='cMenuManager_leaf' data-role="menuItem" data-itemID='{$id}'>
|
|
{template="menuItemTools" group="applications" app="core" params="$item, $id"}
|
|
<h3 class='cMenuManager_leafTitle'>{$item->title()}</h3>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="menuItemTools" template_data="$item, $id" template_location="admin" template_app="core"><![CDATA[{{$children = $item->children();}}
|
|
|
|
<ul class='ipsList_inline ipsPos_right cMenuManager_tools'>
|
|
<li class='ipsJS_hide'>
|
|
<a href='{url="app=core&module=applications&controller=menu&do=form&id={$id}"}' data-ipsTooltip title='{lang="edit_menu_item"}' data-action='editItem'>
|
|
{lang="edit"}
|
|
</a>
|
|
</li>
|
|
{{if $item instanceof \IPS\core\extensions\core\FrontNavigation\Menu}}
|
|
<li>
|
|
<a href='#' data-action='editDropdown' data-ipsTooltip title='{lang="menu_manager_dropdown_edit"}' class='ipsType_blendLinks'>
|
|
<i class='fa fa-server'></i> <i class='fa fa-caret-right'></i>
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
<li>
|
|
<a href='{url="app=core&module=applications&controller=menu&do=remove&id={$id}"}' data-action='removeItem' data-ipsTooltip title='{lang="menu_manager_dropdown_delete"}' class='ipsType_blendLinks'>
|
|
<i class='fa fa-times'></i></i>
|
|
</a>
|
|
</li>
|
|
</ul>]]></template>
|
|
<template template_group="applications" template_name="menuManager" template_data="$items" template_location="admin" template_app="core"><![CDATA[
|
|
<div data-controller='core.admin.system.menuManager'>
|
|
<div class='cMenuManager_preview ipsResponsive_hidePhone' data-role='preview'>
|
|
<h2 class='acpBlock_title'>
|
|
<a href='#' data-action='previewToggle' class='ipsType_blendLinks ipsPos_right'>
|
|
<i class='fa fa-times ipsHide' data-role='closePreview'></i>
|
|
<i class='fa fa-chevron-up' data-role='openPreview'></i>
|
|
</a>
|
|
{lang="menu_manager_live_preview"}
|
|
|
|
{{$themes = \IPS\Theme::getThemesWithAccessPermission();}}
|
|
{{if count ( $themes ) > 1 }}
|
|
<a href='#elPreviewTheme_menu' id='elPreviewTheme' data-ipsMenu data-ipsMenu-above class='ipsType_medium ipsType_light ipsType_blendLinks'>{lang="menu_manager_preview_theme"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elPreviewTheme_menu' class='ipsMenu ipsMenu_selectable ipsHide'>
|
|
{{foreach $themes as $id => $set }}
|
|
<li class='ipsMenu_item{{if ( isset( \IPS\Request::i()->previewThemeId ) and $id == \IPS\Request::i()->previewThemeId ) or ( !isset( \IPS\Request::i()->previewThemeId ) and $id == \IPS\Theme::i()->id )}} ipsMenu_itemChecked{{endif}}'>
|
|
<a href="{url="app=core&module=applications&controller=menu&previewThemeId={$id}"}">{$set->_title}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
</h2>
|
|
<div data-role='previewBody'>
|
|
{{if $previewThemeId = \IPS\Request::i()->previewThemeId}}
|
|
<iframe src="{url="app=core&module=system&controller=ajax&do=menuPreview&theme={$previewThemeId}" base="front"}"></iframe>
|
|
{{else}}
|
|
<iframe src="{url="app=core&module=system&controller=ajax&do=menuPreview" base="front"}"></iframe>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class='cMenuManager'>
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_veryWide cMenuManager_column'>
|
|
<div class='cMenuManager_editorWrapper'>
|
|
<div class='cMenuManager_main' data-manager='main'>
|
|
<ul class='ipsList_inline ipsClearfix'>
|
|
<li class='ipsPos_right'>
|
|
<a href="{url="app=core&module=applications&controller=menu&do=form&parent=0"}" class='ipsButton ipsButton_verySmall ipsButton_primary' data-ipsTooltip title='{lang="add_menu_item"}' data-action='newItem'>{lang="add_menu_item_short"}</a>
|
|
</li>
|
|
</ul>
|
|
<h2 class='acpBlock_title acpBlock_titleSmall acpBlock_titleDark ipsSpacer_top ipsSpacer_half'>
|
|
{lang="menu_manager_main_menu"}
|
|
</h2>
|
|
|
|
<div class='cMenuManager_root'>
|
|
<ol data-bar-id='0' class='cMenuManager_branch'>
|
|
{{foreach $items[0] as $id => $item}}
|
|
<li id='menu_{$id}' data-role='menuNode'>
|
|
{template="menuItem" group="applications" app="core" params="$item, $id"}
|
|
<ol>
|
|
{{if isset( $items[ $id ] ) && count( $items[ $id ] )}}
|
|
{{foreach $items[ $id ] as $cid => $citem}}
|
|
<li id='menu_{$cid}' data-role='menuNode'>
|
|
{template="menuItem" group="applications" app="core" params="$citem, $cid"}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ol>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
<div class='cMenuManager_dropdown ipsHide' data-manager='dropdown'>
|
|
{{foreach $items as $i => $_items}}
|
|
{{foreach $_items as $id => $item}}
|
|
{{if $item instanceof \IPS\core\extensions\core\FrontNavigation\Menu}}
|
|
{template="menuManagerDropdown" group="applications" app="core" params="$item, $id, 0"}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid cMenuManager_form' data-role='editForm' id='elMenuManager_formColumn'>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="menuManagerDropdown" template_data="$item, $id, $parent" template_location="admin" template_app="core"><![CDATA[{{$children = $item->children();}}
|
|
{{if $children !== NULL}}
|
|
<div data-dropdownID='{$id}'>
|
|
<ul class='ipsList_inline ipsList_noSpacing ipsClearfix'>
|
|
<li class='ipsPos_right'>
|
|
<a href="{url="app=core&module=applications&controller=menu&do=form&parent={$id}"}" class='ipsButton ipsButton_verySmall ipsButton_primary' data-ipsTooltip title='{lang="add_menu_item"}' data-action='newDropdown'>{lang="add_menu_item_short"}</a>
|
|
</li>
|
|
<li>
|
|
{{if $parent}}
|
|
<a href='#' class='ipsButton ipsButton_link ipsButton_verySmall' data-action='navBack' data-parentID='{$parent->id}'><i class='fa fa-chevron-left'></i> {lang="menu_manager_back_to" sprintf="$parent->title()"}</a>
|
|
{{else}}
|
|
<a href='#' class='ipsButton ipsButton_link ipsButton_verySmall' data-action='navBack' data-parentID='0'><i class='fa fa-chevron-left'></i> {lang="menu_manager_back_to" sprintf="\IPS\Member::loggedIn()->language()->addToStack('menu_manager_main_menu')"}</a>
|
|
{{endif}}
|
|
</li>
|
|
</ul>
|
|
<h2 class='acpBlock_title acpBlock_titleSmall acpBlock_titleDark ipsSpacer_top ipsSpacer_half'>
|
|
{lang="menu_manager_dropdown_for" sprintf="$item->title()"}
|
|
</h2>
|
|
|
|
<ol id="elDropDownMenu_{$id}" data-menuID='{$id}' class="ipsList_reset ipsMenu ipsMenu_auto ipsMenu_bottomCenter">
|
|
{{if count( $children )}}
|
|
{{foreach $children as $cid => $citem}}
|
|
{template="menuManagerDropdownItem" group="applications" app="core" params="$citem, $cid"}
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='cMenuManager_emptyList ipsType_light ipsType_center'>{lang="menu_manager_list"}</li>
|
|
{{endif}}
|
|
</ol>
|
|
</div>
|
|
{{$parent = $item;}}
|
|
{{foreach $children as $i => $_items}}
|
|
{{foreach $_items as $id => $item}}
|
|
{{if $item instanceof \IPS\core\extensions\core\FrontNavigation\Menu}}
|
|
{template="menuManagerDropdown" group="applications" app="core" params="$item, $id, $parent"}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="applications" template_name="menuManagerDropdownItem" template_data="$citem, $cid" template_location="admin" template_app="core"><![CDATA[
|
|
<li class='ipsMenu_item' data-role='menuItem' id='menu_{$cid}' data-itemID='{$cid}'>
|
|
<div>
|
|
{template="menuItemTools" group="applications" app="core" params="$citem, $cid"}
|
|
{$citem->title()}
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="applications" template_name="menuManagerForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="admin" template_app="core"><![CDATA[
|
|
<div data-ipsSticky data-ipsSticky-spacing='70' data-ipsSticky-relativeTo='#elMenuManager_formColumn'>
|
|
<div>
|
|
<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm data-itemID='{expression="\IPS\Request::i()->id"}'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
{{if is_array($v)}}
|
|
{{foreach $v as $_k => $_v}}
|
|
<input type="hidden" name="{$k}[{$_k}]" value="{$_v}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
|
|
{{if isset( $elements['']['menu_manager_extension'])}}
|
|
<div class='ipsFieldRow_section'>{lang="menu_item_type"}</div>
|
|
{{$elem = $elements['']['menu_manager_extension'];}}
|
|
{{$options = $elem->options['options'];}}
|
|
{{$leftOver = count( $options ) % 3;}}
|
|
{{$perCol1 = $perCol2 = $perCol3 = ( count( $options ) - $leftOver ) / 3;}}
|
|
{{if $leftOver >= 1}}
|
|
{{$perCol1++;}}
|
|
{{elseif $leftOver == 2}}
|
|
{{$perCol2++;}}
|
|
{{endif}}
|
|
<div class='ipsPad ipsAreaBackground_reset'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone' data-ipsSideMenu data-ipsSideMenu-type='radio'>
|
|
{template="menuManagerTypeColumn" group="applications" app="core" params="array_slice( $options, 0, $perCol1 ), $elem->value, $elem->options['disabled'], $elem->options['toggles']"}
|
|
{template="menuManagerTypeColumn" group="applications" app="core" params="array_slice( $options, $perCol1, $perCol2 ), $elem->value, $elem->options['disabled'], $elem->options['toggles']"}
|
|
{template="menuManagerTypeColumn" group="applications" app="core" params="array_slice( $options, ( $perCol1 + $perCol2 ) ), $elem->value, $elem->options['disabled'], $elem->options['toggles']"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsFieldRow_section'>{lang="menu_configuration"}</div>
|
|
<ul class='ipsList_reset ipsPad ipsAreaBackground_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $inputName => $input}}
|
|
{{if $inputName !== 'menu_manager_extension'}}
|
|
{{if is_object( $input ) }}
|
|
{$input->rowHtml($form)|raw}
|
|
{{else}}
|
|
{$input|raw}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
<ul class="ipsPad ipsType_center ipsList_reset ipsClearfix ipsAreaBackground_light">
|
|
{{foreach $actionButtons as $button}}
|
|
<li>{$button|raw}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</form>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="menuManagerTypeColumn" template_data="$items, $value, $disabled, $toggles" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsGrid_span4'>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios' role='radiogroup'>
|
|
{{foreach $items as $k => $option}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}' id='elRadioType_{$k}'>
|
|
<input type="radio" name="menu_manager_extension" value="{$k}" {{if (string) $value == (string) $k}}checked{{endif}} {{if $disabled === TRUE or ( is_array( $disabled ) and in_array( $k, $disabled ) )}}disabled{{endif}} {{if isset( $toggles[ $k ] ) and !empty( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}" data-toggle-visibleCheck="#elRadioType_{$k}" {{endif}} id="elRadio_menu_manager_extension_{$k}">
|
|
<label for='elMenuManagerExtension_{$k}'>{lang="$option"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="menuPreviewWrapper" template_data="$html, $title=NULL" template_location="admin" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{expression="output.getTitle( $title )"}</title>
|
|
{template="includeMeta" app="core" group="global" location="global" params=""}
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" if="theme.js_include != 'footer'" app="core" group="global" location="global" params=""}
|
|
</head>
|
|
<body class="ipsApp ipsPad ipsClearfix" id='elMenuManagerPreview_body'>
|
|
{$html|raw}
|
|
<main role="main" class="ipsLayout_container">
|
|
<div id="ipsLayout_contentArea">
|
|
<div id="ipsLayout_contentWrapper">
|
|
<div id="ipsLayout_mainArea">
|
|
<p class='ipsType_center ipsType_normal ipsType_light'>
|
|
{lang="menu_manager_preview_note"}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
{template="includeJS" if="theme.js_include == 'footer'" app="core" group="global" location="global" params=""}
|
|
{expression="output.endBodyCode" raw="true"}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="applications" template_name="schemaConflict" template_data="$name, $diff" template_location="admin" template_app="core"><![CDATA[
|
|
<p class="ipsMessage ipsMessage_error">{lang="database_conflict_message"}</p>
|
|
|
|
<div class="acpBlock">
|
|
<div class="acpBlock_title">{lang="database_conflict_title"}</div>
|
|
<table class="ipsTable diff">
|
|
<tr>
|
|
<th>{lang="database_conflict_schema"}</th>
|
|
<th>{lang="database_conflict_local"}</th>
|
|
</tr>
|
|
</table>
|
|
{$diff|raw}
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
<div class='ipsGrid'>
|
|
<div class='ipsGrid_span6'>
|
|
<a href='{url="app=core&module=applications&controller=developer&appKey="}{request="appKey"}&do=resolveSchemaConflicts&local=0&_name={$name}' class='ipsButton ipsButton_primary' data-delete-confirm="">{lang="database_conflict_choose"}</a>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<a href='{url="app=core&module=applications&controller=developer&appKey="}{request="appKey"}&do=resolveSchemaConflicts&local=1&_name={$name}' class='ipsButton ipsButton_primary'>{lang="database_conflict_choose"}</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="themeHookEditor" template_data="$bits, $hookData, $hookId, $template, $tabbedContent, $url" template_location="admin" template_app="core"><![CDATA[<section class='ipsPad_half ipsAreaBackground' id='elSkinHookEditor' data-controller='core.admin.system.themeHookEditor'>
|
|
<div class="ipsColumns ipsColumns_collapsePhone">
|
|
<div class="ipsColumn ipsColumn_wide" data-role="themeHookSidebar">
|
|
<div class="cHookEditor_sidebar ipsSideMenu ipsScrollbar">
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $bits as $k => $data}}
|
|
<li class="ipsSideMenu_item">
|
|
<a class="{{if $template == $k}}ipsSideMenu_itemActive cHookEditor_activeTemplate{{endif}}" href='{$url->setQueryString( 'do', 'editHook' )->setQueryString( 'template', $k )}' data-action="templateLink">
|
|
{$k}
|
|
{{if isset( $hookData[ $k ] ) AND count( $hookData[ $k ] )}}
|
|
<span class='ipsCommentCount ipsPos_right'>{expression="count( $hookData[ $k ] )"}</span>
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fluid" data-role="themeHookWindow">
|
|
{{if $template }}
|
|
<div class='cHookEditor_content' data-template='{$template}'>
|
|
{$tabbedContent|raw}
|
|
</div>
|
|
{{else}}
|
|
<div class="ipsType_center ipsType_large ipsEmpty" data-role="themeHookWindowPlaceholder">
|
|
<i class="fa fa-cogs"></i>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="applications" template_name="themeHookEditorTree" template_data="$node" template_location="admin" template_app="core"><![CDATA[{{if $node->nodeType === XML_TEXT_NODE or $node->nodeType === XML_CDATA_SECTION_NODE}}
|
|
{{if trim( $node->wholeText ) !== ''}}
|
|
<li><span data-unselectable>{$node->wholeText}</span></li>
|
|
{{endif}}
|
|
{{elseif $node->nodeType === XML_COMMENT_NODE}}
|
|
<li><span data-unselectable><!-- ... --></span></li>
|
|
{{elseif $node->nodeName === 'if' or $node->nodeName === 'foreach' or $node->nodeName === 'for'}}
|
|
<li>
|
|
<span data-unselectable>{\0{\0{$node->nodeName} {$node->attributes->getNamedItem('code')->nodeValue}\0}\0}</span>
|
|
{{if $node->hasChildNodes()}}
|
|
<ul>
|
|
{{foreach $node->childNodes as $child}}
|
|
{template="themeHookEditorTree" group="applications" params="$child"}
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
<span data-unselectable>{\0{\0end{$node->nodeName}\0}\0}</span>
|
|
</li>
|
|
{{else}}
|
|
<li data-selector="{expression="\IPS\core\modules\admin\applications\plugins::getSelector( $node )"}">
|
|
{{if $node->nodeName != 'ipscontent'}}
|
|
<span data-selectable><{expression="preg_replace( '/^(x_)?([a-z]+)(_x)?$/i', '$2', $node->nodeName )"}{{if $node->hasAttributes()}}{{for $i = 0; $i < $node->attributes->length; ++$i}} {$node->attributes->item( $i )->nodeName}="{$node->attributes->item( $i )->nodeValue}"{{endfor}}{{endif}}></span>
|
|
{{endif}}
|
|
{{if $node->hasChildNodes()}}
|
|
<ul>
|
|
{{foreach $node->childNodes as $child}}
|
|
{template="themeHookEditorTree" group="applications" params="$child"}
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if $node->nodeName != 'ipscontent'}}
|
|
<span data-selectable></{expression="preg_replace( '/^(x_)?([a-z]+)(_x)?$/i', '$2', $node->nodeName )"}></span>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}]]></template>
|
|
<template template_group="applications" template_name="themeHookEditorTreeRoot" template_data="$tree" template_location="admin" template_app="core"><![CDATA[<div class='cHookEditor_tree'>
|
|
<ul>
|
|
{template="themeHookEditorTree" group="applications" params="$tree"}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="applications" template_name="versionFormField" template_data="" template_location="admin" template_app="core"><![CDATA[<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
<input type='text' name='app_versions[0]' id='app_version_human' required aria-required='true' placeholder="1.0.0" size="10">
|
|
<br />
|
|
<span class='ipsFieldRow_desc'>{lang="add_app_version_ph"}</span>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<input type='text' name='app_versions[1]' id='app_version_long' required aria-required='true' placeholder="100000" size="8" maxlength="8">
|
|
<br />
|
|
<span class='ipsFieldRow_desc'>{lang="add_app_versionl_ph"}</span>
|
|
</div>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="customization" template_name="diff" template_data="$skinSet, $diff" template_location="admin" template_app="core"><![CDATA[<p class="ipsMessage ipsMessage_info">{lang="core_theme_set_diff_desc" sprintf="$skinSet->name"}</p>
|
|
<div class="acpBlock">
|
|
{{foreach $diff['templates'] as $app => $appData}}
|
|
{{foreach $appData as $location => $locationData}}
|
|
{{foreach $locationData as $group => $groupData}}
|
|
{{foreach $groupData as $name => $template}}
|
|
<div class="acpBlock_title">
|
|
{$template['template_app']}/{$template['template_location']}/{$template['template_group']}/{$template['template_name']}
|
|
{{if $template['added'] === true}}
|
|
<span class='ipsBadge ipsBadge_positive'>{lang="core_theme_set_template_new"}<span>
|
|
{{endif}}
|
|
{{if $template['deleted'] === true}}
|
|
<span class='ipsBadge ipsBadge_warning'>{lang="core_theme_set_template_deleted"}<span>
|
|
{{endif}}
|
|
</div>
|
|
{{if isset($template['oldHumanVersion']) AND isset($template['newHumanVersion'])}}
|
|
<table class="ipsTable diff restrict_height">
|
|
<tr>
|
|
<th><span>{$template['oldHumanVersion']}</span></th>
|
|
<th><span>{$template['newHumanVersion']}</span></th>
|
|
</tr>
|
|
</table>
|
|
{{endif}}
|
|
<div>
|
|
{$template['diff']|raw}
|
|
</div>
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
|
|
{{foreach $diff['css'] as $app => $appData}}
|
|
{{foreach $appData as $location => $locationData}}
|
|
{{foreach $locationData as $group => $pathData}}
|
|
{{foreach $pathData as $name => $css}}
|
|
<div class="acpBlock_title">
|
|
{$css['css_app']}/{$css['css_location']}/{$css['css_path']}/{$css['css_name']}
|
|
{{if $css['added'] === true}}
|
|
<span class='ipsBadge ipsBadge_positive'>{lang="core_theme_set_css_new"}<span>
|
|
{{endif}}
|
|
{{if $css['deleted'] === true}}
|
|
<span class='ipsBadge ipsBadge_warning'>{lang="core_theme_set_css_deleted"}<span>
|
|
{{endif}}
|
|
</div>
|
|
<div>
|
|
{$css['diff']|raw}
|
|
</div>
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="customization" template_name="diffExportWrapper" template_data="$html" template_location="admin" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Diff Export</title>
|
|
<link href="http://netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css" rel="stylesheet">
|
|
<style type="text/css">
|
|
/* ACP */
|
|
html {
|
|
background: #f9f9f9;
|
|
/*background: #f7f7f7;*/
|
|
/*background: #f9f9f9;*/
|
|
min-height: 100%;
|
|
position: relative;
|
|
}
|
|
|
|
body {
|
|
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
font-size: 13px;
|
|
line-height: 18px;
|
|
color: #404040;
|
|
height: 100%;
|
|
}
|
|
|
|
a {
|
|
color: #166693;
|
|
text-decoration: none;
|
|
}
|
|
|
|
a:hover {
|
|
color: #cd3816;
|
|
}
|
|
|
|
.ipsAreaBackground_dark {
|
|
background: #394248;
|
|
}
|
|
|
|
/* BLOCKS */
|
|
.acpBlock_title {
|
|
padding: 15px;
|
|
margin: 0;
|
|
background: #f0f0f0;
|
|
color: #151515;
|
|
font-size: 16px;
|
|
font-weight: normal;
|
|
}
|
|
|
|
/* Badges */
|
|
.ipsBadge {
|
|
height: 17px;
|
|
line-height: 17px;
|
|
padding: 0 8px;
|
|
border-radius: 10px;
|
|
font-size: 9px;
|
|
text-transform: uppercase;
|
|
font-weight: 500;
|
|
display: inline-block;
|
|
color: #fff;
|
|
vertical-align: bottom;
|
|
font-weight: bold;
|
|
text-shadow: none;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_medium {
|
|
height: 18px;
|
|
line-height: 18px;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_large {
|
|
height: 23px;
|
|
line-height: 23px;
|
|
padding: 0 10px;
|
|
}
|
|
|
|
/* Styles */
|
|
.ipsBadge_new, .ipsBadge_style1 {
|
|
background: #323232;
|
|
}
|
|
|
|
.ipsBadge_style2 {
|
|
background: #d42b39;
|
|
}
|
|
|
|
.ipsBadge_warning, .ipsBadge_style3 {
|
|
background: #834250;
|
|
}
|
|
|
|
.ipsBadge_positive, .ipsBadge_style4 {
|
|
background: #68a72f;
|
|
}
|
|
|
|
.ipsBadge_negative, .ipsBadge_style5 {
|
|
background: #a72f35;
|
|
}
|
|
|
|
.ipsBadge_neutral, .ipsBadge_style6 {
|
|
background: #b3b3b3;
|
|
}
|
|
|
|
.ipsBadge_intermediary, .ipsBadge_style7 {
|
|
background: #cbb641;
|
|
}
|
|
|
|
/* JS STUFF */
|
|
/* Used when JS is disabled and element set to show when JS enabled */
|
|
.ipsJS_none .ipsJS_show {
|
|
display: none;
|
|
}
|
|
|
|
.ipsJS_has .ipsJS_hide {
|
|
display: none;
|
|
}
|
|
|
|
|
|
/* Table */
|
|
.ipsTable {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
}
|
|
|
|
.ipsTable th {
|
|
text-align: left;
|
|
background: #f3f3f3;
|
|
padding: 15px 10px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsTable th a {
|
|
color: inherit;
|
|
}
|
|
|
|
.ipsTable th, .ipsTable td {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsTable td {
|
|
padding: 7px;
|
|
border-bottom: 1px solid rgba(0,0,0,0.01);
|
|
}
|
|
|
|
/* Diff */
|
|
table.diff {
|
|
width: 100%;
|
|
}
|
|
|
|
table.diff td, table.diff th {
|
|
width: 50%;
|
|
max-width: 500px;
|
|
overflow-x: auto;
|
|
}
|
|
|
|
table.diff td {
|
|
padding: 10px;
|
|
vertical-align: top;
|
|
white-space: pre;
|
|
white-space: pre-wrap;
|
|
font-family: monospace;
|
|
}
|
|
|
|
.diffDeleted {
|
|
background:rgb(255,224,224);
|
|
}
|
|
|
|
.diffInserted {
|
|
background:rgb(224,255,224);
|
|
}
|
|
|
|
/* Messages */
|
|
.ipsMessage {
|
|
padding: 15px 15px 15px 45px;
|
|
border-radius: 2px;
|
|
position: relative;
|
|
margin-bottom: 10px;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsMessage:before {
|
|
font-family: 'FontAwesome';
|
|
position: absolute;
|
|
top: 15px;
|
|
left: 15px;
|
|
font-size: 20px;
|
|
}
|
|
|
|
.ipsMessage_error {
|
|
background: #b52b38;
|
|
}
|
|
|
|
.ipsMessage_error:before {
|
|
content: '\\f06a';
|
|
}
|
|
|
|
.ipsMessage_success {
|
|
background: #53902f;
|
|
}
|
|
|
|
.ipsMessage_success:before {
|
|
content: '\\f00c';
|
|
}
|
|
|
|
.ipsMessage_warning {
|
|
background: #c48712;
|
|
}
|
|
|
|
.ipsMessage_warning:before {
|
|
content: '\\f071';
|
|
}
|
|
|
|
.ipsMessage_info, .ipsMessage_information {
|
|
background: #447a9a;
|
|
}
|
|
|
|
.ipsMessage_info:before, .ipsMessage_information:before {
|
|
content: '\\f05a';
|
|
}
|
|
|
|
.ipsMessage_code {
|
|
padding: 7px;
|
|
display: inline-block;
|
|
background: rgba(0,0,0,0.2);
|
|
border-radius: 3px;
|
|
float: right;
|
|
margin-top: -7px;
|
|
margin-right: -7px;
|
|
color: rgba(255,255,255,0.8);
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
{$html|raw}
|
|
</div>
|
|
</body>
|
|
</html>
|
|
]]></template>
|
|
<template template_group="customization" template_name="editor" template_data="$config, $dummy" template_location="admin" template_app="core"><![CDATA[
|
|
<noscript>
|
|
<p class="ipsMessage ipsMessage_error">{lang="editor_no_js"}</p>
|
|
</noscript>
|
|
|
|
<div class="ipsJS_show" data-controller="core.admin.customization.editorToolbars" data-url="{url="app=core&module=editor&controller=toolbar"}">
|
|
<div class="acpBlock">
|
|
<div class='ipsTabs ipsClearfix ipsJS_show acpFormTabBar' id='editor_tabbar' data-ipsTabBar data-ipsTabBar-contentArea='#editor_panels' data-ipsTabBar-updateURL='false'>
|
|
<ul role='tablist'>
|
|
<li><a href='#' class='ipsTabs_item ipsTabs_activeItem' id='desktop_tab' role="tab" aria-selected="true">{lang="editor_size_large"}</a></li>
|
|
<li><a href='#' class='ipsTabs_item' id='tablet_tab' role="tab" aria-selected="false">{lang="editor_size_medium"}</a></li>
|
|
<li><a href='#' class='ipsTabs_item' id='phone_tab' role="tab" aria-selected="false">{lang="editor_size_small"}</a></li>
|
|
</ul>
|
|
</div>
|
|
<div id='editor_panels'>
|
|
{{foreach array( 'desktop', 'tablet', 'phone' ) as $key}}
|
|
<div id='ipsTabs_editor_tabbar_{$key}_tab_panel' data-role="devicePanel" data-deviceKey="{$key}" class='ipsTabs_panel acpFormTabContent'>
|
|
<ul class='ipsToolList ipsToolList_horizontal ipsClearfix'>
|
|
<li>
|
|
<a class='ipsButton ipsButton_normal ipsButton_fullWidth editor_toolbarAddToolbar' href="#" data-action="addToolbar" data-deviceKey="{$key}"><i class='fa fa-plus'></i> {lang="theme_editor_add_toolbar"}</a>
|
|
</li>
|
|
<li>
|
|
<a class='ipsButton ipsButton_normal ipsButton_fullWidth editor_toolbarAddSeperator' href="#" data-action="addSep" data-deviceKey="{$key}"><i class='fa fa-plus'></i> {lang="theme_editor_add_separator"}</a>
|
|
</li>
|
|
</ul>
|
|
<div class='ipsPad'>
|
|
<h2 class='ipsClear ipsType_sectionHead'>{lang="editor"}</h2>
|
|
<p class='ipsType_light'>{lang="editor_toolbar_desc"}</p>
|
|
|
|
<br>
|
|
<div class='editor_dummy editor_dummy_{$key} cke_reset' data-role="dummyEditor" data-deviceKey="{$key}" id='editor_dummy_{$key}'>
|
|
<div class="dummy_toolbars cke_top cke_reset_all" id="{$key}_editor_toolbars">
|
|
{{if empty( $config[ $key ] )}}
|
|
<ul class="dummy_toolbar clearfix cke_toolbar" data-role="dummyToolbar"></ul>
|
|
{{else}}
|
|
{{foreach $config[ $key ] as $row}}
|
|
{{if isset( $row['name'] )}}
|
|
<div class='cke_toolbar'>
|
|
<ul class="dummy_toolbar clearfix cke_toolgroup" data-role="dummyToolbar">
|
|
{{if ( is_array( $row['items'] ))}}
|
|
{{foreach $row['items'] as $item}}
|
|
{{if $item === '-'}}
|
|
<li><span class="cke_toolbar_separator"></span></li>
|
|
{{else}}
|
|
<li id='{$key}_editorButton_{$item}'></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</div>
|
|
<div id="dummy_{$key}_contents" class='dummy_contents cke_bottom'>
|
|
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed vel urna ut leo dignissim auctor ut eget quam. Nullam ac gravida leo. Vestibulum accumsan vulputate lorem nec faucibus. Quisque vitae fringilla orci. Cras est lectus, sollicitudin a bibendum eget, sodales luctus eros. Nam nec erat ac nulla placerat elementum et non sem. Etiam a augue eu arcu tincidunt convallis. Pellentesque volutpat facilisis enim nec aliquet. Integer eu luctus est. Integer nec elit at urna auctor molestie. Vivamus facilisis, elit at molestie tristique, orci augue malesuada magna, at molestie nunc libero ut ante. Fusce feugiat suscipit accumsan.</p>
|
|
<p>Phasellus vel dolor condimentum arcu pellentesque faucibus a rutrum enim. Aliquam nec sem dolor, vel molestie nunc. Donec ac leo urna, vitae adipiscing sapien. Etiam nec elit neque. Suspendisse venenatis eros et ante dictum in adipiscing neque iaculis. Mauris at tellus neque. Phasellus pharetra lectus at quam convallis placerat.</p>
|
|
</div>
|
|
</div>
|
|
<br><br>
|
|
<h2 class='ipsClear ipsType_sectionHead'>{lang="editor_unused"}</h2>
|
|
<p class='ipsType_light'>{lang="editor_unused_desc"}</p>
|
|
<br>
|
|
|
|
<div class="editor_dummy cke_reset">
|
|
<div class="dummy_toolbars clearfix cke_top cke_reset_all">
|
|
<div class='cke_toolbar'>
|
|
<ul class="dummy_toolbar clearfix editor_unusedButtons cke_toolgroup" id="{$key}_editor_unusedButtons" data-role="dummyToolbar"></ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="ipsHide">
|
|
{$dummy->html()|raw}
|
|
</div>]]></template>
|
|
<template template_group="customization" template_name="emailFrame" template_data="$url" template_location="admin" template_app="core"><![CDATA[
|
|
<iframe src="{$url}" style='width: 100%; height: 100%; min-height: 500px; border: 0' class='ipsLoading'></iframe>]]></template>
|
|
<template template_group="customization" template_name="emailPreview" template_data="" template_location="admin" template_app="core"><![CDATA[{lang="email_mentioned"}
|
|
<br />
|
|
<br />
|
|
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
|
|
<tr>
|
|
<td width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
|
|
<img src='{resource="default_photo.png" location="global" app="core"}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
|
|
</td>
|
|
<td width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
|
|
<br />
|
|
<span style='display: block; width: 0px; height: 0px; border-width: 15px; border-color: transparent #f9f9f9 transparent transparent; border-style: solid'></span>
|
|
</td>
|
|
<td valign='top' style='background: #f9f9f9;'>
|
|
<table width='100%' cellpadding='10' cellspacing='0' border='0'>
|
|
<tr>
|
|
<td>
|
|
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
|
|
<tr>
|
|
<td style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
|
|
<strong>{lang="email_said"}</strong>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
|
|
...
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href='#' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;"></a>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<br /><br />
|
|
<em style='color: #8c8c8c'>— {setting="board_name"}</em>]]></template>
|
|
<template template_group="customization" template_name="emoticons" template_data="$sets" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' action="{url="app=core&module=editor&controller=emoticons&do=edit"}" method="post" data-controller="core.admin.customization.emoticons" id="emoticonsManagement">
|
|
<ul class='ipsList_reset' data-role="setList">
|
|
{{foreach $sets as $setKey => $emoticons}}
|
|
<li data-emoticonSet="{$setKey}">
|
|
<div>
|
|
<input type="hidden" name="emo[][__set__]" value="{$setKey}">
|
|
<h2 class='acpBlock_title acpBlock_titleDark ipsClear'>
|
|
<div class='ipsPos_right ipsType_blendLinks'>
|
|
<a href="{url="app=core&module=editor&controller=emoticons&do=editTitle&key=$setKey"}" data-ipsDialog data-ipsDialog-title="{lang="emoticons_edit_groupname"}" data-ipsTooltip title="{lang="emoticons_edit_groupname"}"><i class='fa fa-edit'></i></a>
|
|
{{if \IPS\Member::loggedIn()->hasAcpRestriction( 'core', 'editor', 'emoticons_delete' )}}
|
|
|
|
<a href="{url="app=core&module=editor&controller=emoticons&do=deleteSet&key=$setKey"}" data-confirm data-confirmsubmessage="{lang="emoticons_delete_set_confirm"}" data-ipsTooltip title="{lang="emoticons_delete_set"}"><i class='fa fa-times-circle'></i></a>
|
|
{{endif}}
|
|
</div>
|
|
{lang="$setKey"}
|
|
</h2>
|
|
<ul class='ipsList_reset ipsGrid ipsGrid_collapsePhone ipsPad ipsAreaBackground_light' data-role="emoticonsList" data-emoticonGroup="{$setKey}" data-ipsGrid data-ipsGrid-equalHeights='all' data-ipsGrid-minItemSize='175' data-ipsGrid-maxItemSize='300'>
|
|
{{foreach $emoticons as $emo}}
|
|
<li id="emo_{$emo['id']}" data-emoticonID='{$emo['id']}' class='ipsGrid_span3 ipsAreaBackground_reset'>
|
|
<div class='ipsBox cEmoticons_box'>
|
|
<div class='ipsPad_half'>
|
|
{{if \IPS\Member::loggedIn()->hasAcpRestriction( 'core', 'editor', 'emoticons_delete' )}}
|
|
<a href='{url="app=core&module=editor&controller=emoticons&do=delete&id="}{$emo['id']}' data-delete data-delete-warning="{lang="emoticons_delete_confirm"}" data-deleterow="#emo_{$emo['id']}">×</a>
|
|
{{endif}}
|
|
{{if $emo['image_2x']}}
|
|
<img src="{file="$emo['image']" extension="core_Emoticons"}" srcset="{file="$emo['image_2x']" extension="core_Emoticons"} 2x" alt='' class='ipsImage' {{if $emo['width'] AND $emo['width']}} width='{$emo['width']}' height='{$emo['height']}'{{endif}}>
|
|
{{else}}
|
|
<img src="{file="$emo['image']" extension="core_Emoticons"}" alt='' class='ipsImage'>
|
|
{{endif}}
|
|
</div>
|
|
<div class='cEmoticons_input ipsPad_half'>
|
|
{{if $emo['image_2x']}}
|
|
<span class='cEmoticons_hd ipsType_small ipsType_light' title='{lang="emoticon_hd"}' data-ipsTooltip><i class='fa fa-check'></i> HD</span>
|
|
{{endif}}
|
|
<input value="{$emo['typed']}" name="emo[{$emo['id']}][name]">
|
|
<noscript>
|
|
<br>
|
|
<input type="number" value="{$emo['emo_position']}" name="emo[{$emo['id']}][order]">
|
|
</noscript>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{if \IPS\Member::loggedIn()->hasAcpRestriction( 'core', 'editor', 'emoticons_edit' )}}
|
|
<div class="ipsAreaBackground ipsClear ipsClearfix ipsPad ipsType_center">
|
|
<button class='ipsButton ipsButton_primary'>{lang="save"}</button>
|
|
</div>
|
|
{{endif}}
|
|
</form>]]></template>
|
|
<template template_group="customization" template_name="formLogo" template_data="$url, $type='img'" template_location="admin" template_app="core"><![CDATA[<img src="{$url}" {{if $type == 'img'}}class="ipsThumb_large"{{endif}} />]]></template>
|
|
<template template_group="customization" template_name="langString" template_data="$value, $key, $lang, $js" template_location="admin" template_app="core"><![CDATA[<div data-controller="core.admin.core.langString" data-saveURL='{url="app=core&module=languages&controller=languages&do=translateWord&key={$key}&lang={$lang}&js={$js}"}'>
|
|
<a href="{url="app=core&module=languages&controller=languages&do=translateWord&key={$key}&lang={$lang}&js={$js}"}" >{$value}</a>
|
|
{{if !$value}}
|
|
<noscript>
|
|
<em><a href="{url="app=core&module=languages&controller=languages&do=translateWord&key={$key}&lang={$lang}&js={$js}"}">{lang="no_value"}</a></em>
|
|
</noscript>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="customization" template_name="resourceDisplay" template_data="$resource" template_location="admin" template_app="core"><![CDATA[<a href="{$resource['resource_filename']}" target="_blank" data-ipsLightbox>{{if in_array( mb_substr( $resource['resource_filename'], mb_strrpos( $resource['resource_filename'], '.' ) + 1 ), \IPS\Image::$imageExtensions )}}<img src="{$resource['resource_filename']}" class="ipsImage" />{{else}}{$resource['resource_filename']}{{endif}}</a>]]></template>
|
|
<template template_group="customization" template_name="resourceName" template_data="$resource" template_location="admin" template_app="core"><![CDATA[<a href="{file="$resource['resource_filename']" extension="core_Theme"}" target="_blank" >{$resource['resource_name']}</a>]]></template>
|
|
<template template_group="customization" template_name="templateConflict" template_data="$skinSet, $conflicts, $templates, $css, $id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $formClass='', $attributes=array(), $sidebar=''" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' data-controller='core.admin.templates.conflict' data-normalURL="{url="app=core&module=customization&controller=skins&id={$skinSet->_id}"}" data-ajaxURL="{url="app=core&module=customization&controller=ajax&id={$skinSet->_id}"}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} data-ipsForm class="{$formClass}" {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
<p class="ipsMessage ipsMessage_error">{lang="theme_conflict_message"}</p>
|
|
|
|
<div class="acpBlock">
|
|
{{foreach $conflicts['template'] as $key => $data}}
|
|
<div class="acpBlock_title">{$data['conflict_app']}/{$data['conflict_location']}/{$data['conflict_path']}/{$data['conflict_name']}</div>
|
|
<table class="ipsTable diff restrict_height">
|
|
<tr>
|
|
<th><span data-conflict-id="{$data['conflict_id']}" data-conflict-name="old">{lang="theme_conflict_old_version"}</span></th>
|
|
<th><span data-conflict-id="{$data['conflict_id']}" data-conflict-name="new">{lang="theme_conflict_new_version"} </span></th>
|
|
</tr>
|
|
</table>
|
|
<div data-conflict-id="{$data['conflict_id']}">
|
|
{$data['diff']|raw}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
<div class='ipsGrid'>
|
|
<div class='ipsGrid_span6'>
|
|
<span class='ipsButton ipsButton_primary' data-conflict-name="old">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $name => $input}}
|
|
{{if $name == 'conflict_' . $data['conflict_id']}}
|
|
<input id='elField_{$name}' type="radio" name="{$name}" value="old" checked="checked" />
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<strong>{lang="theme_conflict_use_this"}</strong>
|
|
</span>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<span class='ipsButton ipsButton_primary' data-conflict-name="new">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $name => $input}}
|
|
{{if $name == 'conflict_' . $data['conflict_id']}}
|
|
<input id='elField_{$name}' type="radio" name="{$name}" value="new" />
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<strong>{lang="theme_conflict_use_this"}</strong>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
{{foreach $conflicts['css'] as $key => $data}}
|
|
<div class="acpBlock_title">{$data['conflict_app']}/{$data['conflict_location']}/{$data['conflict_path']}/{$data['conflict_name']}</div>
|
|
<table class="ipsTable diff restrict_height">
|
|
<tr>
|
|
<th><span data-conflict-id="{$data['conflict_id']}" data-conflict-name="old">{lang="theme_conflict_old_version"}</span></th>
|
|
<th><span data-conflict-id="{$data['conflict_id']}" data-conflict-name="new">{lang="theme_conflict_new_version"} </span></th>
|
|
</tr>
|
|
</table>
|
|
<div data-conflict-id="{$data['conflict_id']}">
|
|
{$data['diff']|raw}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
<div class='ipsGrid'>
|
|
<div class='ipsGrid_span6'>
|
|
<span class='ipsButton ipsButton_primary' data-conflict-name="old">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $name => $input}}
|
|
{{if $name == 'conflict_' . $data['conflict_id']}}
|
|
<input id='elField_{$name}' type="radio" name="{$name}" value="old" checked="checked" />
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<strong>{lang="theme_conflict_use_this"}</strong>
|
|
</span>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<span class='ipsButton ipsButton_primary' data-conflict-name="new">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $name => $input}}
|
|
{{if $name == 'conflict_' . $data['conflict_id']}}
|
|
<input id='elField_{$name}' type="radio" name="{$name}" value="new" />
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<strong>{lang="theme_conflict_use_this"}</strong>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{expression="implode( '', $actionButtons)" raw="true"}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="customization" template_name="templateEditor" template_data="$theme, $templateNames, $template, $current" template_location="admin" template_app="core"><![CDATA[
|
|
<form accept-charset='utf-8' action="{url="app=core&module=customization&controller=themes&do=saveTemplate&id={$theme->_id}"}" method="POST" id="editorForm">
|
|
<input type="hidden" name="t_type" value="{$current['type']}">
|
|
<input type="hidden" name="t_key" value="{{if $current['type'] == 'templates'}}{$template['TemplateKey']}{{else}}{$template['CssKey']}{{endif}}">
|
|
<input type="hidden" name="t_app" value="{$current['app']}">
|
|
<input type="hidden" name="t_location" value="{$current['location']}">
|
|
<input type="hidden" name="t_group" value="{$current['group']}">
|
|
<input type="hidden" name="t_name" value="{$current['template']}">
|
|
<input type="hidden" name="t_item_id" value="{$current['item_id']}">
|
|
|
|
<h2 class='acpBlock_title acpBlock_titleDark acpBlock_titleSmall'>{lang="theme_editing_title" sprintf="$theme->_title"}</h2>
|
|
<div class='ipsAreaBackground ipsPad' id='elTemplateEditor' data-controller='core.admin.templates.main' data-normalURL="{url="app=core&module=customization&controller=themes&id={$theme->_id}"}" data-ajaxURL="{url="app=core&module=customization&controller=ajax&id={$theme->_id}"}">
|
|
<div class='ipsColumns'>
|
|
<div class='ipsColumn ipsColumn_wide' data-role="fileList" data-controller='core.admin.templates.fileList'>
|
|
<div class="ipsClearfix" class="ipsJS_show">
|
|
<input data-role="templateSearch" placeholder="{lang="search_templates"}" class="ipsPos_left">
|
|
<a href='#elTemplateFilterMenu_menu' id='elTemplateFilterMenu' class='ipsButton ipsButton_light ipsButton_small ipsPos_right' data-ipsMenu data-ipsMenu-selectable><i class="fa fa-filter"></i> <i class='fa fa-caret-down'></i></a>
|
|
</div>
|
|
<ul id='elTemplateFilterMenu_menu' role='menu' class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsMenu_withStem ipsHide'>
|
|
<li class='ipsMenu_item ipsMenu_itemChecked' data-ipsMenuValue='outofdate'><a href='#'>{lang="theme_template_outofdate"}</a></li>
|
|
<li class='ipsMenu_item ipsMenu_itemChecked' data-ipsMenuValue='modified'><a href='#'>{lang="theme_template_modified"}</a></li>
|
|
<li class='ipsMenu_item ipsMenu_itemChecked' data-ipsMenuValue='inherited'><a href='#'>{lang="theme_template_inherited"}</a></li>
|
|
<li class='ipsMenu_item ipsMenu_itemChecked' data-ipsMenuValue='unique'><a href='#'>{lang="theme_template_unique"}</a></li>
|
|
<li class='ipsMenu_item ipsMenu_itemChecked' data-ipsMenuValue='unmodified'><a href='#'>{lang="theme_template_unmodified"}</a></li>
|
|
</ul>
|
|
<ul id='elTemplateEditor_newItemMenu_menu' role='menu' class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide'>
|
|
<li class='ipsMenu_item'><a role='menuitem' href='{url="app=core&module=customization&controller=themes&do=cssForm&id={$theme->_id}"}' data-ipsDialog data-ipsDialog-forceReload data-ipsDialog-title='{lang="theme_template_add_css"}'>{lang="theme_template_new_css"}</a></li>
|
|
<li class='ipsMenu_item'><a role='menuitem' href='{url="app=core&module=customization&controller=themes&do=templateForm&id={$theme->_id}"}' data-ipsDialog data-ipsDialog-forceReload data-ipsDialog-title='{lang="theme_template_add_html"}'>{lang="theme_template_new_html"}</a></li>
|
|
</ul>
|
|
<div class='ipsAreaBackground_reset'>
|
|
<div class='ipsTabs ipsTabs_stretch ipsClearfix acpFormTabBar' id='elTemplateEditor_typeTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elTemplateEditor_fileList' data-ipsTabBar-updateURL='false'>
|
|
<ul role="tablist">
|
|
<li><a href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_type=templates"}' class='ipsTabs_item ipsType_center {{if $current['type'] == 'templates'}}ipsTabs_activeItem{{endif}}' data-tabURL='{url="app=core&module=customization&controller=ajax&id={$theme->_id}&do=loadMenu&t_type=templates"}' data-type='templates'>{lang="theme_templates"}</a></li>
|
|
<li><a href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_type=css"}' class='ipsTabs_item ipsType_center {{if $current['type'] == 'css'}}ipsTabs_activeItem{{endif}}' data-tabURL='{url="app=core&module=customization&controller=ajax&id={$theme->_id}&do=loadMenu&t_type=css"}' data-type='css'>{lang="theme_css"}</a></li>
|
|
</ul>
|
|
</div>
|
|
<section id='elTemplateEditor_fileList'>
|
|
{template="templateEditorMenu" params="$theme, $templateNames, $current" app="core" location="admin" group="customization"}
|
|
</section>
|
|
</div>
|
|
<div class="ipsSpacer_top">
|
|
<a href='#elTemplateEditor_newItemMenu_menu' id='elTemplateEditor_newItemMenu' class='ipsButton ipsButton_normal ipsButton_small ipsButton_fullWidth' data-ipsMenu data-ipsMenu-above>{lang="theme_template_new"} <i class='fa fa-caret-down'></i></a></li>
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid' data-controller='core.admin.templates.fileEditor'>
|
|
<ul class='ipsList_inline ipsClearfix' id='elTemplateEditor_panelToolbar'>
|
|
<li class='ipsPos_right'>
|
|
<a href='#elTemplateEditor_preferences_menu' id='elTemplateEditor_preferences' class='ipsButton ipsButton_light ipsButton_small' data-ipsMenu data-ipsMenu-selectable><i class='fa fa-cog'></i> <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elTemplateEditor_preferences_menu' class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsMenu_withStem ipsHide'>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='wrap'><a href='#'>{lang="theme_wrap"}</a></li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='lines'><a href='#'>{lang="theme_show_line"}</a></li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='diff'><a href='#'>{lang="theme_show_original"}</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class='ipsPos_right {{if $current['type'] == 'css'}}ipsHide{{endif}}'>
|
|
<a href='#' id='elTemplateEditor_variables' class='ipsButton ipsButton_veryLight ipsButton_small' data-ipsDialog data-ipsDialog-title='{lang="theme_edit_variables"}' data-ipsDialog-content="#elTemplateEditor_variablesDialog" data-ipsDialog-size='narrow'>{lang="theme_variables"}</a>
|
|
</li>
|
|
<li class='ipsPos_right {{if $current['type'] == 'templates'}}ipsHide{{endif}}'>
|
|
<a href='#' id='elTemplateEditor_attributes' class='ipsButton ipsButton_veryLight ipsButton_small' data-ipsDialog data-ipsDialog-title='{lang="theme_edit_css"}' data-ipsDialog-content="#elTemplateEditor_attributesDialog" data-ipsDialog-size='narrow'>{lang="theme_attributes"}</a>
|
|
</li>
|
|
<li class='ipsPos_right'>
|
|
<a href='{url="app=core&module=customization&controller=themes&do=deleteTemplate&t_type={$current['type']}&id={$theme->_id}&t_item_id={$current['item_id']}"}' class='ipsButton ipsButton_veryLight ipsButton_small {{if $template['InheritedValue'] == 'original'}}ipsButton_disabled{{endif}}' data-action="revert">{{if $template['InheritedValue'] == 'custom'}}{lang="delete"}{{else}}{lang="revert"}{{endif}}</a>
|
|
</li>
|
|
<li>
|
|
<button type='submit' class='ipsButton ipsButton_primary ipsButton_small' data-action="save">{lang="save"}</button>
|
|
</li>
|
|
<li>
|
|
<span data-role='loading' class='ipsHide'><i class='icon-spinner2 ipsLoading_tinyIcon'></i> {lang="loading"}</span>
|
|
</li>
|
|
</ul>
|
|
<br>
|
|
<div id='elTemplateEditor_outerPanelWrap'>
|
|
<div id='elTemplateEditor_panelWrap'>
|
|
<ul id='elTemplateEditor_tabbar' class='ipsTabs ipsClearfix acpFormTabBar' data-ipsTabBar data-ipsTabBar-contentArea='#elTemplateEditor_panels'>
|
|
{{if $current['type'] == 'templates'}}
|
|
<li data-fileid='{$template['TemplateKey']}'>
|
|
<a href='#' class='ipsTabs_item' id='tab_{$template['TemplateKey']}'>{$current['template']} <span data-action='closeTab'><i class='fa fa-times'></i></span></a>
|
|
</li>
|
|
{{else}}
|
|
<li data-fileid='{$template['jsDataKey']}'>
|
|
<a href='#' class='ipsTabs_item' id='tab_{$template['jsDataKey']}'>{$template['css_name']} <span data-action='closeTab'><i class='fa fa-times'></i></span></a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
<section data-role="templatePanelWrap" id='elTemplateEditor_panels'>
|
|
{{if $current['type'] == 'templates'}}
|
|
{template="templateEditorHtmlPane" params="$theme, $templateNames, $template, $current" app="core" location="admin" group="customization"}
|
|
{{else}}
|
|
{template="templateEditorCssPane" params="$theme, $templateNames, $template, $current" app="core" location="admin" group="customization"}
|
|
{{endif}}
|
|
</section>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
<ul class='ipsList_inline ipsType_light ipsType_small'>
|
|
<li class='cTemplateState_outofdate'> {lang="theme_template_outofdate"}</li>
|
|
<li class='cTemplateState_changed'> {lang="theme_template_modified"}</li>
|
|
<li class='cTemplateState_inherit'> {lang="theme_template_inherited"}</li>
|
|
<li class='cTemplateState_custom'> {lang="theme_template_unique"}</li>
|
|
</ul>
|
|
<div id='elTemplateEditor_variablesDialog' class='ipsHide'>
|
|
<div data-controller='core.admin.templates.variablesDialog'>
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_textBlock'>
|
|
{lang="theme_template_variables_info"}
|
|
</p>
|
|
<br>
|
|
<textarea class='ipsField_fullWidth' data-role='variables' placeholder='{lang="theme_template_variables"}'></textarea>
|
|
<input type='hidden' name='_variables_fileid' value=''>
|
|
<input type='hidden' name='_variables_type' value=''>
|
|
</div>
|
|
<div class='ipsPad ipsAreaBackground ipsType_right'>
|
|
<input type='submit' class='ipsButton ipsButton_primary' value='{lang="save"}'>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id='elTemplateEditor_attributesDialog' class='ipsHide'>
|
|
<div data-controller='core.admin.templates.variablesDialog'>
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_textBlock'>
|
|
{lang="theme_css_attributes"}
|
|
</p>
|
|
<br>
|
|
<input class='ipsField_fullWidth' data-role='variables' placeholder="e.g. media='screen'">
|
|
<input type='hidden' name='_variables_fileid' value=''>
|
|
<input type='hidden' name='_variables_type' value=''>
|
|
</div>
|
|
<div class='ipsPad ipsAreaBackground ipsType_right'>
|
|
<input type='submit' class='ipsButton ipsButton_primary' value='{lang="save"}'>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="customization" template_name="templateEditorAddForm" template_data="$formHTML, $type" template_location="admin" template_app="core"><![CDATA[<div data-controller='core.admin.templates.addForm' data-type='$type'>
|
|
{$formHTML|raw}
|
|
</div>]]></template>
|
|
<template template_group="customization" template_name="templateEditorCssPane" template_data="$theme, $templateNames, $template, $current" template_location="admin" template_app="core"><![CDATA[<div data-role="templatePanel">
|
|
<div data-role="templatePanel" data-fileid="{$template['jsDataKey']}" data-app="{$current['app']}" data-location="{$current['location']}" data-group="{$current['group']}" data-name="{$current['template']}" data-type='css' data-itemID='{$current['item_id']}' data-inherited-value="{$template['InheritedValue']}">
|
|
<textarea name="editor_{$template['jsDataKey']}" id="editor_{$template['jsDataKey']}" data-role="editor">{$template['css_content']}</textarea>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="customization" template_name="templateEditorHtmlPane" template_data="$theme, $templateNames, $template, $current" template_location="admin" template_app="core"><![CDATA[<div class='ipsTabs_panel' data-role="templatePanel" id='ipsTabs_elTemplateEditor_tabbar_tab_{$template['TemplateKey']}_panel' data-fileid="{$template['TemplateKey']}" data-app="{$current['app']}" data-location="{$current['location']}" data-group="{$current['group']}" data-name="{$current['template']}" data-type='templates' data-itemID='{$current['item_id']}' data-inherited-value="{$template['InheritedValue']}">
|
|
<input data-role="variables" type="text" name="variables_{$template['TemplateKey']}" class="ipsField_fullWidth" value='{$template['template_data']}' placeholder="{lang="skin_set_template_templatevars"}">
|
|
<textarea name="editor_{$template['TemplateKey']}" id="editor_{$template['TemplateKey']}" data-role="editor">{$template['template_content']}</textarea>
|
|
</div>]]></template>
|
|
<template template_group="customization" template_name="templateEditorMenu" template_data="$theme, $templateNames, $current" template_location="admin" template_app="core"><![CDATA[<ul class='cTemplateList ipsList_reset' data-type='{$current['type']}'>
|
|
{{foreach $templateNames as $app => $data}}
|
|
<li {{if $app == $current['app']}}class="cTemplateList_activeBranch"{{else}}class="cTemplateList_inactiveBranch"{{endif}} data-app="{$app}">
|
|
<a href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_app={$app}"}' data-action="toggleBranch">{$app}</a>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $templateNames[$app] as $location => $data}}
|
|
<li {{if $location == $current['location']}}class="cTemplateList_activeBranch"{{else}}class="cTemplateList_inactiveBranch"{{endif}} data-location="{$location}">
|
|
<a href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_app={$app}&t_location={$location}"}' data-action="toggleBranch">{$location}</a>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $templateNames[$app][$location] as $group => $data}}
|
|
{{if $current['type'] == 'css' AND $group == '.'}}
|
|
{{foreach $data as $id => $css}}
|
|
<li {{if $css['css_name'] == $current['template'] && !\IPS\Request::i()->isAjax()}}class="cTemplateList_activeNode"{{endif}}>
|
|
<a data-type="{$current['type']}" href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_app={$app}&t_location={$location}&t_group={$group}&t_name="}{expression="urlencode($css['css_name'])"}' data-action="openFile" data-name="{$css['css_name']}" data-inherited-value="{$css['InheritedValue']}" data-key="{$css['jsDataKey']}" data-itemID='{$css['css_id']}'>{$css['css_name']}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li {{if $location == $current['location'] AND $group == $current['group']}}class="cTemplateList_activeBranch"{{else}}class="cTemplateList_inactiveBranch"{{endif}} data-group="{$group}">
|
|
<a href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_app={$app}&t_location={$location}&t_group={$group}"}' data-action="toggleBranch">{$group}</a>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $templateNames[$app][$location][$group] as $name => $data}}
|
|
<li {{if $name == $current['template'] && !\IPS\Request::i()->isAjax()}}class="cTemplateList_activeNode"{{endif}}>
|
|
<a data-type="{$current['type']}" href='{url="app=core&module=customization&controller=themes&do=templates&id={$theme->_id}&t_type={$current['type']}&t_app={$app}&t_location={$location}&t_group={$group}&t_name="}{expression="urlencode($name)"}' data-action="openFile" data-name="{$name}" data-inherited-value="{$data['InheritedValue']}" data-key="{$data['jsDataKey']}" data-itemID='{{if $current['type'] == 'css'}}{$data['css_id']}{{else}}{$data['template_id']}{{endif}}'>{$name}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="customization" template_name="themeDescription" template_data="$author, $url=''" template_location="admin" template_app="core"><![CDATA[{{if $url}}
|
|
{{$author = "<a href='{$url}' target='_blank'>{$author}</a>";}}
|
|
{{endif}}
|
|
{lang="theme_by" htmlsprintf="$author"}]]></template>
|
|
<template template_group="customization" template_name="themeSettingLabelWithKey" template_data="$setting" template_location="admin" template_app="core"><![CDATA[<span class='ipsThemeKey' data-ipsTooltip title="{$setting['sc_key']}">{lang="$setting['sc_title']"}</span>]]></template>
|
|
<template template_group="customization" template_name="themeSettingRevert" template_data="$themeId, $setting" template_location="admin" template_app="core"><![CDATA[ <a data-controller="core.admin.customization.themes" href='{url="app=core&module=customization&controller=themes&do=revertThemeSetting&id=$themeId&key={$setting['sc_key']}"}' class="ipsButton ipsButton_normal ipsButton_verySmall" data-ipsThemeSetting="{$setting['sc_key']}">{lang="revert"}</a>]]></template>
|
|
<template template_group="customization" template_name="vseBadge" template_data="$themeId" template_location="admin" template_app="core"><![CDATA[<a href='{url="app=core&module=customization&controller=themes&do=launchvse&id=$themeId"}' class="ipsType_blendLinks" target='_blank' data-ipstooltip title='{lang="core_theme_launch_vse_tooltip"}'>{lang="core_theme_launch_vse"}</a>]]></template>
|
|
<template template_group="dashboard" template_name="adminnotes" template_data="$lastUpdated, $id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $formClass='', $attributes=array(), $sidebar=array(), $form=NULL" template_location="admin" template_app="core"><![CDATA[<div data-controller='core.admin.dashboard.adminNotes'>
|
|
<form id='admin_notes' accept-charset='utf-8' action="{$action}" method="post" data-ipsForm class="{$formClass}" {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{$input->html()|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
|
|
<div class='ipsClearfix ipsType_light ipsType_medium'>
|
|
<div class='ipsPad_half ipsPos_right'>
|
|
<input type='submit' class='ipsButton ipsButton_alternate' value="{lang="save"}">
|
|
</div>
|
|
<div class='ipsPad_half ipsPos_left'>
|
|
<span data-role='notesLoading' class='ipsHide'>
|
|
<i class='icon-spinner2 ipsLoading_tinyIcon'></i> {lang="saving"}
|
|
</span>
|
|
|
|
<h3 class='ipsType_minorHeading'>{lang="admin_notes_last_update"}</h3>
|
|
<span data-role='notesInfo' class='ipsType_medium'>
|
|
{{if $lastUpdated}}
|
|
{$lastUpdated}
|
|
{{else}}
|
|
{lang="never"}
|
|
{{endif}}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="dashboard" template_name="awaitingValidation" template_data="$users" template_location="admin" template_app="core"><![CDATA[{{if !empty( $users )}}
|
|
<ul class='ipsDataList ipsSpacer_bottom' itemscope itemtype="http://schema.org/ItemList" data-controller='core.admin.dashboard.validation'>
|
|
{{foreach $users as $user }}
|
|
<li class='ipsDataItem' data-role='userAwaitingValidation' itemprop="itemListElement">
|
|
<div class='ipsDataItem_main ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix'>
|
|
{template="userPhoto" app="core" group="global" params="$user, 'mini'"}
|
|
<div>
|
|
<ul class='ipsButton_split ipsPos_right ipsSpacer_top ipsSpacer_half' data-role='validateToggles'>
|
|
<li><a href='{url="app=core&module=members&controller=members&do=approve&id={$user->member_id}"}' data-action='approve' class='ipsButton ipsButton_verySmall ipsButton_positive'>{lang="approve"}</a></li>
|
|
<li><a href='{url="app=core&module=members&controller=members&do=ban&permban=1&id={$user->member_id}"}' data-action='ban' class='ipsButton ipsButton_verySmall ipsButton_negative'>{lang="ban"}</a></li>
|
|
</ul>
|
|
|
|
<h4 class='ipsType_reset ipsType_large'><strong><a href='{$user->url()}' title='{lang="profile_view_profile"}' data-role="userName">{$user->name}</a></strong> <span class='ipsType_light ipsType_unbold ipsType_normal'>({$user->email})</span></h4>
|
|
<ul class='ipsList_inline ipsType_medium'>
|
|
<li><strong>{lang="ip_address"}:</strong> {$user->ip_address}</li>
|
|
<li><strong>{lang="block_awaiting_registered"}:</strong> {datetime="$user->joined"}</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<a href="{url="app=core&module=members&controller=members&filter=members_filter_validating"}" class='ipsButton ipsButton_verySmall ipsButton_light'>{lang="block_awaiting_validation_all"}</a>
|
|
{{else}}
|
|
<div class='ipsType_medium ipsType_light ipsType_center'>
|
|
{lang="none_awaiting_validation"}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="dashboard" template_name="backgroundQueue" template_data="$rows" template_location="admin" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
{{foreach $rows as $row}}
|
|
<div class="ipsGrid_span6 ipsPad ipsType_center">
|
|
<p class='ipsType_medium ipsType_reset ipsSpacer_bottom ipsSpacer_half ipsTruncate ipsTruncate_line'><strong>{$row['text']|raw}</strong></p>
|
|
{{if $row['complete'] === NULL}}
|
|
<div class="ipsProgressBar ipsProgressBar_small ipsProgressBar_fullWidth ipsProgressBar_animated"><div class="ipsProgressBar_progress" style="width:100%">{lang="progress_bar_percent_not_available"}</div></div>
|
|
{{else}}
|
|
<div class="ipsProgressBar ipsProgressBar_small ipsProgressBar_fullWidth"><div class="ipsProgressBar_progress" style="width:{$row['complete']}%">{$row['complete']}%</div></div>
|
|
{{endif}}
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
<p class="ipsType_medium ipsType_light ipsType_center">
|
|
{{if settings.task_use_cron}}
|
|
{lang="background_processes_desc"}
|
|
{{else}}
|
|
{lang="background_processes_desc_nocron"}
|
|
{{endif}}
|
|
<br>
|
|
{lang="background_processes_run_now" sprintf="\IPS\Member::loggedIn()->language()->addToStack('background_process_run_title')"}
|
|
</p>
|
|
{{else}}
|
|
<div class="ipsType_medium ipsType_light ipsType_center">
|
|
{lang="no_background_processes"}
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="dashboard" template_name="connectFailures" template_data="$failures, $failureCount=0" template_location="admin" template_app="core"><![CDATA[{lang="connect_failures_desc" pluralize="$failureCount"}<br><br>
|
|
{{if !empty( $failures )}}
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing' itemscope itemtype="http://schema.org/ItemList">
|
|
{{foreach $failures as $failure }}
|
|
<li class='ipsDataItem' itemprop="itemListElement">
|
|
<div class='ipsDataItem_main'>
|
|
<div class='ipsPos_right ipsTree_controls'>
|
|
<ul data-ipscontrolstrip class="ipsControlStrip ipsType_noBreak ipsList_reset">
|
|
<li class="ipsControlStrip_button">
|
|
<a href='{url="app=core&module=settings&controller=login&do=retryConnect&slave={$failure['slave']['slave_id']}"}' title='{lang="slave_try_again"}' data-ipsTooltip>
|
|
<i class='ipsControlStrip_icon fa fa-play-circle'></i>
|
|
<span class='ipsControlStrip_item'>{lang="slave_try_again"}</span>
|
|
</a>
|
|
</li>
|
|
<li class="ipsControlStrip_button">
|
|
<a href='{url="app=core&module=overview&controller=dashboard&deleteSlave={$failure['slave']['slave_id']}" csrf="1"}' title='{lang="remove_slave"}' data-confirm data-ipsTooltip data-confirmMessage="{lang="delete_slave_confirm"}">
|
|
<i class='ipsControlStrip_icon fa fa-times-circle'></i>
|
|
<span class='ipsControlStrip_item'>{lang="remove_slave"}</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<h4 class='ipsDataItem_title'>{$failure['slave']['slave_url']}</h4>
|
|
<p class='ipsDataItem_meta'>
|
|
{$failure['count']} {lang="failed_logins_suffix"}
|
|
</p>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="dashboard" template_name="dashboard" template_data="$newVersion, $cols, $blocks, $info, $bulletins, $warnings" template_location="admin" template_app="core"><![CDATA[
|
|
<div data-controller='core.admin.dashboard.main'>
|
|
|
|
{{if $newVersion}}
|
|
<div class='ipsAreaBackground_light ipsPad ipsPhotoPanel ipsPhotoPanel_small ipsPhotoPanel_notPhone' id='acpNewVersion'>
|
|
<i class='fa fa-info-circle ipsPos_left ipsResponsive_hidePhone'></i>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'><strong>{lang="dashboard_version_info" sprintf="$newVersion['version']"}</strong></h2>
|
|
{{if $newVersion['security']}}
|
|
<p><strong class="ipsType_warning">{lang="this_is_a_security_update"}</strong></p>
|
|
{{endif}}
|
|
{{if isset( $newVersion['releasenotes'] ) and $newVersion['releasenotes']}}
|
|
<div>{$newVersion['releasenotes']|raw}</div>
|
|
{{endif}}
|
|
{{if member.hasAcpRestriction( 'core', 'system', 'upgrade_manage' )}}
|
|
<a href="{url="app=core&module=system&controller=upgrade&_new=1"}" class='ipsButton ipsButton_primary ipsButton_small'>{lang="upgrade_now"}</a>
|
|
{{endif}}
|
|
{{if $newVersion['updateurl']}}
|
|
<a href='{$newVersion['updateurl']}' target="_blank" class='ipsButton ipsButton_alternate ipsButton_small'>{lang="dashboard_version_moreinfo"}</a>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
|
|
{{if count($bulletins)}}
|
|
{{foreach $bulletins as $bulletin}}
|
|
<div class='ipsAreaBackground_light ipsPad ipsPhotoPanel ipsPhotoPanel_small ipsPhotoPanel_notPhone' id='acpNewVersion'>
|
|
<i class='fa fa-info-circle ipsPos_left ipsResponsive_hidePhone'></i>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'><strong>{$bulletin['title']}</strong></h2>
|
|
<div class='ipsType_normal ipsType_reset'>{$bulletin['description']|raw}</div>
|
|
<br>
|
|
<a href='{$bulletin['link']}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="dashboard_version_moreinfo"} <i class='fa fa-chevron-right'></i></a>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
|
|
{{if count($warnings)}}
|
|
<div id='acpWarnings'>
|
|
{{foreach $warnings as $warning}}
|
|
<div class='ipsAreaBackground_light ipsPad ipsPhotoPanel ipsPhotoPanel_small ipsPhotoPanel_notPhone'>
|
|
<i class='fa fa-warning ipsPos_left ipsResponsive_hidePhone'></i>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'><strong>{$warning['title']}</strong></h2>
|
|
<div class='ipsType_normal ipsType_reset'>{$warning['description']|raw}</div>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{{endforeach}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{$unusedBlocks = 0;}}
|
|
{{foreach $info as $block}}
|
|
{{if !isset($blocks[ $block['key'] ]) }}
|
|
{{$unusedBlocks++;}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
|
|
{template="buttons" params="array( 'add' => array( 'icon' => 'plus', 'title' => 'add_button', 'link' => \IPS\Http\Url::internal( '#elAddWidgets_button_menu' ), 'id' => 'elAddWidgets', 'dropdown' => true, 'class' => ( $unusedBlocks > 0 ? '' : 'ipsButton_disabled' ), 'data' => array( 'ipsMenu' => true ) ) )" group="global" app="core"}
|
|
<ul id='elAddWidgets_button_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{foreach $info as $block}}
|
|
<li class='ipsMenu_item {{if isset($blocks[ $block['key'] ]) }}ipsHide{{endif}}' data-ipsMenuValue='{$block['key']}' data-widgetName='{$block['name']}'>
|
|
<a href='#'>{$block['name']}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
|
|
<div class='ipsGrid ipsGrid_collapseTablet'>
|
|
<div class='ipsGrid_span8' data-role="mainerColumn">
|
|
<ol class='ipsList_reset' data-role="mainColumn">
|
|
{{foreach $cols['main'] as $cellKey}}
|
|
{{if array_key_exists( $cellKey, $blocks ) and isset($info[ $cellKey ])}}
|
|
{template="widgetWrapper" group="dashboard" app="core" params="$blocks[ $cellKey ], $info[ $cellKey ]"}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>
|
|
<div class='ipsGrid_span4 acpWidget_sidebar'>
|
|
<ol class='ipsList_reset' data-role="sideColumn">
|
|
{{foreach $cols['side'] as $cellKey}}
|
|
{{if array_key_exists( $cellKey, $blocks ) and isset($info[ $cellKey ])}}
|
|
{template="widgetWrapper" group="dashboard" app="core" params="$blocks[ $cellKey ], $info[ $cellKey ]"}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="dashboard" template_name="failedLogins" template_data="$logins" template_location="admin" template_app="core"><![CDATA[{{if count( $logins )}}
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing' itemscope itemtype="http://schema.org/ItemList">
|
|
{{foreach $logins as $login }}
|
|
<li class='ipsDataItem' itemprop="itemListElement">
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'>{$login['admin_username']}</h4>
|
|
<p class='ipsDataItem_meta'>
|
|
{datetime="$login['admin_time']"}
|
|
</p>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<a href="{url="app=core&module=staff&controller=admin&do=loginLogs&filter=adminloginlogs_unsuccessful"}">{lang="block_failed_logins_all"}</a>
|
|
{{else}}
|
|
<div class='ipsType_medium ipsType_light ipsType_center'>
|
|
{lang="no_failed_logins"}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="dashboard" template_name="ipsNews" template_data="$news" template_location="admin" template_app="core"><![CDATA[<ul class="ipsDataList">
|
|
{{if isset($news) }}
|
|
{{foreach $news as $article}}
|
|
<li class="ipsDataItem">
|
|
<span class='ipsDataItem_generic ipsDataItem_size4 ipsType_light ipsType_medium ipsType_right'>
|
|
{expression="\IPS\DateTime::ts( strtotime( $article['date'] ) )->relative()"}
|
|
</span>
|
|
<span class="ipsDataItem_main">
|
|
<a href="{$article['link']}" target="_blank">
|
|
{$article['title']}
|
|
</a>
|
|
</span>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
{lang="ipsnews_error_generic"}
|
|
{{endif}}
|
|
</ul>]]></template>
|
|
<template template_group="dashboard" template_name="noConnectFailures" template_data="" template_location="admin" template_app="core"><![CDATA[<div class='ipsType_medium ipsType_light ipsType_center'>
|
|
{lang="no_failed_connect_requests"}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="dashboard" template_name="noOnlineUsers" template_data="" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsType_large ipsEmpty'>
|
|
<i class='fa fa-group'></i>
|
|
<br>{lang="no_online_users"}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="dashboard" template_name="onlineAdmins" template_data="$admins" template_location="admin" template_app="core"><![CDATA[{{if !empty( $admins )}}
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing' >
|
|
{{foreach $admins as $admin }}
|
|
<li class='ipsDataItem' itemprop="itemListElement">
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><a href='{$admin['user']->url()}' target='_blank'>{$admin['user']->name}</a></h4>
|
|
<p class='ipsDataItem_meta'>
|
|
{datetime="$admin['session']['session_running_time']"}
|
|
</p>
|
|
</div>
|
|
{{if $admin['user'] != \IPS\Member::loggedIn() and $admin['session']['session_location'] != "app=core&module=system&controller=login"}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<a href='{expression="preg_replace( '/adsess=([a-zA-Z0-9]+?)&/', 'adsess=' . session_id() . '&', preg_replace( '/csrfKey=([a-zA-Z0-9]+?)&/', '&', $admin['session']['session_url'] ) )"}'><i class='fa fa-arrow-right fa-2x'></i></a>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="dashboard" template_name="onlineUsers" template_data="$online, $chart" template_location="admin" template_app="core"><![CDATA[{{if count( $online ) > 0}}
|
|
{$chart|raw}
|
|
{{else}}
|
|
<div class='ipsType_center ipsType_light ipsType_large'>
|
|
<i class='fa fa-group ipsType_huge'></i>
|
|
<br>{lang="no_online_users"}
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="dashboard" template_name="registrations" template_data="$chart" template_location="admin" template_app="core">{$chart|raw}</template>
|
|
<template template_group="dashboard" template_name="widgetWrapper" template_data="$blockHtml, $info" template_location="admin" template_app="core"><![CDATA[<li data-widgetKey='{$info['key']}' data-widgetName='{$info['name']}'>
|
|
<div class='ipsAreaBackground_light acpWidget_item'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsTruncate ipsTruncate_line'>
|
|
<ul class='ipsList_reset ipsList_inline acpWidget_tools'>
|
|
<li>
|
|
<noscript>
|
|
<input type='text' value='{{if isset($info['position'])}}{$info['position']}{{else}}0{{endif}}' class='acpWidget_manualReorder'>
|
|
</noscript>
|
|
<a href='#' class='acpWidget_reorder ipsJS_show ipsCursor_drag' data-ipsTooltip title='{lang="reorder_widget"}'><i class='fa fa-bars'></i></a>
|
|
</li>
|
|
<li>
|
|
<a href='#' class='acpWidget_close' data-ipsTooltip title='{lang="close_widget"}'><i class='fa fa-times'></i></a>
|
|
</li>
|
|
</ul>
|
|
{lang="block_{$info['key']}"}
|
|
</h2>
|
|
<div class='ipsPad' data-role="widgetContent">
|
|
{$blockHtml|raw}
|
|
</div>
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="editor" template_name="attachedFile" template_data="$url, $title, $pTag=TRUE" template_location="global" template_app="core"><![CDATA[{{if $pTag}}<p>{{endif}}<a class="ipsAttachLink" href="{$url}">{$title}</a>{{if $pTag}}</p>{{endif}}]]></template>
|
|
<template template_group="editor" template_name="attachedImage" template_data="$url, $thumbnail, $title, $id" template_location="global" template_app="core"><![CDATA[<p><a href="<fileStore.core_Attachment>/{$url}" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="{$id}" src="<fileStore.core_Attachment>/{$thumbnail}" class="ipsImage ipsImage_thumbnailed" alt="{$title}"></a></p>]]></template>
|
|
<template template_group="editor" template_name="code" template_data="$val, $editorId, $randomString, $language='html'" template_location="global" template_app="core"><![CDATA[<div class="ipsPad ipsForm ipsForm_vertical" data-controller='core.global.editor.code' data-editorid='{$editorId}' data-randomstring='{$randomString}'>
|
|
<form method='get' action='#'>
|
|
<div class="ipsPad ipsAreaBackground_light">
|
|
<div class="ipsFieldRow ipsFieldRow_fullWidth ipsFieldRow_primary ipsLoading" data-role="codeContainer">
|
|
<textarea id='elCodeInput{$randomString}'>{$val}</textarea>
|
|
</div>
|
|
<div class='ipsFieldRow'>
|
|
<button type='submit' class="ipsButton ipsButton_primary cEditorURLButton cEditorURLButtonInsert" data-action="linkButton">{lang="editor_media_insert"}</button>
|
|
<div class="ipsPos_right">
|
|
<select id='elCodeMode{$randomString}' data-role="codeModeSelect" data-codeLanguage="{$language}">
|
|
<option value="null">{lang="editor_code_null"}</option>
|
|
<option value="htmlmixed" selected>{lang="editor_code_htmlmixed"}</option>
|
|
<option value="css">{lang="editor_code_css"}</option>
|
|
<option value="javascript">{lang="editor_code_javascript"}</option>
|
|
<option value="php">{lang="editor_code_php"}</option>
|
|
<option value="sql">{lang="editor_code_sql"}</option>
|
|
<option value="xml">{lang="editor_code_xml"}</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="editor" template_name="fakeFormTemplate" template_data="$id, $action, $tabs, $hiddenValues, $actionButtons, $uploadField" template_location="global" template_app="core"><![CDATA[<form accept-charset='utf-8' action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{foreach $tabs as $elements}}
|
|
{{foreach $elements as $element}}
|
|
{$element->html()|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</form>
|
|
]]></template>
|
|
<template template_group="editor" template_name="image" template_data="$editorId, $width, $height, $maximumWidth, $maximumHeight, $float, $link, $ratio" template_location="global" template_app="core"><![CDATA[<div class=" ipsForm ipsForm_vertical" data-controller="core.global.editor.image" data-imageRatio='{$ratio}' data-editorid='{$editorId}'>
|
|
<form method='get' action='#'>
|
|
<div class='ipsPad'>
|
|
<div class="ipsFieldRow ipsFieldRow_fullWidth ipsFieldRow_primary">
|
|
<label class='ipsFieldRow_title'>{lang="image_link"}</label>
|
|
<input type="text" class="" value="{$link}" data-role="imageLink">
|
|
</div>
|
|
|
|
<div class="ipsFieldRow ipsFieldRow_primary">
|
|
<label class='ipsFieldRow_title'>{lang="image_size"}</label>
|
|
<input type="number" class="ipsField_short" value="{$width}" max="{$maximumWidth}" data-role="imageWidth"> × <input type="number" class="ipsField_short" value="{$height}" max="{$maximumHeight}" data-role="imageHeight"> {lang="px"}
|
|
<p class='ipsType_reset ipsSpacer_top ipsSpacer_half'>
|
|
<span class='ipsCustomInput' id='elEditorImageRatio'>
|
|
<input type='checkbox' name='image_aspect_ratio' checked>
|
|
<span></span>
|
|
</span> <label for='elEditorImageRatio'>{lang="image_aspect"}</label>
|
|
</p>
|
|
<br>
|
|
<span class="ipsType_warning" data-role="imageSizeWarning"></span>
|
|
</div>
|
|
<div class="ipsFieldRow ipsFieldRow_primary">
|
|
<label class='ipsFieldRow_title'>{lang="image_align"}</label>
|
|
<ul class='ipsButton_split ipsComposeArea_imageAlign'>
|
|
<li>
|
|
<input type='radio' name='image_align' value='left' id='image_align_left' data-role="imageAlign" {{if $float == 'left'}}checked{{endif}} class=''>
|
|
<label for='image_align_left' class='ipsButton ipsButton_fullWidth {{if $float == 'left'}}ipsButton_primary{{else}}ipsButton_light{{endif}} ipsButton_small'>
|
|
{lang="image_align_left"}
|
|
</label>
|
|
</li>
|
|
<li>
|
|
<input type='radio' name='image_align' value='' id='image_align_none' data-role="imageAlign" {{if $float != 'left' and $float != 'right'}}checked{{endif}} class=''>
|
|
<label for='image_align_none' class='ipsButton ipsButton_fullWidth {{if $float !== 'left' && $float !=='right'}}ipsButton_primary{{else}}ipsButton_light{{endif}} ipsButton_small'>
|
|
{lang="none"}
|
|
</label>
|
|
</li>
|
|
<li>
|
|
<input type='radio' name='image_align' value='right' id='image_align_right' data-role="imageAlign" {{if $float == 'right'}}checked{{endif}} class=''>
|
|
<label for='image_align_right' class='ipsButton ipsButton_fullWidth {{if $float == 'right'}}ipsButton_primary{{else}}ipsButton_light{{endif}} ipsButton_small'>
|
|
{lang="image_align_right"}
|
|
</label>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class='ipsPad ipsAreaBackground ipsFieldRow'>
|
|
<button type='submit' class="ipsButton ipsButton_primary ipsButton_large ipsButton_fullWidth">{lang="update"}</button>
|
|
</div>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="editor" template_name="link" template_data="$val, $editorId" template_location="global" template_app="core"><![CDATA[<div class="ipsPad ipsForm ipsForm_vertical" data-controller='core.global.editor.link' data-editorid='{$editorId}' {{if request.image}}data-image="1"{{else}}data-image="0"{{endif}}>
|
|
<form method='get' action='#'>
|
|
<div class="ipsPad ipsAreaBackground_light">
|
|
<div class="ipsFieldRow ipsFieldRow_fullWidth ipsFieldRow_primary">
|
|
<label for='elLinkURL{$editorId}' class='ipsFieldRow_title'>{lang="url"}</label>
|
|
<input type="text" id='elLinkURL{$editorId}' class="ipsField_fullWidth ipsField_primary cEditorURL" placeholder="{lang="editor_link_url_label"}" data-role="linkURL" value="{$val}" autofocus>
|
|
</div>
|
|
{{if !request.image and !request.block}}
|
|
<div class="ipsFieldRow ipsFieldRow_fullWidth" data-role="linkTextRow">
|
|
<label for='elLinkText{$editorId}' class='ipsFieldRow_title'>{lang="editor_link_text"}</label>
|
|
<input type="text" id='elLinkText{$editorId}' class="ipsField_fullWidth cEditorURL" placeholder="{lang="editor_link_text_label"}" data-role="linkText" {{if request.title}}value="{expression="\IPS\Request::i()->title"}"{{else}}value=""{{endif}}>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsFieldRow'>
|
|
<button type='submit' class="ipsButton ipsButton_primary cEditorURLButton cEditorURLButtonInsert" data-action="linkButton">{lang="editor_media_insert"}</button>
|
|
{{if $val}}
|
|
{lang="or"}
|
|
<button type="button" class="ipsButton ipsButton_light ipsButton_small" data-action="linkRemoveButton">{lang="editor_link_remove"}</button>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="editor" template_name="mentionRow" template_data="$member" template_location="global" template_app="core"><![CDATA[<li class='ipsMenu_item ipsCursor_pointer' data-mentionhref='{$member->url()}' data-mentionid='{$member->member_id}' data-mentionhover='{$member->url()->setQueryString('do', 'hovercard')}'>
|
|
<a>
|
|
<img src='{$member->photo}' alt='' class='ipsUserPhoto ipsUserPhoto_tiny'>
|
|
<span class="ipsPad_half" data-role='mentionname'>{$member->name}</span>
|
|
</a>
|
|
</li>]]></template>
|
|
<template template_group="editor" template_name="myMedia" template_data="$editorId, $mediaSources, $currentMediaSource, $url, $results" template_location="global" template_app="core"><![CDATA[<div class="cMyMedia" data-controller='core.global.editor.mymedia, core.global.editor.insertable' data-editorid='{$editorId}'>
|
|
<div id="elEditor{$editorId}Attach">
|
|
{{if count ( $mediaSources ) > 1}}
|
|
<div class="ipsColumns ipsColumns_collapsePhone" data-ipsTabBar data-ipsTabBar-contentArea='#elEditor{$editorId}AttachTabContent' data-ipsTabBar-itemSelector=".ipsSideMenu_item" data-ipsTabBar-activeClass="ipsSideMenu_itemActive" data-ipsTabBar-updateURL="false">
|
|
<div class="ipsColumn ipsColumn_medium">
|
|
<div class="ipsSideMenu ipsPad" id='elAttachmentsMenu_{$editorId}' data-ipsSideMenu>
|
|
<h3 class='ipsSideMenu_mainTitle ipsAreaBackground_light ipsType_medium'>
|
|
<a href='#elAttachmentsMenu_{$editorId}' class='ipsPad_double' data-action='openSideMenu'><i class='fa fa-bars'></i> {lang="editor_attachment_location"} <i class='fa fa-caret-down'></i></a>
|
|
</h3>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $mediaSources as $k}}
|
|
<li>
|
|
<a href="{url="app=core&module=system&controller=editor&do=myMedia&tab={$k}&existing=1"}" id="elEditor{$editorId}AttachTabMedia{$k}" class="ipsSideMenu_item {{if $currentMediaSource == $k}}ipsSideMenu_itemActive{{endif}}">{lang="editorMedia_{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fluid">
|
|
{{endif}}
|
|
<div id="elEditor{$editorId}AttachTabContent" data-role="myMediaContent" class='ipsPad'>
|
|
{$results|raw}
|
|
</div>
|
|
{{if count ( $mediaSources ) > 1}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsPad ipsAreaBackground cMyMedia_controls'>
|
|
<ul class='ipsList_inline ipsType_right'>
|
|
<li><a href='#' data-action="clearAll" class='ipsButton ipsButton_verySmall ipsButton_veryLight ipsButton_disabled'>{lang="editor_clear_selection"}</a></li>
|
|
<li><a href='#' data-action="insertSelected" class='ipsButton ipsButton_verySmall ipsButton_normal ipsButton_disabled'>{lang="editor_image_upload_insert_selected"}</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="editor" template_name="myMediaContent" template_data="$files, $pagination, $url, $extension" template_location="global" template_app="core"><![CDATA[<div data-controller='core.global.editor.mymediasection' data-url="{$url}&search=1">
|
|
<div class='ipsAreaBackground ipsPad_half'>
|
|
<input type="search" class="ipsField_fullWidth" placeholder="{lang="editor_media_search"}" data-role="myMediaSearch">
|
|
</div>
|
|
<div data-role="myMediaResults" data-extension="$extension">
|
|
{template="myMediaResults" app="core" group="editor" location="global" params="$files, $pagination, $url, $extension"}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="editor" template_name="myMediaResults" template_data="$files, $pagination, $url" template_location="global" template_app="core"><![CDATA[{{if empty($files)}}
|
|
<div class='ipsPad ipsAreaBackground_light'>
|
|
{lang="no_results"}
|
|
</div>
|
|
{{else}}
|
|
<div class="ipsGrid ipsAttachment_fileList">
|
|
{{foreach $files as $url => $file}}
|
|
{template="uploadFile" group="forms" location="global" params="$url, $file, NULL, TRUE, TRUE, $url"}
|
|
{{endforeach}}
|
|
</div>
|
|
<br>
|
|
{$pagination|raw}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="embed" template_name="embedNoPermission" template_data="" template_location="global" template_app="core"><![CDATA[<div class='ipsEmbedded'>
|
|
<div class='ipsEmbedded_headerArea'>
|
|
<h4 class='ipsType_reset ipsType_normal ipsTruncate ipsTruncate_line'><i class='fa fa-warning'></i> {lang="embed_no_perm_title"}</h4>
|
|
</div>
|
|
<div class='ipsEmbedded_content'>
|
|
<p class="ipsType_large ipsPad ipsType_light">
|
|
{lang="embed_no_perm_desc"}
|
|
</p>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="embed" template_name="embedUnavailable" template_data="" template_location="global" template_app="core"><![CDATA[<div class='ipsEmbedded'>
|
|
<div class='ipsEmbedded_headerArea'>
|
|
<h4 class='ipsType_reset ipsType_normal ipsTruncate ipsTruncate_line'><i class='fa fa-warning'></i> {lang="embed_unavailable_title"}</h4>
|
|
</div>
|
|
<div class='ipsEmbedded_content'>
|
|
<p class="ipsType_large ipsPad ipsType_light">
|
|
{lang="embed_unavailable_desc"}
|
|
</p>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="embed" template_name="facebook" template_data="$url" template_location="global" template_app="core"><![CDATA[<script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = '//connect.facebook.net/en_US/all.js#xfbml=1'; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>
|
|
<div class='fb-post' data-href='{$url}' data-width='500'></div>
|
|
<br>
|
|
<a href='{$url}' target='_blank' class='ipsType_small'><i class='fa fa-facebook-square'></i> {lang="view_on_facebook"}</a>]]></template>
|
|
<template template_group="embed" template_name="gfycat" template_data="$key" template_location="global" template_app="core"><![CDATA[<script type='text/javascript' src='http://assets.gfycat.com/js/gfyajax-0.517d.js'></script>
|
|
<img class="gfyitem" data-id="{$key}" />]]></template>
|
|
<template template_group="embed" template_name="google" template_data="$url" template_location="global" template_app="core"><![CDATA[<script type='text/javascript' src='https://apis.google.com/js/plusone.js'></script>
|
|
<div class='g-post' data-href='{$url}'><a href='{$url}' target='_blank'>{$url}</a></div>]]></template>
|
|
<template template_group="embed" template_name="iframe" template_data="$url, $width=NULL, $height=NULL" template_location="global" template_app="core"><![CDATA[<div class='ipsEmbeddedOther' contenteditable="false">
|
|
<iframe src="{$url|raw}" data-controller="core.front.core.autoSizeIframe"></iframe>
|
|
</div>]]></template>
|
|
<template template_group="embed" template_name="link" template_data="$url, $title" template_location="global" template_app="core"><![CDATA[<a href='{$url}' target='_blank'>{$title}</a>]]></template>
|
|
<template template_group="embed" template_name="photo" template_data="$imageUrl, $linkUrl=NULL, $title=NULL, $width=NULL, $height=NULL" template_location="global" template_app="core"><![CDATA[{{if $linkUrl}}<a href='{$linkUrl}' target='_blank'>{{endif}}
|
|
<img src='{$imageUrl}' alt='{$title}' class='ipsImage' {{if $width}}width="{$width}px"{{endif}} {{if $height}}height="{$height}px"{{endif}}>
|
|
{{if $linkUrl}}</a>{{endif}}]]></template>
|
|
<template template_group="embed" template_name="video" template_data="$html" template_location="global" template_app="core"><![CDATA[<div class='ipsEmbeddedVideo {{if \IPS\Settings::i()->max_video_width > 0}}ipsEmbeddedVideo_limited{{endif}}' contenteditable="false"><div>{$html|raw}</div></div>]]></template>
|
|
<template template_group="forms" template_name="address" template_data="$name, $value, $googlePlaces, $minimize=FALSE" template_location="global" template_app="core"><![CDATA[<ul class="ipsField_fieldList" data-ipsAddressForm {{if $googlePlaces}}data-ipsAddressForm-googlePlaces{{endif}} {{if $minimize}}data-ipsAddressForm-minimize{{endif}}{{if $value->country AND !$value->city AND !$value->region AND !$value->postalCode}} data-ipsAddressForm-country="{$value->country}"{{endif}}>
|
|
<li>
|
|
<select name="{$name}[country]" data-role="countrySelect" data-sort>
|
|
<option value='' {{if !$value->country OR (!$value->city AND !$value->region AND !$value->postalCode)}}selected{{endif}}>{lang="country"}</option>
|
|
{{foreach \IPS\GeoLocation::$countries as $k}}
|
|
<option value="$k" {{if $k == $value->country AND ( ( $value->city AND $value->postalCode ) OR !$minimize )}}selected{{endif}}>
|
|
{lang="country-{$k}"}
|
|
</option>
|
|
{{endforeach}}
|
|
</select>
|
|
</li>
|
|
{{foreach $value->addressLines as $i => $line}}
|
|
<li>
|
|
<input type="text" name="{$name}[address][]" placeholder="{lang="address_line"}" value="{$line}" data-role="addressLine">
|
|
</li>
|
|
{{endforeach}}
|
|
<li>
|
|
<input type="text" name="{$name}[city]" placeholder="{lang="city"}" value="{$value->city}" data-role="city">
|
|
</li>
|
|
<li>
|
|
<input type="text" name="{$name}[region]" placeholder="{lang="region"}" value="{$value->region}" data-role="regionText">
|
|
</li>
|
|
<li>
|
|
<input type="text" name="{$name}[postalCode]" placeholder="{lang="zip"}" value="{$value->postalCode}" data-role="postalCode">
|
|
</li>
|
|
</ul>]]></template>
|
|
<template template_group="forms" template_name="blurb" template_data="$lang, $parse=TRUE, $background=FALSE" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad ipsType_normal {{if $background}}ipsAreaBackground_light{{endif}}">
|
|
{{if $parse}}{lang="$lang"}{{else}}{$lang|raw}{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="button" template_data="$lang, $type, $href=NULL, $class='', $attributes=array()" template_location="global" template_app="core"><![CDATA[{{if $type === 'link'}}
|
|
<a href="{$href}" class='ipsButton ipsButton_link {{if $class}}{$class}{{endif}}' {{if $attributes}}{{foreach $attributes as $key => $value}}{$key}="{$value}"{{endforeach}}{{endif}} role="button">{lang="$lang"}</a>
|
|
{{else}}
|
|
<button type="{$type}" {{if $class}}class="{$class}"{{endif}} {{if $attributes}}{{foreach $attributes as $key => $value}}{$key}="{$value}"{{endforeach}}{{endif}} role="button">{lang="$lang"}</button>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="checkbox" template_data="$name, $value=FALSE, $disabled=FALSE, $togglesOn=array(), $togglesOff=array(), $label='', $hiddenName=''" template_location="admin" template_app="core"><![CDATA[<input type="hidden" name="{$hiddenName}" value="0" />
|
|
<span class='ipsCustomInput'>
|
|
<input
|
|
type='checkbox'
|
|
role='checkbox'
|
|
name='{$name}'
|
|
value='1'
|
|
id='check_{$name}'
|
|
{{if $value}}checked aria-checked='true'{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if !empty($togglesOn) OR !empty($togglesOff)}}data-control="toggle"{{endif}}
|
|
{{if !empty($togglesOn)}} data-togglesOn="{expression="implode( ',', $togglesOn )"}" aria-controls="{expression="implode( ',', $togglesOn )"}"{{endif}}
|
|
{{if !empty($togglesOff)}} data-togglesOff="{expression="implode( ',', $togglesOff )"}" aria-controls="{expression="implode( ',', $togglesOff )"}"{{endif}}
|
|
>
|
|
<span></span>
|
|
</span>
|
|
<label for='check_{$name}'>{lang="$label"}</label>]]></template>
|
|
<template template_group="forms" template_name="checkbox" template_data="$name, $value=FALSE, $disabled=FALSE, $togglesOn=array(), $togglesOff=array(), $label='', $hiddenName='', $id=NULL, $fancyToggle=FALSE, $tooltip=NULL" template_location="global" template_app="core"><![CDATA[<input type="hidden" name="{$hiddenName}" value="0">
|
|
{{if !$fancyToggle}}<span class='ipsCustomInput'>{{endif}}
|
|
<input
|
|
type='checkbox'
|
|
role='checkbox'
|
|
name='{$name}'
|
|
value='1'
|
|
id="check_{$id}"
|
|
{{if $value}}checked aria-checked='true'{{else}}aria-checked='false'{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if !empty($togglesOn) OR !empty($togglesOff)}}
|
|
data-control="toggle"
|
|
{{if $fancyToggle}}
|
|
data-toggle-visibleCheck="#check_{$id}_wrapper"
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if !empty($togglesOn)}} data-togglesOn="{expression="implode( ',', $togglesOn )"}" aria-controls="{expression="implode( ',', $togglesOn )"}"{{endif}}
|
|
{{if !empty($togglesOff)}} data-togglesOff="{expression="implode( ',', $togglesOff )"}" aria-controls="{expression="implode( ',', $togglesOff )"}"{{endif}}
|
|
{{if $fancyToggle}}
|
|
data-ipsToggle
|
|
{{endif}}
|
|
{{if $tooltip}}title='{$tooltip}' data-ipsTooltip{{endif}}
|
|
>
|
|
{{if !$fancyToggle}}
|
|
<span></span>
|
|
</span>
|
|
{{endif}}
|
|
{{if $label}}
|
|
<label for="check_{$id}">
|
|
{lang="$label"}
|
|
</label>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="checkboxset" template_data="$name, $value, $required, $options, $multiple=FALSE, $class='', $disabled=FALSE, $toggles=array(), $id=NULL, $unlimited=NULL, $unlimitedLang='all', $unlimitedToggles=array(), $toggleOn=TRUE, $descriptions=array()" template_location="global" template_app="core"><![CDATA[{{if $multiple}}
|
|
<input type="hidden" name="{$name}[__EMPTY]" value="__EMPTY">
|
|
{{endif}}
|
|
<ul class="ipsField_fieldList">
|
|
{{foreach $options as $k => $v}}
|
|
<li>
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" {{if $class}}class="{$class}"{{endif}} name="{$name}[{$k}]" value="1" {{if is_array( $value ) AND in_array( $k, $value )}}checked{{endif}} {{if $disabled === TRUE or ( is_array( $disabled ) and in_array( $k, $disabled ) )}}disabled{{endif}} {{if isset( $toggles[ $k ] ) and !empty( $toggles[ $k ] )}}data-control="toggle" {{if $toggleOn === FALSE}}data-togglesOff{{else}}data-togglesOn{{endif}}="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}} id="elCheckbox_{$name}_{$k}">
|
|
<span></span>
|
|
</span>
|
|
<div class='ipsField_fieldList_content'>
|
|
<label for='elCheckbox_{$name}_{$k}' id='elField_{$name}_label'>{$v|raw}</label>
|
|
{{if isset( $descriptions[ $k ] )}}
|
|
<br>
|
|
<span class='ipsFieldRow_desc'>
|
|
{$descriptions[ $k ]|raw}
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="forms" template_name="codemirror" template_data="$name, $value='', $required, $maxlength=NULL, $disabled=FALSE, $class='', $placeholder='', $tags=array(), $mode='htmlmixed', $id=NULL, $height='300px'" template_location="global" template_app="core"><![CDATA[{{if !empty( $tags )}}
|
|
<div class='ipsColumns ipsColumns_collapseTablet' data-controller='core.global.editor.customtags' data-tagFieldType='codemirror' data-tagFieldID='elCodemirror_{{if $id}}{$id}{{else}}{$name}{{endif}}'>
|
|
<div class='ipsColumn_fluid ipsColumn'>
|
|
{{endif}}
|
|
<div class='ipsAreaBackground ipsPad_half' data-role="editor">
|
|
<textarea
|
|
name="{$name}"
|
|
id='elCodemirror_{{if $id}}{$id}{{else}}{$name}{{endif}}'
|
|
value="{expression="htmlentities( $value, \IPS\HTMLENTITIES, 'UTF-8', TRUE )"}"
|
|
class="ipsField_fullWidth {$class}"
|
|
{{if $maxlength !== NULL}}maxlength="{$maxlength}"{{endif}}
|
|
{{if $required === TRUE}}aria-required='true'{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if $placeholder}}placeholder="{$placeholder}"{{endif}}
|
|
data-control="codemirror"
|
|
data-mode="{$mode}"
|
|
{{if $height}}data-height="{$height}"{{endif}}
|
|
>{$value}</textarea>
|
|
</div>
|
|
{{if !empty( $tags )}}
|
|
</div>
|
|
<div class='ipsColumn_medium ipsColumn ipsAreaBackground_light ipsComposeArea_sidebar {{if !isset( \IPS\Request::i()->cookie['tagSidebar'] )}}ipsComposeArea_sidebarOpen{{else}}ipsComposeArea_sidebarClosed{{endif}}' data-codemirrorid='elCodemirror_{{if $id}}{$id}{{else}}{$name}{{endif}}'>
|
|
<a href='#' data-action='tagsToggle' data-ipsTooltip data-ipsTooltip-label="{lang="toggle_sidebar"}">{lang="toggle_sidebar"}</a>
|
|
<h3 class='ipsAreaBackground ipsPad_half ipsType_reset' data-role='tagsHeader'>{lang="editor_tags"}</h3>
|
|
<ul class='ipsList_reset ipsScrollbar' data-role='tagsList'>
|
|
{{foreach $tags as $tagKey => $tagValue}}
|
|
{{if is_array( $tagValue )}}
|
|
<li>
|
|
<ul class='ipsList_reset'>
|
|
<li><h4 class='ipsAreaBackground ipsPad_half ipsType_reset'>{lang="$tagKey"}</h4></li>
|
|
<li>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $tagValue as $key => $value}}
|
|
<li class='ipsPad_half'>
|
|
<label data-tagKey="{$key}">{$key}</label>
|
|
<div class='ipsType_light ipsType_small'>{$value}</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
{{else}}
|
|
<li class='ipsPad_half'>
|
|
<label data-tagKey="{$tagKey}">{$tagKey}</label>
|
|
<div class='ipsType_light ipsType_small'>{$tagValue}</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="color" template_data="$name, $value, $required, $disabled=FALSE" template_location="global" template_app="core"><![CDATA[<input type="text" name="{$name}" value="{$value}" {{if $required === TRUE}}aria-required='true'{{endif}} {{if $disabled}}disabled aria-disabled='true'{{endif}} data-control="color" class="">]]></template>
|
|
<template template_group="forms" template_name="colorDisplay" template_data="$color" template_location="global" template_app="core"><![CDATA[<div class="ipsClearFix">
|
|
<div style="background-color: {$color}; height: 15px; width: 15px; border: 1px solid black;" class="ipsPos_left"></div><div class="ipsPos_left"> {expression="mb_strtoupper( $color )"}</div>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="commentTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class=''" template_location="front" template_app="core"><![CDATA[{{$minimized = false;}}
|
|
<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class='ipsComposeArea ipsComposeArea_withPhoto ipsClearfix'>
|
|
<div class='ipsPos_left ipsResponsive_hidePhone ipsResponsive_block'>{template="userPhoto" app="core" group="global" params="\IPS\Member::loggedIn(), 'small'"}</div>
|
|
<div class='ipsComposeArea_editor'>
|
|
{{if !\IPS\Member::loggedIn()->member_id}}
|
|
<div data-ipsEditor-toolList class='ipsMessage ipsMessage_info'>
|
|
{lang="commenting_as_guest"}
|
|
</div>
|
|
{{endif}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input->name == 'guest_name'}}
|
|
<ul class='ipsForm ipsForm_horizontal' data-ipsEditor-toolList>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
{$input->html()|raw}
|
|
{{if $input->error}}
|
|
<div class="ipsType_warning ipsSpacer_top" data-role="commentFormError">{lang="$input->error"}</div>
|
|
{{endif}}
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Editor}}
|
|
{{if $input->options['minimize'] !== NULL}}
|
|
{{$minimized = true;}}
|
|
{{endif}}
|
|
{$input->html( TRUE )|raw}
|
|
{{if $input->error}}
|
|
<div class="ipsType_warning ipsSpacer_top" data-role="commentFormError">{lang="$input->error"}</div>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<ul class='ipsToolList ipsToolList_horizontal ipsClear ipsClearfix {{if $minimized}}ipsJS_hide{{endif}}' data-ipsEditor-toolList>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if !($input instanceof \IPS\Helpers\Form\Editor) && $input->name != 'guest_name'}}
|
|
<li class='ipsPos_left ipsResponsive_noFloat {{if !($input instanceof \IPS\Helpers\Form\Captcha)}}ipsComposeArea_formControl{{endif}} ipsType_small'>
|
|
{$input->html()|raw}
|
|
{{if $input->error}}
|
|
<div class="ipsType_warning ipsSpacer_top" data-role="commentFormError">{lang="$input->error"}</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{foreach $actionButtons as $button}}
|
|
<li>{$button|raw}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="commentUnavailable" template_data="$lang, $warnings=array(), $ends=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsComposeArea ipsComposeArea_withPhoto ipsComposeArea_unavailable ipsClearfix'>
|
|
<div class='ipsPos_left ipsResponsive_hidePhone ipsResponsive_block'>{template="userPhoto" app="core" group="global" params="\IPS\Member::loggedIn(), 'small'"}</div>
|
|
<div class='ipsComposeArea_editor'>
|
|
<div class="ipsComposeArea_dummy">
|
|
<span class='ipsType_warning'><i class="fa fa-warning"></i> {lang="$lang"} {{if $ends !== NULL AND $ends > 0}}{lang="restriction_ends" sprintf="\IPS\DateTime::ts( $ends )->relative()"}{{endif}}</span>
|
|
|
|
{{if count( $warnings) }}
|
|
{{foreach $warnings as $idx => $warning}}
|
|
{{if $idx === 0}}
|
|
<br><br>
|
|
<a href="{$warning->url()}" data-ipsDialog data-ipsDialog-size='narrow' class='ipsButton ipsButton_verySmall ipsButton_light'>{lang="view_warning_details"}</a>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="createItemUnavailable" template_data="$lang, $warnings" template_location="front" template_app="core"><![CDATA[
|
|
{lang="$lang"}
|
|
|
|
{{if count( $warnings) }}
|
|
{{foreach $warnings as $idx => $warning}}
|
|
{{if $idx === 0}}
|
|
<br><br>
|
|
<a href="{$warning->url()}" data-ipsDialog data-ipsDialog-size='narrow' class='ipsButton ipsButton_verySmall ipsButton_light'>{lang="view_warning_details"}</a>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="date" template_data="$name, $value, $required, $min=NULL, $max=NULL, $disabled=FALSE, $time=FALSE, $unlimited=NULL, $unlimitedLang=NULL, $unlimitedName=NULL, $toggles=array(), $toggleOn=TRUE, $class='ipsField_short', $placeholder=NULL" template_location="global" template_app="core"><![CDATA[<input
|
|
type="date"
|
|
name="{$name}"
|
|
{{if $unlimited === NULL or $value !== $unlimited}}value="{{if $value instanceof \IPS\DateTime}}{$value->format('Y-m-d')}{{else}}{$value}{{endif}}" data-preferredFormat="{{if $value instanceof \IPS\DateTime}}{$value->localeDate()}{{else}}{$value}{{endif}}"{{endif}}
|
|
{{if $required === TRUE}}aria-required='true'{{endif}}
|
|
{{if $min !== NULL}}min="{$min}"{{endif}}
|
|
{{if $max !== NULL}}max="{$max}"{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
class="{$class}"
|
|
data-control="date"
|
|
placeholder='{{if $placeholder !== NULL}}{$placeholder}{{else}}{expression="mb_strtoupper( str_replace( 'y', 'yy', \IPS\Member::loggedIn()->language()->preferredDateFormat() ) )"}{{endif}}'
|
|
>
|
|
{{if $time}}
|
|
<input name="{$time}" type="time" size="12" class="ipsField_short" placeholder="HH:MM" step='60' min='00:00' value="{{if $value instanceof \IPS\DateTime}}{$value->format('H:i')}{{endif}}" {{if $disabled}}disabled aria-disabled='true'{{endif}}>
|
|
{{endif}}
|
|
{{if $unlimited !== NULL and ( !$disabled or $unlimited === $value )}}
|
|
|
|
{lang="or"}
|
|
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited{{if count( $toggles )}} toggle{{endif}}" name="{$unlimitedName}" id='{$unlimitedName}' value="{$unlimited}" {{if $unlimited === $value}}checked aria-checked='true'{{endif}} {{if $disabled}}disabled{{endif}} {{if count( $toggles )}}{{if $toggleOn === FALSE}}data-togglesOff{{else}}data-togglesOn{{endif}}="{expression="implode( ',', $toggles )"}"{{endif}} aria-labelledby='label_{$unlimitedName}'>
|
|
<span></span>
|
|
</span>
|
|
<label for='{$unlimitedName}' id='label_{$unlimitedName}' class='ipsField_unlimited'>{lang="$unlimitedLang"}</label>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="dateinterval" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[{lang="every"}
|
|
<br>
|
|
<ul class="ipsField_fieldList">
|
|
<li><input type="number" name="{$name}[y]" class="ipsField_short" value="{$value->y}" min="0" /> {lang="years"}</li>
|
|
<li><input type="number" name="{$name}[m]" class="ipsField_short" value="{$value->m}" min="0" /> {lang="months"}</li>
|
|
<li><input type="number" name="{$name}[d]" class="ipsField_short" value="{$value->d}" min="0" /> {lang="days"}</li>
|
|
<li><input type="number" name="{$name}[h]" class="ipsField_short" value="{$value->h}" min="0" /> {lang="hours"}</li>
|
|
<li><input type="number" name="{$name}[i]" class="ipsField_short" value="{$value->i}" min="0" /> {lang="minutes"}</li>
|
|
<li><input type="number" name="{$name}[s]" class="ipsField_short" value="{$value->s}" min="0" /> {lang="seconds"}</li>
|
|
</ul>]]></template>
|
|
<template template_group="forms" template_name="dateRange" template_data="$start, $end" template_location="global" template_app="core">{lang="between"} {$start|raw} {lang="and"} {$end|raw}</template>
|
|
<template template_group="forms" template_name="editContentForm" template_data="$title, $form" template_location="front" template_app="core"><![CDATA[<div class="ipsPageHeader ipsClearfix ipsSpacer_bottom">
|
|
<h1 class="ipsType_pageTitle">{$title}</h1>
|
|
</div>
|
|
{$form|raw}]]></template>
|
|
<template template_group="forms" template_name="editor" template_data="$name, $value, $options, $toolbars, $postKey, $uploadControl, $emoticons, $tags=array()" template_location="global" template_app="core"><![CDATA[{{if !empty( $tags )}}
|
|
<div class='ipsColumns ipsColumns_collapseTablet' data-controller='core.global.editor.customtags' data-tagFieldType='editor' data-tagFieldID='{$name}'>
|
|
<div class='ipsColumn_fluid ipsColumn'>
|
|
{{endif}}
|
|
<div class='ipsComposeArea_editor' data-role="editor">
|
|
{template="editorRaw" group="forms" app="core" location="global" params="$name, $value, $options, $toolbars, $postKey, $uploadControl, $emoticons"}
|
|
</div>
|
|
{{if !empty( $tags )}}
|
|
</div>
|
|
<div class='ipsColumn_medium ipsColumn ipsAreaBackground_light ipsComposeArea_sidebar {{if !isset( \IPS\Request::i()->cookie['tagSidebar'] )}}ipsComposeArea_sidebarOpen{{else}}ipsComposeArea_sidebarClosed{{endif}}'>
|
|
<a href='#' class="ipsJS_show" data-action='tagsToggle' data-ipsTooltip data-ipsTooltip-label="{lang="toggle_sidebar"}">{lang="toggle_sidebar"}</a>
|
|
<h3 class='ipsAreaBackground ipsPad_half ipsType_reset' data-role='tagsHeader'>{lang="editor_tags"}</h3>
|
|
<ul class='ipsList_reset ipsScrollbar' data-role='tagsList'>
|
|
{{foreach $tags as $tagKey => $tagValue }}
|
|
<li class='ipsPad_half'>
|
|
<label class="ipsJS_show" data-tagKey="{$tagKey}">{$tagKey}</label>
|
|
<div class='ipsJS_hide ipsType_light'><strong>{$tagKey}</strong></div>
|
|
<div class='ipsType_light '>{$tagValue}</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="editorAttachments" template_data="$name, $value, $minimize, $maxFileSize, $maxChunkSize, $totalMaxSize, $allowedFileTypes, $pluploadKey, $multiple=FALSE, $editor=FALSE, $forceNoscript=FALSE, $template='core.attachments.fileItem', $existing=array(), $default=NULL" template_location="global" template_app="core"><![CDATA[<input name="{$name}" type="hidden" value="{$pluploadKey}">
|
|
{{if $forceNoscript}}
|
|
<input name="{$name}_noscript[]" type="file" {{if $multiple}}multiple{{endif}}>
|
|
{{else}}
|
|
<noscript>
|
|
<input name="{$name}_noscript[]" type="file" {{if $multiple}}multiple{{endif}}>
|
|
<span class="ipsType_light ipsType_small">
|
|
{{if $allowedFileTypes !== NULL}}
|
|
<strong>{lang="form_upload_accepted"}</strong>
|
|
{expression="implode( ', ', $allowedFileTypes )"}
|
|
{{endif}}
|
|
{{if $multiple and $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_total_max"}</strong>
|
|
{$totalMaxSize}MB
|
|
{{endif}}
|
|
{{if !$multiple or !$totalMaxSize or $maxChunkSize < $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL or ( $multiple and $totalMaxSize )}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_max"}</strong>
|
|
{$maxChunkSize}MB
|
|
{{endif}}
|
|
</span>
|
|
</noscript>
|
|
{{if $value}}
|
|
{{foreach $value as $id => $file}}
|
|
<input type="hidden" name="{$name}_existing[{$id}]" value="">
|
|
{{endforeach}}
|
|
{{endif}}
|
|
<div data-ipsEditor-toolList>
|
|
{{$editorName = preg_replace( "/(.+?)_(\d+?)_$/", "$1[$2]", mb_substr( $name, 0, -7 ) );}}
|
|
<div data-role='attachmentArea' data-controller='core.global.editor.uploader, core.global.editor.insertable' data-editorID='{$editorName}' class='ipsComposeArea_attachments ipsClearfix ipsAreaBackground_light' id="{$name}_drop_{expression="md5( uniqid() )"}" data-ipsUploader data-ipsUploader-dropTarget='#elEditorDrop_{$name}' data-ipsUploader-button='[data-action="browse"]' {{if $maxFileSize}}data-ipsUploader-maxFileSize="{$maxFileSize}"{{endif}} data-ipsUploader-maxChunkSize="{$maxChunkSize}" {{if $allowedFileTypes}}data-ipsUploader-allowedFileTypes='{expression="json_encode( $allowedFileTypes )"}'{{endif}} data-ipsUploader-name="{$name}" data-ipsUploader-key="{$pluploadKey}" {{if $multiple}}data-ipsUploader-multiple {{if $totalMaxSize}}data-ipsUploader-maxTotalSize="{$totalMaxSize}"{{endif}}{{endif}} {{if $minimize}}data-ipsUploader-minimized{{endif}} data-ipsUploader-insertable data-ipsUploader-postkey="{$editor}" data-ipsUploader-template='core.editor.attachments' {{if $value}}data-ipsUploader-existingFiles='{expression="json_encode( $value )"}'{{endif}} {{if isset( $default )}}data-ipsUploader-default='{$default}'{{endif}}>
|
|
<div class="ipsComposeArea_dropZone {{if $minimize}}ipsComposeArea_dropZoneSmall{{endif}} ipsClearfix" id='elEditorDrop_{$name}'>
|
|
<i class='fa fa-paperclip'></i>
|
|
<div>
|
|
<ul class='ipsList_inline ipsClearfix'>
|
|
<li class='ipsType_normal'>
|
|
<span class='ipsAttachment_supportDrag'>{lang="editor_attach_drag"}</span>
|
|
<a href='#' data-action='browse'>
|
|
<span class='ipsAttachment_supportDrag'>{lang="editor_attach_choose_drag"}</span>
|
|
<span class='ipsAttachment_nonDrag'>{lang="editor_attach_choose_nodrag"}</span>
|
|
</a>
|
|
{{if $allowedFileTypes !== NULL || $maxFileSize || $totalMaxSize}}
|
|
<br>
|
|
<span class='ipsType_medium ipsType_light'>
|
|
{{if $allowedFileTypes !== NULL}}
|
|
<strong>{lang="form_upload_accepted"}</strong>
|
|
{expression="implode( ', ', $allowedFileTypes )"}
|
|
{{endif}}
|
|
{{if $multiple and $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_total_max"}</strong>
|
|
{$totalMaxSize}MB
|
|
{{endif}}
|
|
{{if $maxFileSize and ( !$multiple or !$totalMaxSize or $maxFileSize < $totalMaxSize )}}
|
|
{{if $allowedFileTypes !== NULL or ( $multiple and $totalMaxSize )}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_max"}</strong>
|
|
{expression="round($maxFileSize,2)"}MB
|
|
{{endif}}
|
|
</span>
|
|
{{endif}}
|
|
</li>
|
|
<li class='ipsPos_right ipsResponsive_noFloat'>
|
|
<a href='#' class='ipsButton ipsButton_light ipsButton_verySmall' data-ipsMenu id='elEditorAttach_media{expression="md5($editorName)"}'>{lang="editor_attach_other"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elEditorAttach_media{expression="md5($editorName)"}_menu'>
|
|
<li class='ipsMenu_item'><a href='#' data-ipsDialog data-ipsDialog-fixed data-ipsDialog-forceReload data-ipsDialog-removeOnClose data-ipsDialog-title='{lang="editor_insert_existing_file"}' data-ipsDialog-url="{url="app=core&module=system&controller=editor&do=myMedia&postKey={$editor}&editorId={$editorName}" csrf="1"}">{lang="editor_insert_existing_file"}</a></li>
|
|
{{if \IPS\Settings::i()->allow_remote_images}}
|
|
<li class='ipsMenu_item'><a href='#' data-ipsDialog data-ipsDialog-fixed data-ipsDialog-forceReload data-ipsDialog-title='{lang="editor_insert_from_url"}' data-ipsDialog-url="{url="app=core&module=system&controller=editor&do=link&image=1&postKey={$editor}&editorId={$editorName}" csrf="1"}">{lang="editor_insert_from_url"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<div data-role='fileList' class='ipsComposeArea_attachmentsInner {{if count($value) == 0}}ipsHide{{endif}}'>
|
|
<div data-role='files' class='ipsAreaBackground_reset ipsHide'>
|
|
<p class='ipsType_normal ipsPad_half ipsType_reset'><strong>{lang="editor_uploaded_files"}</strong></p>
|
|
<ul class='ipsList_reset ipsDataList ipsPad_half' data-role='fileContainer'>
|
|
{{foreach $value as $attachID => $file}}
|
|
{{if !$file->isImage()}}
|
|
<li class='ipsDataItem ipsAttach ipsAttach_done ipsContained' id='elAttach_{$attachID}' data-role='file' data-fileid='{$attachID}'>
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center'>
|
|
<i class='fa fa-file ipsType_large'></i>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<strong class='ipsDataItem_title ipsType_medium' data-role='title'>{$file->originalFilename}</strong><br><span class='ipsType_light'>{filesize="$file->filesize()"}</span>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size8 ipsType_right'>
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
<a href='#' data-action='insertFile' class='ipsAttach_selection' data-ipsTooltip title='{lang="insert_into_post"}'><i class='fa fa-plus'></i></a>
|
|
</li>
|
|
<li>
|
|
<a href='#' class='ipsType_warning' data-role='deleteFile'><i class='fa fa-trash-o'></i> {lang="delete"}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div data-role='images' class='ipsAreaBackground_reset {{if count($value) == 0}}ipsHide{{endif}}'>
|
|
<p class='ipsType_normal ipsPad_half ipsType_reset'><strong>{lang="editor_uploaded_images"}</strong></p>
|
|
<ul class='ipsPad_half ipsList_reset ipsGrid ipsGrid_collapsePhone' data-role='fileContainer' data-ipsGrid data-ipsGrid-minItemSize='150' data-ipsGrid-maxItemSize='250'>
|
|
{{foreach $value as $attachID => $file}}
|
|
{{if $file->isImage()}}
|
|
<li class='ipsGrid_span3 ipsAttach ipsContained ipsImageAttach ipsPad_half ipsAreaBackground_light' id='elAttach_{$attachID}' data-role='file' data-fileid='{$attachID}' data-fullsizeurl='{$file->url}' data-thumbnailurl='{$file->attachmentThumbnailUrl}' data-isImage="1">
|
|
<ul class='ipsList_inline ipsImageAttach_controls'>
|
|
<li>
|
|
<a href='#' data-action='insertFile' class='ipsAttach_selection' data-ipsTooltip title='{lang="insert_into_post"}'><i class='fa fa-plus'></i></a>
|
|
</li>
|
|
<li class='ipsPos_right' data-role='deleteFileWrapper'>
|
|
<a href='#' data-role='deleteFile' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="delete"}'><i class='fa fa-trash-o'></i></a>
|
|
</li>
|
|
</ul>
|
|
|
|
<div class='ipsImageAttach_thumb ipsType_center' style='background-image: url( "{expression="str_replace( array( '(', ')' ), array( '\(', '\)' ), $file->attachmentThumbnailUrl )"}" )' data-role='preview' data-grid-ratio='65' data-action='insertFile'>
|
|
<img src='{$file->url}' alt=''>
|
|
</div>
|
|
<h2 class='ipsType_reset ipsAttach_title ipsTruncate ipsTruncate_line ipsType_medium' data-role='title'>{$file->originalFilename}</h2>
|
|
<p class='ipsType_light'>{filesize="$file->filesize()"}</p>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="editorAttachmentsMinimized" template_data="$name" template_location="global" template_app="core"><![CDATA[<div data-ipsEditor-toolList data-ipsEditor-toolListMinimized data-name="{$name}" class="ipsAreaBackground_light ipsClearfix ipsHide">
|
|
<div data-role='attachmentArea'>
|
|
<div class="ipsComposeArea_dropZone ipsComposeArea_dropZoneSmall ipsClearfix">
|
|
<i class='fa fa-paperclip'></i>
|
|
<div class='ipsType_light ipsType_normal'>
|
|
{lang="loading"}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="editorAttachmentsPlaceholder" template_data="$name, $editor" template_location="global" template_app="core"><![CDATA[ <div data-ipsEditor-toolList class="ipsAreaBackground_light ipsClearfix">
|
|
<div data-role='attachmentArea'>
|
|
<div class="ipsComposeArea_dropZone ipsComposeArea_dropZoneSmall ipsClearfix ipsClearfix" id='elEditorDrop_{$name}'>
|
|
<div>
|
|
<ul class='ipsList_inline ipsClearfix'>
|
|
<li class='ipsPos_right'>
|
|
<a href='#' class='ipsButton ipsButton_light ipsButton_verySmall' data-ipsMenu id='elEditorAttach_media{expression="md5($name)"}'>{lang="editor_attach_other"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elEditorAttach_media{expression="md5($name)"}_menu'>
|
|
<li class='ipsMenu_item'><a href='#' data-ipsDialog data-ipsDialog-fixed data-ipsDialog-forceReload data-ipsDialog-title='{lang="editor_insert_existing_file"}' data-ipsDialog-url="{url="app=core&module=system&controller=editor&do=myMedia&postKey={$editor}&editorId={$name}" csrf="1"}">{lang="editor_insert_existing_file"}</a></li>
|
|
{{if \IPS\Settings::i()->allow_remote_images}}
|
|
<li class='ipsMenu_item'><a href='#' data-ipsDialog data-ipsDialog-fixed data-ipsDialog-forceReload data-ipsDialog-title='{lang="editor_insert_from_url"}' data-ipsDialog-url="{url="app=core&module=system&controller=editor&do=link&image=1&postKey={$editor}&editorId={$name}" csrf="1"}">{lang="editor_insert_from_url"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="editorRaw" template_data="$name, $value, $options, $toolbars, $postKey, $uploadControl, $emoticons" template_location="global" template_app="core"><![CDATA[
|
|
<div class='ipsType_normal ipsType_richText ipsType_break' data-ipsEditor {{if $options['minimize'] !== NULL}}data-ipsEditor-minimized{{endif}} {{if $options['allButtons']}}data-ipsEditor-allbuttons='true'{{else}}data-ipsEditor-toolbars='{expression="json_encode( $toolbars )"}'{{endif}} data-ipsEditor-extraPlugins='{setting="ckeditor_extraPlugins"}' {{if $postKey}}data-ipsEditor-postKey="{$postKey}"{{endif}} {{if $options['autoSaveKey']}}data-ipsEditor-autoSaveKey="{$options['autoSaveKey']}"{{endif}} data-ipsEditor-skin="{expression="\IPS\IN_DEV ? 'ips' : \IPS\Theme::i()->editor_skin"}" data-ipsEditor-name="{$name}"{{if !$options['autoGrow']}} data-ipsEditor-autoGrow='false'{{endif}} data-ipsEditor-emoticons='{$emoticons}' data-ipsEditor-pasteBehaviour='{setting="editor_paste_behaviour"}'>
|
|
<noscript>
|
|
<textarea name="{$name}_noscript" rows="15">{expression="\IPS\Helpers\Form\Editor::valueForNoJsFallback( $value )"}</textarea>
|
|
</noscript>
|
|
<div {{if $options['minimize']}}class="ipsHide"{{endif}} data-role="mainEditorArea">
|
|
<textarea name="{$name}" data-role='contentEditor' class="ipsHide">{$value|doubleencode}</textarea>
|
|
</div>
|
|
{{if $options['minimize']}}
|
|
<div class='ipsComposeArea_dummy ipsJS_show' tabindex='1'><i class='{$options['minimizeIcon']}'></i> {lang="$options['minimize']"}</div>
|
|
{{endif}}
|
|
<div class="ipsHide ipsComposeArea_editorPaste" data-role="pasteMessage">
|
|
<p class='ipsType_reset ipsPad_half'>
|
|
{{if settings.editor_paste_behaviour == 'force'}}
|
|
<a class="ipsPos_right ipsType_normal ipsCursor_pointer ipsComposeArea_editorPasteSwitch" data-action="removePasteFormatting" title='{lang="editor_keep_no_formatting"}' data-ipsTooltip>×</a>
|
|
<i class="fa fa-info-circle"></i> {lang="editor_pasted_with_formatting"}. <a class='ipsType_blendLinks ipsCursor_pointer' data-action="keepPasteFormatting">{lang="editor_restore_formatting"}</a>
|
|
{{else}}
|
|
<a class="ipsPos_right ipsType_normal ipsCursor_pointer ipsComposeArea_editorPasteSwitch" data-action="keepPasteFormatting" title='{lang="editor_keep_formatting"}' data-ipsTooltip>×</a>
|
|
<i class="fa fa-info-circle"></i> {lang="editor_pasted_with_formatting"}. <a class='ipsType_blendLinks ipsCursor_pointer' data-action="removePasteFormatting">{lang="editor_remove_formatting"}</a>
|
|
{{endif}}
|
|
</p>
|
|
</div>
|
|
{$uploadControl|raw}
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="emptyRow" template_data="$contents, $id=NULL" template_location="admin" template_app="core"><![CDATA[<li class='ipsFieldRow ipsPad_half ipsClearfix' {{if $id}}id="{$id}"{{endif}}>
|
|
{$contents|raw}
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="emptyRow" template_data="$contents, $id=NULL" template_location="front" template_app="core"><![CDATA[<li class='ipsFieldRow ipsPad_half ipsClearfix' {{if $id}}id="{$id}"{{endif}}>
|
|
{$contents|raw}
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="ftp" template_data="$name, $value" template_location="global" template_app="core"><![CDATA[<div data-controller="nexus.global.forms.ftp">
|
|
<ul class='ipsList_reset'>
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" name="{$name}[protocol]" value="ftp" id="{$name}_ftp" data-role="portToggle" data-port="21" {{if !isset( $value['protocol'] ) or $value['protocol'] == 'ftp'}}checked{{endif}}> <label for='{$name}_ftp'>{lang="FTP"}</label>
|
|
<span></span>
|
|
</span>
|
|
</li>
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" name="{$name}[protocol]" value="ssl_ftp" id="{$name}_ssl_ftp" data-role="portToggle" data-port="21" {{if isset( $value['protocol'] ) and $value['protocol'] == 'ssl_ftp'}}checked{{endif}}> <label for='{$name}_ssl_ftp'>{lang="ftp_with_ssl"}</label>
|
|
<span></span>
|
|
</span>
|
|
</li>
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" name="{$name}[protocol]" value="sftp" id="{$name}_sftp" data-role="portToggle" data-port="22" {{if isset( $value['protocol'] ) and $value['protocol'] == 'sftp'}}checked{{endif}}> <label for='{$name}_sftp'>{lang="SFTP"}</label>
|
|
<span></span>
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
<br>
|
|
<ul class='ipsField_translatable ipsList_inline ipsList_reset'>
|
|
<li class='ipsClearfix'>
|
|
<span class="ipsFlag fa fa-globe"></span>
|
|
<input type='text' name="{$name}[server]" placeholder="ftp.example.com" data-role="serverInput" {{if isset( $value['server'] )}}value="{$value['server']}"{{endif}} class="ipsField_medium">
|
|
</li>
|
|
<li class='ipsClearfix'>
|
|
<span class="ipsFlag fa fa-bolt"></span>
|
|
<input type='text' name="{$name}[port]" data-role="portInput" placeholder="{lang="port"}" value="{{if isset( $value['port'] )}}{$value['port']}{{else}}21{{endif}}" class="ipsField_tiny">
|
|
</li>
|
|
</ul>
|
|
<ul class='ipsField_translatable ipsList_reset'>
|
|
<li class='ipsClearfix'>
|
|
<span class="ipsFlag fa fa-user"></span>
|
|
<input type='text' name="{$name}[un]" data-role="usernameInput" placeholder="{lang="ftp_username"}" {{if isset( $value['un'] )}}value="{$value['un']}"{{endif}}>
|
|
</li>
|
|
<li class='ipsClearfix'>
|
|
<span class="ipsFlag fa fa-lock"></span>
|
|
<input type='text' name="{$name}[pw]" data-role="passwordInput" placeholder="{lang="password"}" {{if isset( $value['pw'] )}}value="{$value['pw']}"{{endif}}>
|
|
</li>
|
|
<li class='ipsClearfix'>
|
|
<span class="ipsFlag fa fa-folder-o"></span>
|
|
<input type='text' name="{$name}[path]" data-role="pathInput" placeholder="/path/" {{if isset( $value['path'] )}}value="{$value['path']}"{{endif}}>
|
|
</li>
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="ftpDisplay" template_data="$value" template_location="global" template_app="core"><![CDATA[<div class="ipsClearFix">
|
|
<table class='ipsTable'>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_protocol"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['protocol']}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_hostname"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['server']}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_port"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['port']}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_path"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['path']}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_username"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['un']}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="ftp_display_password"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$value['pw']}
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="header" template_data="$lang, $id=NULL" template_location="admin" template_app="core"><![CDATA[<li {{if $id !== NULL}} id="{$id}"{{endif}}>
|
|
<h2 class='ipsFieldRow_section'>{lang="$lang"}</h2>
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="header" template_data="$lang, $id=NULL" template_location="front" template_app="core"><![CDATA[<li {{if $id !== NULL}} id="{$id}"{{endif}}>
|
|
<h2 class='ipsFieldRow_section'>{lang="$lang"}</h2>
|
|
</li>
|
|
<br>]]></template>
|
|
<template template_group="forms" template_name="item" template_data="$name, $value, $maxItems, $minAjaxLength, $datasource, $template" template_location="global" template_app="core"><![CDATA[<input type="hidden" name="{$name}_values" value="{expression="implode( ',', array_keys($value) )"}">
|
|
<input
|
|
type="text"
|
|
name="{$name}"
|
|
value=""
|
|
id="elInput_{$name}"
|
|
data-ipsContentItem
|
|
{{if $maxItems}}data-ipsContentItem-maxItems="{$maxItems}"{{endif}}
|
|
data-ipsContentItem-dataSource="{$datasource}"
|
|
data-ipsContentItem-minAjaxLength="{$minAjaxLength}"
|
|
>
|
|
<ul data-contentItem-results="{$name}" class="ipsList_reset ipsContentItemSelector">
|
|
{{if is_array($value)}}
|
|
{{foreach $value as $item}}
|
|
{{$html = call_user_func( $template, $item );}}
|
|
<li data-id='{$item->_id}'>
|
|
<span class='cContentItem_delete' data-action='delete'>×</span>
|
|
{$html|raw}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
]]></template>
|
|
<template template_group="forms" template_name="itemResult" template_data="$item" template_location="global" template_app="core"><![CDATA[{{$idField = $item::$databaseColumnId;}}
|
|
<div data-itemid="{$item->$idField}" data-role='contentItemRow'>
|
|
<strong>{$item->mapped('title')}</strong>
|
|
{{if $item->container()}}
|
|
<em>{lang="item_selector_added_to_container" sprintf="$item->container()->_title"}</em>
|
|
{{endif}}
|
|
{{if isset( $item::$databaseColumnMap['date'] )}}
|
|
<span class='ipsType_light'>{lang="item_selector_added_on" htmlsprintf="\IPS\Datetime::ts($item->mapped('date'))->html()"}</span>
|
|
{{endif}}
|
|
</div>
|
|
|
|
]]></template>
|
|
<template template_group="forms" template_name="keyValue" template_data="$key, $value" template_location="global" template_app="core"><![CDATA[<div class="ipsField_stackItem_keyValue">{lang="form_key_value_key"} <span data-ipsStack-keyvalue-name="key">{$key|raw}</span> {lang="form_key_value_value"} <span data-ipsStack-keyvalue-name="key">{$value|raw}</span></div>]]></template>
|
|
<template template_group="forms" template_name="matrix" template_data="$id, $headers, $rows, $action, $hiddenValues, $actionButtons, $langPrefix, $widths=array(), $manageable=TRUE, $checkAlls=array(), $checkAllRows=FALSE, $classes=array(), $showTooltips=FALSE" template_location="global" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm" action="{$action}" method="post" data-ipsMatrix data-ipsMatrix-manageable='{{if $manageable}}true{{else}}false{{endif}}'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{foreach $rows as $rowId => $row}}
|
|
<input type='hidden' name='{$id}_matrixRows[{$rowId}]' data-matrixrowid='{$rowId}' value='1'>
|
|
{{endforeach}}
|
|
{{if $manageable}}
|
|
<div class='ipsClearfix'>
|
|
<div class="ipsJS_show">
|
|
{template="buttons" group="global" app="core" params="array( 'add' => array( 'link' => \IPS\Http\Url::internal( '#' ), 'icon' => 'plus', 'title' => 'add_button', 'class' => 'matrixAdd', 'data' => array( 'matrixID' => $id ) ) )"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<table class='ipsTable ipsMatrix ipsClear ipsTable_responsive {{if count( $classes )}}{expression="implode( ' ', $classes )"}{{endif}}' role='grid' data-matrixID='{$id}'>
|
|
{template="matrixRows" group="forms" location="global" app="core" params="$headers, $rows, $langPrefix, $manageable, $widths, $checkAlls, $checkAllRows, $showTooltips"}
|
|
</table>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{{foreach $actionButtons as $button}}{$button|raw} {{endforeach}}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="matrixNested" template_data="$id, $headers, $rows, $action, $hiddenValues, $actionButtons, $langPrefix, $widths=array(), $manageable=TRUE, $checkAlls=array(), $checkAllRows=FALSE, $classes=array(), $showTooltips=FALSE" template_location="global" template_app="core"><![CDATA[<div data-ipsMatrix data-ipsMatrix-manageable='{{if $manageable}}true{{else}}false{{endif}}'>
|
|
{{foreach $rows as $rowId => $row}}
|
|
<input type='hidden' name='{$id}_matrixRows[{$rowId}]' data-matrixrowid='{$rowId}' value='1'>
|
|
{{endforeach}}
|
|
{{if $manageable}}
|
|
<div class='ipsClearfix'>
|
|
<div class="ipsJS_show">
|
|
{template="buttons" group="global" app="core" location="admin" params="array( 'add' => array( 'link' => \IPS\Http\Url::internal( '#' ), 'icon' => 'plus', 'title' => 'add_button', 'class' => 'matrixAdd', 'data' => array( 'matrixID' => $id ) ) )"}
|
|
</div>
|
|
<noscript>
|
|
{lang="delete"}
|
|
</noscript>
|
|
</div>
|
|
{{endif}}
|
|
<table class='ipsTable ipsMatrix ipsClear ipsTable_responsive {{if count( $classes )}}{expression="implode( ' ', $classes )"}{{endif}}' role='grid' data-matrixID='{$id}'>
|
|
{template="matrixRows" group="forms" app="core" location="global" params="$headers, $rows, $langPrefix, $manageable, $widths, $checkAlls, $checkAllRows, $showTooltips"}
|
|
</table>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="matrixRows" template_data="$headers, $rows, $langPrefix, $manageable=TRUE, $widths=array(), $checkAlls=array(), $checkAllRows=FALSE, $showTooltips=FALSE" template_location="global" template_app="core"><![CDATA[<thead>
|
|
<tr>
|
|
{{foreach $headers as $header}}
|
|
<th class="ipsMatrixHeader ipsType_center" style="width: {$widths[ $header ]}%">
|
|
{lang="{$langPrefix}{$header}"}
|
|
{{if array_key_exists( $header, $checkAlls )}}
|
|
<br>
|
|
<input type="checkbox" role='checkbox' data-action="checkAll" name="__all[{$header}]" data-checkallheader="{$header}" {{if $checkAlls[ $header ]}}checked aria-checked='true'{{endif}}>
|
|
{{endif}}
|
|
</th>
|
|
{{endforeach}}
|
|
{{if $manageable}}
|
|
<th class='ipsTable_controls'>
|
|
<noscript>{lang="delete"}</noscript>
|
|
</th>
|
|
{{endif}}
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr role='row' class='ipsMatrix_empty {{if count( $rows ) > 0}}ipsHide{{endif}}'>
|
|
<td colspan="{expression="count( $headers )"}" class='ipsPad ipsType_light'>
|
|
{lang="matrix_no_rows"}
|
|
</td>
|
|
</tr>
|
|
{{foreach $rows as $rowId => $row}}
|
|
{{if is_string( $row )}}
|
|
<tr>
|
|
<th class="ipsMatrix_subHeader" colspan="{expression="count( $headers )"}">{$row|raw}</th>
|
|
</tr>
|
|
{{else}}
|
|
<tr data-matrixrowid="{$rowId}" role='row' {{if \IPS\Request::i()->type && \IPS\Request::i()->type == $rowId}}class='ipsMatrix_highlighted'{{endif}}>
|
|
{{foreach $headers as $header}}
|
|
{{if is_object( $row[ $header ] )}}
|
|
<td role='gridcell' {{if $showTooltips}}data-ipsTooltip title="{lang="{$langPrefix}{$header}"}"{{endif}} data-col='{$header}' data-title="{lang="{$langPrefix}{$header}"}" class="ipsType_center{{if $row[$header]->error}} ipsMatrix_error{{endif}}">
|
|
{$row[ $header ]->html()|raw}
|
|
{{if $row[$header]->error}}
|
|
<p class="ipsType_warning">{$row[$header]->error}</p>
|
|
{{endif}}
|
|
</td>
|
|
{{elseif is_string( $row[ $header ] )}}
|
|
<td role='gridcell' class="ipsMatrix_rowTitle">
|
|
<div {{if isset( $row['_level'] )}}style="margin-left: {expression="$row['_level']*15"}px"{{endif}}>
|
|
<strong>{{if $langPrefix === FALSE}}{$row[ $header ]|raw}{{else}}{lang="$row[ $header ]"}{{endif}}</strong>
|
|
{{if $checkAllRows}}
|
|
<br>
|
|
<small class="ipsJS_show">
|
|
<a href='#' data-action="checkRow" class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-plus'></i></a> <a href='#' data-action="unCheckRow" class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-minus'></i></a>
|
|
</small>
|
|
{{endif}}
|
|
</div>
|
|
</td>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $manageable}}
|
|
<td role='gridcell' class="ipsTable_controls">
|
|
{{if mb_substr( $rowId, 0, 5 ) !== '_new_'}}
|
|
<span class="ipsJS_show">
|
|
{template="controlStrip" app="core" group="global" params="array( 'add' => array( 'icon' => 'times-circle', 'title' => 'delete', 'class' => 'matrixDelete' ) )"}
|
|
</span>
|
|
<noscript>
|
|
{template="checkbox" app="core" group="forms" location="global" params="$rowId . '_delete'"}
|
|
</noscript>
|
|
{{endif}}
|
|
</td>
|
|
{{endif}}
|
|
</tr>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</tbody>]]></template>
|
|
<template template_group="forms" template_name="message" template_data="$lang, $id=NULL, $css='', $parse=FALSE" template_location="global" template_app="core"><![CDATA[<li{{if $id !== NULL}} id="{$id}"{{endif}}>
|
|
<div class="ipsPad">
|
|
<div class="{$css}">
|
|
{{if $parse}}
|
|
{lang="$lang"}
|
|
{{else}}
|
|
{$lang|raw}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="modQueueMessage" template_data="$warnings=array(),$ends=NULL" template_location="front" template_app="core"><![CDATA[<div class="ipsMessage ipsMessage_warning">
|
|
<p class='ipsType_reset'>{lang="mod_queue_message"}</p>
|
|
{{if count( $warnings) AND ( !is_null( $ends ) AND $ends > 0 ) }}
|
|
{{if count( $warnings )}}
|
|
{lang="this_will_be_moderated"}
|
|
{{endif}}
|
|
{{if !is_null( $ends ) AND $ends > 0}}
|
|
{lang="restriction_ends" sprintf="\IPS\DateTime::ts( $ends )->relative()"}
|
|
{{endif}}
|
|
{{foreach $warnings as $idx => $warning}}
|
|
{{if $idx === 0}}
|
|
<br><br>
|
|
<a href="{$warning->url()}" class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsDialog data-ipsDialog-size='narrow'>{lang="view_warning_details"}</a>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="node" template_data="$name, $value, $multiple, $url, $title, $roots, $zeroVal, $noJs, $permCheck, $subnodes, $togglePerm=NULL, $toggleIds=array(), $disabledCallback=NULL, $zeroValTogglesOn=array(), $zeroValTogglesOff=array(), $autoPopulate=FALSE, $children=NULL, $nodeClass=NULL, $where=NULL, $disabledArray=array(), $noParentNodesTitle=NULL, $noParentNodes=array()" template_location="global" template_app="core"><![CDATA[<div class='ipsSelectTree ipsJS_show' data-name='{$name}' data-ipsSelectTree data-ipsSelectTree-url="{$url}" {{if $multiple}}data-ipsSelectTree-multiple{{endif}} data-ipsSelectTree-selected='{$value|raw}'>
|
|
<input type="hidden" name="{$name}" value="" data-role="nodeValue">
|
|
<div class='ipsSelectTree_value ipsSelectTree_placeholder'></div>
|
|
<span class='ipsSelectTree_expand'><i class='fa fa-chevron-down'></i></span>
|
|
<div class='ipsSelectTree_nodes ipsHide'>
|
|
<div data-role='nodeList' class='ipsScrollbar'>
|
|
{template="nodeCascade" app="core" group="forms" location="global" params="$roots, FALSE, $permCheck, $subnodes, $togglePerm, $toggleIds, $disabledCallback, $autoPopulate, $children, $nodeClass, $where, $disabledArray, $noParentNodesTitle, $noParentNodes"}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if $zeroVal !== NULL}}
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="{$name}-zeroVal" id="{$name}-zeroVal" data-role="zeroVal" {{if $value === 0}}checked{{endif}} {{if !empty($zeroValTogglesOn) OR !empty($zeroValTogglesOff)}}data-control="toggle"{{endif}} {{if !empty($zeroValTogglesOn)}} data-togglesOn="{expression="implode( ',', $zeroValTogglesOn )"}" aria-controls="{expression="implode( ',', $zeroValTogglesOn )"}"{{endif}} {{if !empty($zeroValTogglesOff)}} data-togglesOff="{expression="implode( ',', $zeroValTogglesOff )"}" aria-controls="{expression="implode( ',', $zeroValTogglesOff )"}"{{endif}} >
|
|
<span></span>
|
|
</span>
|
|
<label for="{$name}-zeroVal" class='ipsField_unlimited'>{lang="$zeroVal"}</label>
|
|
{{endif}}
|
|
<noscript>
|
|
{{if $noJs}}
|
|
{$noJs|raw}
|
|
{{else}}
|
|
<meta http-equiv="refresh" content="0; url={$url->setQueryString( '_noJs', '1' )}">
|
|
{{endif}}
|
|
</noscript>]]></template>
|
|
<template template_group="forms" template_name="nodeAutocomplete" template_data="$v" template_location="global" template_app="core"><![CDATA[<ol class="ipsNodeSelect_breadcrumb">
|
|
{{foreach $v->parents() as $parent}}
|
|
<li><span class="ipsType_light">{$parent->_title} <i class="fa fa-angle-right"></i></span></li>
|
|
{{endforeach}}
|
|
<li>{$v->_title}</li>
|
|
</ol>]]></template>
|
|
<template template_group="forms" template_name="nodeCascade" template_data="$nodes, $results=FALSE, $permCheck=NULL, $subnodes=TRUE, $togglePerm=NULL, $toggleIds=array(), $disabledCallback=NULL, $autoPopulate=FALSE, $children=NULL, $nodeClass=NULL, $where=NULL, $disabledArray=array(), $noParentNodesTitle=NULL, $noParentNodes=array()" template_location="global" template_app="core"><![CDATA[{{if empty( $nodes )}}
|
|
<p class='ipsPad_half ipsType_reset ipsType_light'>{lang="no_results"}</p>
|
|
{{else}}
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $nodes as $node}}
|
|
<li>
|
|
{{if ( $permCheck === NULL or $node->can( $permCheck ) ) and ( $disabledCallback === NULL or call_user_func( $disabledCallback, $node ) ) and !in_array( $node->_id, $disabledArray )}}
|
|
<div data-action="nodeSelect" class='ipsSelectTree_item {{if $node->hasChildren( NULL, NULL, $subnodes, $where )}}ipsSelectTree_withChildren{{endif}} {{if $autoPopulate AND isset( $children[ $node->_id ] )}}ipsSelectTree_itemOpen{{endif}}' data-id="{$node->_id}{{if $nodeClass and !( $node instanceof $nodeClass )}}.s{{endif}}" data-breadcrumb='{expression="json_encode( array_values( array_map( function( $val ){ return isset( $val::$titleLangPrefix ) ? \IPS\Member::loggedIn()->language()->addToStack( $val::$titleLangPrefix . $val->_id, FALSE, array( 'json' => TRUE, 'escape' => TRUE ) ) : $val->_title; }, iterator_to_array( $node->parents() ) ) ) )"}' {{if $togglePerm AND $node->can( $togglePerm ) AND count( $toggleIds )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggleIds )"}"{{endif}} {{if $autoPopulate AND isset( $children[ $node->_id ] )}}data-childrenloaded="true"{{endif}}>
|
|
{{if $node->hasChildren( NULL, NULL, FALSE, $where )}}
|
|
<a href='#' data-action="getChildren" class='ipsSelectTree_toggle'></a>
|
|
{{endif}}
|
|
<span data-role="nodeTitle">{$node->_title}</span>
|
|
</div>
|
|
{{if $autoPopulate AND isset( $children[ $node->_id ] ) and get_class( $node ) == ltrim( $nodeClass, '\\' )}}
|
|
<div data-role="childWrapper">
|
|
{template="nodeCascade" app="core" group="forms" location="global" params="$children[ $node->_id ], FALSE, $permCheck, $subnodes, $togglePerm, $toggleIds, $disabledCallback, FALSE, $children, $nodeClass, $where, $disabledArray"}
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $disabledCallback === NULL or call_user_func( $disabledCallback, $node ) !== NULL}}
|
|
<div class='ipsSelectTree_item ipsSelectTree_itemDisabled {{if $node->hasChildren( NULL, NULL, $subnodes, $where )}}ipsSelectTree_withChildren{{endif}} {{if $autoPopulate AND isset( $children[ $node->_id ] )}}ipsSelectTree_itemOpen{{endif}}' data-id="{$node->_id}" data-breadcrumb='{expression="json_encode( array_values( array_map( function( $val ){ return isset( $val::$titleLangPrefix ) ? \IPS\Member::loggedIn()->language()->addToStack( $val::$titleLangPrefix . $val->_id, FALSE, array( 'json' => TRUE, 'escape' => TRUE ) ) : $val->_title; }, iterator_to_array( $node->parents() ) ) ) )"}' {{if $autoPopulate AND isset( $children[ $node->_id ] )}}data-childrenloaded="true"{{endif}}>
|
|
{{if $node->hasChildren( NULL, NULL, $subnodes, $where )}}
|
|
<a href='#' data-action="getChildren" class='ipsSelectTree_toggle'></a>
|
|
{{endif}}
|
|
<span data-role="nodeTitle">{$node->_title}</span>
|
|
</div>
|
|
{{if $autoPopulate AND isset( $children[ $node->_id ] )}}
|
|
<div data-role="childWrapper">
|
|
{template="nodeCascade" app="core" group="forms" location="global" params="$children[ $node->_id ], FALSE, $permCheck, $subnodes, $togglePerm, $toggleIds, $disabledCallback, FALSE, $children, $nodeClass, $where, $disabledArray"}
|
|
</div>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
{{if $noParentNodesTitle and count( $noParentNodes )}}
|
|
<li>
|
|
<div class='ipsSelectTree_item ipsSelectTree_itemDisabled ipsSelectTree_withChildren {{if $autoPopulate}}ipsSelectTree_itemOpen{{endif}}' data-id="0" data-breadcrumb='{expression="json_encode( array() )"}' {{if $autoPopulate}}data-childrenloaded="true"{{endif}}>
|
|
<a href='#' data-action="getChildren" class='ipsSelectTree_toggle'></a>
|
|
<span data-role="nodeTitle">{lang="$noParentNodesTitle"}</span>
|
|
</div>
|
|
{{if $autoPopulate}}
|
|
<div data-role="childWrapper">
|
|
{template="nodeCascade" app="core" group="forms" location="global" params="$noParentNodes, FALSE, $permCheck, $subnodes, $togglePerm, $toggleIds, $disabledCallback, $autoPopulate, $children, $nodeClass, $where, $disabledArray"}
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="number" template_data="$name, $value, $required, $unlimited=NULL, $range=FALSE, $min=NULL, $max=NULL, $step=NULL, $decimals=0, $unlimitedLang='unlimited', $disabled=FALSE, $suffix=NULL, $toggles=array(), $toggleOn=TRUE, $valueToggles=array(), $id=NULL" template_location="global" template_app="core"><![CDATA[{{if $range && $min !== NULL}}
|
|
<strong class='ipsType_small' data-role='rangeBoundary'>{$min}</strong>
|
|
{{endif}}
|
|
<input
|
|
type="{{if $range}}range{{else}}number{{endif}}"
|
|
name="{$name}"
|
|
{{if $id !== NULL}}
|
|
id="elNumber_{$id}"
|
|
{{endif}}
|
|
size="5"
|
|
{{if $required === TRUE}}aria-required='true'{{endif}}
|
|
{{if $unlimited !== NULL and $value === $unlimited}}
|
|
value=""
|
|
data-jsdisable="true"
|
|
{{else}}
|
|
value="{expression="number_format( $value, $decimals === true ? mb_strlen( mb_substr( $value, mb_strpos( $value, '.' ) + 1 ) ) : $decimals, '.', '' )"}"
|
|
{{endif}}
|
|
class="ipsField_short"
|
|
{{if $min !== NULL}}
|
|
min="{$min}"
|
|
{{endif}}
|
|
{{if $max !== NULL}}
|
|
max="{$max}"
|
|
{{endif}}
|
|
{{if $step !== NULL}}
|
|
step="{$step}"
|
|
{{else}}
|
|
step="any"
|
|
{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if count($valueToggles)}}data-control="toggle" data-toggles="{expression="implode( ',', $valueToggles )"}"{{endif}}
|
|
>
|
|
{{if $range && $max !== NULL}}
|
|
<strong class='ipsType_small' data-role='rangeBoundary'><span id='{$name}_rangeValue' data-role='rangeValue'>{$value}</span>/{$max}</strong>
|
|
{{endif}}
|
|
{{if is_string( $suffix )}}
|
|
{$suffix|raw}
|
|
{{elseif isset( $suffix['preUnlimited'] )}}
|
|
{$suffix['preUnlimited']|raw}
|
|
{{endif}}
|
|
{{if $unlimited !== NULL}}
|
|
|
|
<div class="ipsFieldRow_inlineCheckbox">
|
|
{lang="or"}
|
|
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited{{if count($toggles)}} toggle{{endif}}" name="{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}" id='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}-unlimitedCheck' value="{$unlimited}" {{if $unlimited === $value}}checked aria-checked='true'{{endif}} {{if $disabled}}disabled aria-disabled='true'{{endif}} {{if count($toggles)}}{{if $toggleOn === FALSE}}data-togglesOff{{else}}data-togglesOn{{endif}}="{expression="implode( ',', $toggles )"}"{{endif}} aria-labelledby='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}_label'>
|
|
<span></span>
|
|
</span> <label for='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}-unlimitedCheck' id='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}_label' class='ipsField_unlimited'>{lang="$unlimitedLang"}</label>
|
|
</div>
|
|
{{endif}}
|
|
{{if is_array( $suffix ) and isset( $suffix['postUnlimited'] )}}
|
|
{$suffix['postUnlimited']|raw}
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="numberRange" template_data="$start, $end" template_location="global" template_app="core">{lang="between"} {$start|raw} {lang="and"} {$end|raw}</template>
|
|
<template template_group="forms" template_name="poll" template_data="$name, $value, $pollData, $allowPollOnly" template_location="global" template_app="core"><![CDATA[<div data-controller='core.front.core.pollEditor' data-pollName='{$name}' data-showCounts='{{if member.modPermission('can_edit_poll_votes')}}true{{else}}false{{endif}}' data-maxQuestions="{expression="\IPS\Settings::i()->max_poll_questions"}" data-maxChoices="{expression="\IPS\Settings::i()->max_poll_choices"}" class='cPoll'>
|
|
<noscript>
|
|
<hr class='ipsHr'>
|
|
<h2 class='ipsType_sectionHead'>{lang="poll"}</h2>
|
|
<p class='ipsType_reset ipsType_light'>{lang="poll_no_js"}</p>
|
|
<br>
|
|
</noscript>
|
|
<div class='ipsForm_vertical ipsForm_noLabels'>
|
|
<ul class='ipsList_reset ipsAreaBackground_light ipsBox ipsBox_transparent ipsPad'>
|
|
<li class='ipsFieldRow'>
|
|
<input type='text' class='ipsField_primary ipsField_fullWidth' placeholder='{lang="poll_title"}' name="{$name}[title]" maxlength="255" {{if $value}}value="{$value->poll_question}"{{endif}}>
|
|
</li>
|
|
{{if settings.poll_allow_public or (settings.ipb_poll_only and $allowPollOnly)}}
|
|
<li class='ipsFieldRow'>
|
|
<ul class='ipsFieldRow_content ipsList_reset'>
|
|
{{if settings.poll_allow_public}}
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="{$name}[public]" id='elPoll_{$name}_public' {{if $value and $value->poll_view_voters}}checked{{endif}}>
|
|
<span></span>
|
|
</span>
|
|
<label for='elPoll_{$name}_public'>{lang="make_votes_public"}</label>
|
|
</li>
|
|
{{endif}}
|
|
{{if settings.ipb_poll_only and $allowPollOnly}}
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="{$name}[poll_only]" id='elPoll_{$name}_pollOnly' {{if $value and $value->poll_only}}checked{{endif}}>
|
|
<span></span>
|
|
</span>
|
|
<label for='elPoll_{$name}_pollOnly'>{lang="poll_only_content"}</label>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<br>
|
|
|
|
<section data-role='pollContainer'>
|
|
|
|
</section>
|
|
|
|
<a href='#' data-action='addQuestion' class='ipsButton ipsButton_medium ipsButton_alternate ipsJS_show' title='{lang="add_poll_question_title"}'><i class='fa fa-plus-circle'></i> {lang="add_poll_question"}</a>
|
|
|
|
<noscript>
|
|
{{foreach range( 1, settings.max_poll_questions ) as $i}}
|
|
{lang="question_no" sprintf="$i"} <input name="{$name}[questions][{$i}][title]" {{if $value and isset( $value->choices[ $i ] )}}value="{$value->choices[ $i ]['question']}"{{endif}}> <span class='ipsCustomInput'>
|
|
<input type="checkbox" name="{$name}[questions][{$i}][multichoice]" {{if $value and isset( $value->choices[ $i ]['multi'] ) and $value->choices[ $i ]['multi']}}checked{{endif}}>
|
|
<span></span>
|
|
</span> {lang="multiple_choice"}
|
|
<br>
|
|
{{foreach range( 1, settings.max_poll_choices ) as $j}}
|
|
{$j}: <input name="{$name}[questions][{$i}][answers][{$j}][value]" {{if $value and isset( $value->choices[ $i ]['choice'][ $j ] )}}value="{$value->choices[ $i ]['choice'][ $j ]}"{{endif}}> {{if member.modPermission('can_edit_poll_votes')}}<input type="number" name="{$name}[questions][{$i}][answers][{$j}][count]" value="{{if $value and isset( $value->choices[ $i ]['votes'][ $j ] )}}{$value->choices[ $i ]['votes'][ $j ]}{{endif}}" min="0">{{endif}}
|
|
<br>
|
|
{{endforeach}}
|
|
<hr>
|
|
{{endforeach}}
|
|
</noscript>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="popupTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
{{if is_array($v)}}
|
|
{{foreach $v as $_k => $_v}}
|
|
<input type="hidden" name="{$k}[{$_k}]" value="{$_v}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{if count( $form->elements ) < 2}}
|
|
<div class="ipsPad">
|
|
{{if !empty( $sidebar )}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span8'>
|
|
{{endif}}
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if is_object( $input ) }}
|
|
{$input->rowHtml($form)|raw}
|
|
{{else}}
|
|
{$input|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
{{if !empty( $sidebar )}}
|
|
</div>
|
|
<div class='ipsGrid_span4'>
|
|
{expression="array_pop( $sidebar )" raw="true"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsTabs ipsClearfix ipsJS_show' id='tabs_{$id}' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_{$id}'>
|
|
<a href='#tabs_{$id}' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist'>
|
|
{{foreach $elements as $name => $content}}
|
|
<li>
|
|
<a href='#ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' id='{$id}_tab_{$name}' class="ipsTabs_item {{if $name == request.tab}}ipsTabs_activeItem{{endif}}" role="tab">
|
|
{{foreach $content as $element}}{{if !is_string( $element ) and $element->error}}<i class="fa fa-exclamation-circle"></i> {{break;}}{{endif}}{{endforeach}} {lang="$name"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div id='ipsTabs_content_{$id}' class=''>
|
|
{{foreach $elements as $name => $content}}
|
|
<div id='ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' class="ipsTabs_panel ipsPad" aria-labelledby="{$id}_tab_{$name}" aria-hidden="false">
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $content as $input}}
|
|
{{if is_object( $input ) }}
|
|
{$input->rowHtml($form)|raw}
|
|
{{else}}
|
|
{$input|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
{{endif}}
|
|
<ul class="ipsPad ipsToolList ipsToolList_horizontal ipsList_reset ipsClearfix ipsAreaBackground">
|
|
{{foreach $actionButtons as $button}}
|
|
<li>{$button|raw}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="radio" template_data="$name, $value, $required, $options, $disabled=FALSE, $toggles=array(), $descriptions=array(), $userSuppliedInput=''" template_location="admin" template_app="core"><![CDATA[<ul class="ipsField_fieldList" role="radiogroup">
|
|
{{foreach $options as $k => $v}}
|
|
<li>
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" role="radio" id='elField_{$name}' name="{$name}" value="{$k}" {{if (string) $value == (string) $k or ( isset( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}checked aria-checked='true'{{endif}} {{if $required === TRUE}}required aria-required='true'{{endif}} {{if $disabled}}disabled aria-disabled='true'{{endif}} {{if isset( $toggles[ $k ] ) and !empty( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}" aria-controls="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}} aria-labelledby='elField_{$name}_label'>
|
|
<span></span>
|
|
</span>
|
|
|
|
<div class='ipsField_fieldList_content'>
|
|
<label for='elField_{$name}' id='elField_{$name}_label'>{$v|raw}</label>
|
|
{{if isset( $descriptions[ $k ] )}}
|
|
<br>
|
|
<span class='ipsFieldRow_desc'>
|
|
{$descriptions[ $k ]|raw}
|
|
</span>
|
|
{{endif}}
|
|
{{if !empty( $userSuppliedInput )}}
|
|
<input type='text' name='{$userSuppliedInput}_{$name}' value="{{if !in_array( $value, array_keys( $options ) )}}{$value}{{endif}}" id='{$userSuppliedInput}_{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}'>
|
|
{{endif}}
|
|
</label>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="forms" template_name="radio" template_data="$name, $value, $required, $options, $disabled=FALSE, $toggles=array(), $descriptions=array(), $userSuppliedInput='', $unlimited=NULL, $unlimitedLang=NULL, $htmlId=NULL" template_location="global" template_app="core"><![CDATA[{{if $unlimited !== NULL}}
|
|
<ul class="ipsField_fieldList" role="radiogroup">
|
|
<li>
|
|
<input type="checkbox" name="{$name}" value="{$unlimited}" id='elRadio_{$name}_{unlimited}_{$htmlId}' data-control="toggle" data-togglesOff="elRadio_{$name}" {{if $value === $unlimited}}checked{{endif}}>
|
|
<div class='ipsField_fieldList_content'>
|
|
<label for='elRadio_{$name}_{unlimited}_{$htmlId}'>
|
|
{lang="$unlimitedLang"}
|
|
</label>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
<input type="hidden" name="radio_{$name}__empty" value='1'>
|
|
<ul class="ipsField_fieldList" role="radiogroup" id="elRadio_{$name}_{$htmlId}">
|
|
{{foreach $options as $k => $v}}
|
|
<li>
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" name="{$name}" value="{$k}" {{if (string) $value == (string) $k or ( isset( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}checked{{endif}} {{if $disabled === TRUE or ( is_array( $disabled ) and in_array( $k, $disabled ) )}}disabled{{endif}} {{if isset( $toggles[ $k ] ) and !empty( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}} id="elRadio_{$name}_{$k}_{$htmlId}">
|
|
<span></span>
|
|
</span>
|
|
<div class='ipsField_fieldList_content ipsType_break'>
|
|
<label for='elRadio_{$name}_{$k}_{$htmlId}' id='elField_{$name}_label'>{$v|raw}</label>
|
|
{{if !empty( $userSuppliedInput ) AND $userSuppliedInput == $k}}
|
|
<input type='text' name='{$userSuppliedInput}_{$name}' value="{{if !in_array( $value, array_keys( $options ) )}}{$value}{{endif}}" id='{$userSuppliedInput}_{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}_{$htmlId}'>
|
|
{{endif}}
|
|
{{if isset( $descriptions[ $k ] )}}
|
|
<br>
|
|
<span class='ipsFieldRow_desc'>
|
|
{$descriptions[ $k ]|raw}
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="forms" template_name="radioImages" template_data="$name, $value, $required, $options, $disabled=FALSE, $toggles=array(), $descriptions=array(), $htmlId=NULL" template_location="global" template_app="core"><![CDATA[
|
|
<div class="ipsGrid ipsGrid_collapsePhone ipsAttachment_fileList ipsContained">
|
|
{{foreach $options as $k => $v}}
|
|
<div class='ipsGrid_span3 ipsBox ipsAttach ipsImageAttach ipsPad_half'>
|
|
<div class=' ipsType_center' data-role='preview'>
|
|
<label for="elRadio_{$name}_{$k}_{$htmlId}" class='ipsCursor_pointer'><img src="{$v}" alt='' class='ipsImage'></label>
|
|
</div>
|
|
<div class="ipsType_center ipsPad_half">
|
|
<span class='ipsCustomInput'>
|
|
<input type="radio" name="{$name}" value="{$k}" {{if (string) $value == (string) $k or ( isset( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}checked{{endif}} {{if $disabled === TRUE or ( is_array( $disabled ) and in_array( $k, $disabled ) )}}disabled{{endif}} {{if isset( $toggles[ $k ] ) and !empty( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}} id="elRadio_{$name}_{$k}_{$htmlId}">
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{if isset( $descriptions[ $k ] )}}
|
|
<p class='ipsType_light ipsType_center'>{$descriptions[ $k ]|raw}</p>
|
|
{{endif}}
|
|
</div>
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="rating" template_data="$name, $value, $required, $max=5" template_location="global" template_app="core"><![CDATA[<input type='hidden' name='{$name}' value="0">
|
|
<div data-ipsRating data-ipsRating-changeRate='true' data-ipsRating-size='veryLarge'>
|
|
{{foreach range( 1, $max ) as $i}}
|
|
<input type='radio' name='{$name}' id='{$name}_{$i}' value='{$i}' {{if $i == $value}}checked{{endif}}> <label for='{$name}_{$i}'>{$i}</label>
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="ratingTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm data-controller="core.front.core.rating">
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{$input->html()|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<noscript><button type="submit">{lang="submit"}</button></noscript>
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="reviewTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class=''" template_location="front" template_app="core"><![CDATA[<div class='ipsPhotoPanel ipsPhotoPanel_medium ipsPhotoPanel_notPhone ipsClearfix' data-controller='core.front.core.reviewForm'>
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::loggedIn(), 'medium'"}
|
|
<div>
|
|
<form accept-charset='utf-8' class="ipsForm" action="{$action->setQueryString( '_review', 1 )}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{if !isset( \IPS\Request::i()->_review )}}
|
|
<div data-role='reviewIntro' class="">
|
|
<h3 class='ipsType_reset'>{lang="review_intro_1" sprintf="\IPS\Member::loggedIn()->name"} <span class='ipsType_unbold'>{lang="review_intro_2"}</span></h3>
|
|
<br>
|
|
<a href='#' class='ipsButton ipsButton_primary ipsButton_small ipsJS_show' data-action='writeReview'>{lang="write_a_review"}</a>
|
|
</div>
|
|
{{endif}}
|
|
<ul class='ipsForm ipsForm_vertical {{if !isset( \IPS\Request::i()->_review )}}ipsJS_hide{{endif}}' data-role='reviewForm'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{$input|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<li class='ipsFieldRow ipsClearfix'>
|
|
<div class='ipsFieldRow_content'>
|
|
<button type='submit' class='ipsButton ipsButton_primary'>{lang="add_review"}</button>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</form>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="reviewUnavailable" template_data="$lang, $warnings=array(), $ends=NULL" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_medium ipsPhotoPanel_notPhone ipsClearfix'>
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::loggedIn(), 'medium'"}
|
|
<div>
|
|
<strong class='ipsType_warning'><i class="fa fa-warning"></i> {lang="$lang"} {{if $ends !== NULL AND $ends > 0}}{lang="restriction_ends" sprintf="\IPS\DateTime::ts( $ends )->relative()"}{{endif}}</strong>
|
|
{{if count( $warnings) }}
|
|
{{foreach $warnings as $idx => $warning}}
|
|
{{if $idx === 0}}
|
|
<br><br>
|
|
<a href="{$warning->url()}" data-ipsDialog data-ipsDialog-size='narrow' class='ipsButton ipsButton_verySmall ipsButton_light'>{lang="view_warning_details"}</a>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<hr class='ipsHr'>]]></template>
|
|
<template template_group="forms" template_name="row" template_data="$langKey, $element, $desc, $warning, $required=FALSE, $error=NULL, $prefix=NULL, $suffix=NULL, $id=NULL, $object=NULL, $form=NULL" template_location="admin" template_app="core"><![CDATA[<li class='ipsFieldRow ipsPad_half {{if $object instanceof \IPS\Helpers\Form\YesNo}}ipsFieldRow_yesNo{{endif}} ipsClearfix {{if $object and isset( request.searchResult ) and ( request.searchResult === $object->name )}}ipsFieldRow_searchResult{{endif}}' {{if $id !== NULL}}id="{$id}"{{endif}}>
|
|
<div class='ipsFieldRow_title {{if $error}}ipsFieldRow_error{{endif}}'>
|
|
{$langKey|raw}
|
|
{{if $required}}<span class='ipsFieldRow_required'>{lang="required"}</span>{{endif}}
|
|
{{if \IPS\IN_DEV and $form and $object}}{template="searchKeywords" app="core" group="global" params="$form->action->setQueryString( array( 'do' => ( isset( $form->action->queryString['do'] ) and $form->action->queryString['do'] != 'form' ) ? $form->action->queryString['do'] : NULL, 'id' => NULL, 'searchResult' => $id ) )->acpQueryString(), $object->name"}{{endif}}
|
|
</div>
|
|
<div class='ipsFieldRow_content {{if $error}}ipsFieldRow_error{{endif}}'>
|
|
{{if $object and !( $object instanceof \IPS\Helpers\Form\Translatable ) and !( $object instanceof \IPS\Helpers\Form\Upload ) and $form->copyButton and ( !isset( $object->options['disableCopy'] ) or !$object->options['disableCopy'] )}}
|
|
<a href="#" data-baseLink="{$form->copyButton->setQueryString( array( 'key' => $object->name ) )}" data-controller="core.admin.core.nodeCopySetting" data-field="{$object->name}" class='ipsJS_show ipsButton ipsButton_verySmall ipsButton_light ipsButton_narrow ipsFaded ipsFaded_more ipsFaded_withHover ipsPos_right cCopyNode' title='{lang="copy_value"}' data-ipsTooltip tabindex="999"><i class="fa fa-cog"></i> <i class='fa fa-caret-right'></i></a>
|
|
{{endif}}
|
|
{$prefix|raw}
|
|
{$element|raw}
|
|
{$suffix|raw}
|
|
{$desc|raw}
|
|
{$warning|raw}
|
|
<br>
|
|
{{if $error}}
|
|
<span class='ipsType_warning'><i class='fa fa-exclamation-circle'></i> {lang="$error"}</span>
|
|
{{else:}}
|
|
<span class='ipsType_warning'></span>
|
|
{{endif}}
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="row" template_data="$label, $element, $desc, $warning, $required=FALSE, $error=NULL, $prefix=NULL, $suffix=NULL, $id=NULL, $object=NULL, $form=NULL" template_location="front" template_app="core"><![CDATA[<li class='ipsFieldRow{{if $object === NULL}} ipsFieldRow_textValue{{endif}}{{if $object instanceof \IPS\Helpers\Form\Checkbox and !( $object instanceof \IPS\Helpers\Form\YesNo )}} ipsFieldRow_checkbox{{endif}} ipsClearfix {{if $error}}ipsFieldRow_error{{endif}}' {{if $id}}id="{$id}"{{endif}}>
|
|
{{if $object instanceof \IPS\Helpers\Form\Checkbox and !( $object instanceof \IPS\Helpers\Form\YesNo )}}
|
|
{$prefix|raw}
|
|
{$element|raw}
|
|
{$suffix|raw}
|
|
<div class='ipsFieldRow_content'>
|
|
<label class='ipsFieldRow_label' for='check_{$id}'>{$label|raw} {{if $required}}<span class='ipsFieldRow_required'>{lang="required"}</span>{{endif}}</label>
|
|
{$desc|raw}
|
|
{$warning|raw}
|
|
{{if $error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$error"}</span>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
{{if $label}}
|
|
<label class='ipsFieldRow_label' {{if $object !== NULL}}for='{$object->name}'{{endif}}>
|
|
{$label|raw} {{if $required}}<span class='ipsFieldRow_required'>{lang="required"}</span>{{endif}}
|
|
</label>
|
|
{{endif}}
|
|
<div class='ipsFieldRow_content'>
|
|
{$prefix|raw}
|
|
{$element|raw}
|
|
{$suffix|raw}
|
|
{$desc|raw}
|
|
{$warning|raw}
|
|
{{if $error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$error"}</span>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="rowDesc" template_data="$label, $element, $required=FALSE, $error=NULL, $prefix=NULL, $suffix=NULL, $id=NULL, $object=NULL, $form=NULL" template_location="global" template_app="core"><![CDATA[{{if \IPS\Dispatcher::i()->controllerLocation == 'admin' AND !( $object instanceof \IPS\Helpers\Form\Address ) AND !( $object instanceof \IPS\Helpers\Form\Upload )}}<br>{{endif}}
|
|
{{if \IPS\Dispatcher::i()->controllerLocation == 'front' AND ( !( $object instanceof \IPS\Helpers\Form\Checkbox ) OR $object instanceof \IPS\Helpers\Form\YesNo )}}<br>{{endif}}
|
|
<span class='ipsFieldRow_desc'>
|
|
%s
|
|
</span>]]></template>
|
|
<template template_group="forms" template_name="rowWarning" template_data="$label, $element, $required=FALSE, $error=NULL, $prefix=NULL, $suffix=NULL, $id=NULL, $object=NULL, $form=NULL" template_location="global" template_app="core"><![CDATA[<div {{if $id !== NULL}}id="{$id}_warning"{{endif}}>
|
|
<br>{{if \IPS\Dispatcher::i()->controllerLocation == 'front'}}<br>{{endif}}
|
|
<p class='ipsMessage ipsMessage_warning'>%s</p>
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="select" template_data="$name, $value, $required, $options, $multiple=FALSE, $class='', $disabled=FALSE, $toggles=array(), $id=NULL, $unlimited=NULL, $unlimitedLang='all', $unlimitedToggles=array(), $toggleOn=TRUE, $userSuppliedInput='', $sort=FALSE, $parse=NULL" template_location="admin" template_app="core"><![CDATA[{{if $multiple}}
|
|
<input type="hidden" name="{$name}" value="__EMPTY">
|
|
{{endif}}
|
|
<select name="{$name}" class="{$class}" {{if $multiple}}multiple{{endif}} {{if $required === TRUE}}required aria-required='true'{{endif}} {{if $disabled === TRUE}}disabled aria-disabled='true'{{endif}} {{if $id !== NULL}}id="elSelect_{$id}"{{endif}} {{if $sort}}data-sort{{endif}}>
|
|
{{foreach $options as $k => $v}}
|
|
{{if is_array( $v )}}
|
|
<optgroup label="{{if $parse === 'raw'}}{$k}{{else}}{lang="$k"}{{endif}}">
|
|
{{foreach $v as $_k => $_v}}
|
|
<option value='{$_k}' {{if ( !is_array( $value ) AND $value == $_k ) or ( is_array( $value ) and in_array( $_k, $value ) )}}selected{{endif}} {{if isset( $toggles[ $_k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $_k ] )"}" aria-controls="{expression="implode( ',', $toggles[ $_k ] )"}"{{endif}} {{if is_array($disabled) and in_array( $_k, $disabled )}}disabled{{endif}}>{$_v|raw}</option>
|
|
{{endforeach}}
|
|
</optgroup>
|
|
{{else}}
|
|
<option value='{$k}' {{if ( !is_array( $value ) AND $value == $k ) or ( is_array( $value ) and in_array( $k, $value ) ) or ( !empty( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}selected{{endif}} {{if isset( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}} {{if is_array($disabled) and in_array( $k, $disabled )}}disabled{{endif}}>{$v|raw}</option>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</select>
|
|
{{if !empty( $userSuppliedInput )}}
|
|
<input type='text' name='{$userSuppliedInput}_{$name}' value="{{if !in_array( $value, array_keys( $options ) )}}{$value}{{endif}}" id='{$userSuppliedInput}_{$id}'>
|
|
{{endif}}
|
|
{{if $unlimited !== NULL}}
|
|
<br><br>
|
|
{lang="or"}
|
|
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited{{if count($unlimitedToggles)}} toggle{{endif}}" name="{expression="trim( $name, '[]' )"}_unlimited" id='{expression="trim( $id ?: $name, '[]' )"}_unlimited' value="{$unlimited}" {{if $unlimited === $value}}checked aria-checked='true'{{endif}} {{if $disabled}}disabled aria-disabled='true'{{endif}} {{if count( $unlimitedToggles )}}{{if $toggleOn === FALSE}}data-togglesOff{{else}}data-togglesOn{{endif}}="{expression="implode( ',', $unlimitedToggles )"}" aria-controls="{expression="implode( ',', $unlimitedToggles )"}"{{endif}} aria-labelledby='{expression="trim( $id ?: $name, '[]' )"}_unlimited_label'>
|
|
<span></span>
|
|
</span>
|
|
<label for='{expression="trim( $id ?: $name, '[]' )"}_unlimited' id='{expression="trim( $id ?: $name, '[]' )"}_unlimited_label' class='ipsField_unlimited'>{lang="$unlimitedLang"}</label>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="select" template_data="$name, $value, $required, $options, $multiple=FALSE, $class='', $disabled=FALSE, $toggles=array(), $id=NULL, $unlimited=NULL, $unlimitedLang='all', $unlimitedToggles=array(), $toggleOn=TRUE, $userSuppliedInput='', $sort=FALSE" template_location="front" template_app="core"><![CDATA[{{if $multiple}}
|
|
<input type="hidden" name="{$name}" value="__EMPTY">
|
|
{{endif}}
|
|
<select name="{$name}" class="{$class}" {{if $multiple}}multiple{{endif}} {{if $required === TRUE}}required aria-required='true'{{endif}} {{if $disabled === TRUE}}disabled aria-disabled='true'{{endif}} {{if $id !== NULL}}id="elSelect_{$id}"{{endif}} {{if $sort}}data-sort{{endif}}>
|
|
{{foreach $options as $k => $v}}
|
|
{{if is_array( $v )}}
|
|
<optgroup label="{lang="$k"}">
|
|
{{foreach $v as $_k => $_v}}
|
|
<option value='{$_k}' {{if ( ( $value === 0 and $k === 0 ) or ( $value !== 0 and $value === $k ) ) or ( is_array( $value ) and in_array( $_k, $value ) )}}selected{{endif}} {{if isset( $toggles[ $_k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $_k ] )"}" aria-controls="{expression="implode( ',', $toggles[ $_k ] )"}"{{endif}}>{$_v|raw}</option>
|
|
{{endforeach}}
|
|
</optgroup>
|
|
{{else}}
|
|
<option value='{$k}' {{if ( ( $value === 0 and $k === 0 ) or ( $value !== 0 and $value === $k ) ) or ( is_array( $value ) and in_array( $k, $value ) )}}selected{{endif}} {{if is_array( $disabled ) and in_array( $k, $disabled )}}disabled{{endif}} {{if isset( $toggles[ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $toggles[ $k ] )"}"{{endif}}>{$v|raw}</option>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</select>
|
|
{{if $unlimited !== NULL}}
|
|
<br><br>
|
|
{lang="or"}
|
|
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited{{if count($unlimitedToggles)}} toggle{{endif}}" name="{expression="trim( $name, '[]' )"}_unlimited" id='{expression="trim( $id ?: $name, '[]' )"}_unlimited' value="{$unlimited}" {{if $unlimited === $value}}checked aria-checked='true'{{endif}} {{if $disabled === TRUE}}disabled aria-disabled='true'{{endif}} {{if count( $unlimitedToggles )}}{{if $toggleOn === FALSE}}data-togglesOff{{else}}data-togglesOn{{endif}}="{expression="implode( ',', $unlimitedToggles )"}" aria-controls="{expression="implode( ',', $unlimitedToggles )"}"{{endif}} aria-labelledby='{expression="trim( $id ?: $name, '[]' )"}_unlimited_label'>
|
|
<span></span>
|
|
</span> <label for='{expression="trim( $id ?: $name, '[]' )"}_unlimited' id='{expression="trim( $id ?: $name, '[]' )"}_unlimited_label' class='ipsField_unlimited'>{lang="$unlimitedLang"}</label>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="forms" template_name="seperator" template_data=" " template_location="front" template_app="core"><![CDATA[<li>
|
|
<hr class='ipsHr'>
|
|
</li>]]></template>
|
|
<template template_group="forms" template_name="stack" template_data="$name, $fields" template_location="global" template_app="core"><![CDATA[<div class="ipsField_stack" data-ipsStack data-ipsStack-sortable data-ipsStack-fieldName="$name">
|
|
<ul class="ipsList_reset" data-role="stack">
|
|
{{foreach $fields as $field}}
|
|
<li class='ipsField_stackItem' data-role="stackItem">
|
|
<span class="ipsField_stackDrag ipsDrag ipsJS_show" data-action='stackDrag'>
|
|
<i class='fa fa-bars ipsDrag_dragHandle'></i>
|
|
</span>
|
|
<a href='#' class="ipsField_stackDelete ipsCursor_pointer ipsJS_show" data-action="stackDelete">
|
|
<i class='fa fa-times'></i>
|
|
</a>
|
|
<input type="submit" class="ipsField_stackDelete ipsJS_hide" name="form_remove_stack[{expression="md5($field)"}]" value="✗">
|
|
<div data-ipsStack-wrapper>{$field|raw}</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<a class="ipsField_stackAdd ipsButton ipsButton_light ipsButton_small ipsJS_show" href='#' data-action="stackAdd" role="button"><i class='fa fa-plus-circle'></i> {lang="stack_add"}</a>
|
|
<input type="submit" class="ipsJS_hide" name="form_add_stack" value="{lang="stack_add"}">
|
|
</div>]]></template>
|
|
<template template_group="forms" template_name="statusPopupTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class=''" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' method="post" action="{$action}" id='elStatusSubmit' {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<div class="ipsPad">
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Editor}}
|
|
{$input->html()|raw}
|
|
{{if $input->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$input->error"}</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</div>
|
|
<ul class="ipsPad ipsToolList ipsToolList_horizontal ipsList_reset ipsClearfix ipsAreaBackground">
|
|
{{foreach $actionButtons as $button}}
|
|
<li>{$button|raw}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</form>
|
|
]]></template>
|
|
<template template_group="forms" template_name="statusTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class=''" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' method="post" action="{$action}" id='elStatusSubmit' {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Editor}}
|
|
{$input->html( TRUE )|raw}
|
|
{{if $input->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$input->error"}</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<ul class='ipsToolList ipsToolList_horizontal ipsClear ipsClearfix' data-ipsEditor-toolList>
|
|
<li><button class='ipsButton ipsButton_primary ipsButton_fullWidth' data-action="submitComment">{lang="status_new"}</button></li>
|
|
</ul>
|
|
</form> ]]></template>
|
|
<template template_group="forms" template_name="statusWidgetForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class=''" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' method="post" action="{$action}" id='elStatusSubmit' {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Editor}}
|
|
{$input->html()|raw}
|
|
{{if $input->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$input->error"}</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<div class='ipsSpacer_top ipsSpacer_half'>
|
|
<button type='submit' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth'>{lang="status_new"}</button>
|
|
</div>
|
|
</form>
|
|
]]></template>
|
|
<template template_group="forms" template_name="tags" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[<input type='text' name="{$name}" value="{expression="implode( ',', $value )"}" data-ipsAutocomplete>
|
|
<noscript>
|
|
<br>
|
|
<span class="ipsFieldRow_desc">{lang="tags_no_js"}</span>
|
|
</noscript>]]></template>
|
|
<template template_group="forms" template_name="template" template_data="$id, $action, $tabs, $activeTab, $error, $errorTabs, $hiddenValues, $actionButtons, $uploadField, $sidebar, $tabClasses=array(), $formClass='', $attributes=array(), $tabArray=array(), $usingIcons=FALSE" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} data-ipsForm class="{$formClass}" {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
{{if is_array($v)}}
|
|
{{foreach $v as $_v}}
|
|
<input type="hidden" name="{$k}[]" value="{$_v}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
{{endif}}
|
|
{{if $error}}
|
|
<div class="ipsMessage ipsMessage_error">
|
|
{$error}
|
|
</div>
|
|
{{endif}}
|
|
{{if count( $tabs ) === 1}}
|
|
{{if !empty( $sidebar )}}
|
|
<div class='ipsColumns'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{endif}}
|
|
<ul class='ipsForm'>
|
|
{expression="array_pop( $tabs )" raw="true"}
|
|
</ul>
|
|
{{if !empty( $sidebar )}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide'>
|
|
{expression="array_pop( $sidebar )" raw="true"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if !empty( $errorTabs )}}
|
|
<p class="ipsMessage ipsMessage_error ipsJS_show">{lang="tab_error"}</p>
|
|
{{endif}}
|
|
<div class='ipsTabs ipsClearfix ipsJS_show acpFormTabBar{{if $usingIcons}} ipsTabs_withIcons{{endif}}' id='tabs_{$id}' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_{$id}'>
|
|
<a href='#tabs_{$id}' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist'>
|
|
{{foreach $tabs as $name => $content}}
|
|
<li>
|
|
<a href='#ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' id='{$id}_tab_{$name}' class="ipsTabs_item {{if $name == $activeTab}}ipsTabs_activeItem{{endif}} {{if in_array( $name, $errorTabs )}}ipsTabs_error{{endif}}" role="tab" aria-selected="{{if $activeTab == $name}}true{{else}}false{{endif}}">
|
|
{{if in_array( $name, $errorTabs )}}<i class="fa fa-exclamation-circle"></i> {{endif}}{{if isset($tabArray[$name]['icon'])}}<i class='fa fa-{$tabArray[$name]['icon']}'></i> {{endif}}{lang="$name"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div id='ipsTabs_content_{$id}' class='acpFormTabContent'>
|
|
{{foreach $tabs as $name => $contents}}
|
|
<div id='ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' class="ipsTabs_panel" aria-labelledby="{$id}_tab_{$name}" aria-hidden="false">
|
|
{{if isset( $sidebar[ $name ] )}}
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{endif}}
|
|
<ul class='ipsForm {$formClass} {{if isset( $tabClasses[ $name ] )}}{$tabClasses[ $name ]}{{endif}}'>
|
|
<li class='ipsTabs_dummyItem ipsPad ipsType_normal ipsJS_hide'>{lang="$name"}</li>
|
|
{$contents|raw}
|
|
</ul>
|
|
{{if isset( $sidebar[ $name ] )}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide'>
|
|
{$sidebar[ $name ]|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
{{endif}}
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{expression="implode( '', $actionButtons)" raw="true"}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="template" template_data="$id, $action, $tabs, $activeTab, $error, $errorTabs, $hiddenValues, $actionButtons, $uploadField, $sidebar, $tabClasses=array(), $formClass='', $attributes=array(), $tabArray=array(), $usingIcons=FALSE" template_location="front" template_app="core"><![CDATA[<form action="{$action}" method="post" accept-charset='utf-8' {{if $uploadField}}enctype="multipart/form-data"{{endif}} data-ipsForm class="ipsForm {$formClass}" {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
{{if is_array($v)}}
|
|
{{foreach $v as $_k => $_v}}
|
|
<input type="hidden" name="{$k}[{$_k}]" value="{$_v}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
{{if $error}}
|
|
<div class="ipsMessage ipsMessage_error">
|
|
{$error}
|
|
</div>
|
|
{{endif}}
|
|
{{if count( $tabs ) < 2}}
|
|
{{if !empty( $sidebar )}}
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{endif}}
|
|
<ul class='ipsForm'>
|
|
{expression="array_pop( $tabs )" raw="true"}
|
|
<li class='ipsFieldRow'>
|
|
<div class='ipsFieldRow_content'>
|
|
{expression="implode( '', $actionButtons)" raw="true"}
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
{{if !empty( $sidebar )}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide'>
|
|
{expression="array_pop( $sidebar )" raw="true"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if !empty( $errorTabs )}}
|
|
<p class="ipsMessage ipsMessage_error ipsJS_show">{lang="tab_error"}</p>
|
|
{{endif}}
|
|
<div class='ipsTabs ipsClearfix ipsJS_show{{if $usingIcons}} ipsTabs_withIcons{{endif}}' id='tabs_{$id}' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_{$id}'>
|
|
<a href='#tabs_{$id}' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist'>
|
|
{{foreach $tabs as $name => $content}}
|
|
<li>
|
|
<a href='#ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' id='{$id}_tab_{$name}' class="ipsTabs_item {{if $name == $activeTab}}ipsTabs_activeItem{{endif}} {{if in_array( $name, $errorTabs )}}ipsTabs_error{{endif}}" role="tab" aria-selected="{{if $activeTab == $name}}true{{else}}false{{endif}}">
|
|
{{if in_array( $name, $errorTabs )}}<i class="fa fa-exclamation-circle"></i> {{endif}}{{if isset($tabArray[$name]['icon'])}}<i class='fa fa-{$tabArray[$name]['icon']}'></i> {{endif}}{lang="$name"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div id='ipsTabs_content_{$id}' class=''>
|
|
{{foreach $tabs as $name => $contents}}
|
|
<div id='ipsTabs_tabs_{$id}_{$id}_tab_{$name}_panel' class="ipsTabs_panel ipsPad" aria-labelledby="{$id}_tab_{$name}" aria-hidden="false">
|
|
{{if isset( $sidebar[ $name ] )}}
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{endif}}
|
|
<ul class='ipsForm {$formClass} {{if isset( $tabClasses[ $name ] )}}{$tabClasses[ $name ]}{{endif}}'>
|
|
<li class='ipsJS_hide'>{lang="$name"}</li>
|
|
{$contents|raw}
|
|
</ul>
|
|
{{if isset( $sidebar[ $name ] )}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide'>
|
|
{$sidebar[ $name ]|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{expression="implode( '', $actionButtons)" raw="true"}
|
|
</div>
|
|
{{endif}}
|
|
</form>]]></template>
|
|
<template template_group="forms" template_name="text" template_data="$name, $type, $value, $required, $maxlength=NULL, $size=NULL, $disabled=FALSE, $autoComplete=NULL, $placeholder=NULL, $regex=NULL, $nullLang=NULL, $htmlId=NULL" template_location="global" template_app="core"><![CDATA[{{$valueAsArray = is_array( $value ) ? $value : explode( ',', $value );}}
|
|
{{if ( isset( $autoComplete['freeChoice'] ) && !$autoComplete['freeChoice'] ) || ( isset( $autoComplete['prefix'] ) and $autoComplete['prefix'] ) }}
|
|
<div {{if isset( $autoComplete['freeChoice'] ) && !$autoComplete['freeChoice']}}class="ipsJS_show"{{endif}} {{if isset( $autoComplete['prefix'] ) and $autoComplete['prefix']}}data-controller='core.global.core.prefixedAutocomplete'{{endif}}>
|
|
{{endif}}
|
|
<input
|
|
type="{$type}"
|
|
name="{$name}"
|
|
value="{{if is_array( $value )}}{expression="implode( ',', $value )"}{{else}}{$value}{{endif}}"
|
|
id="elInput_{{if ! empty($htmlId)}}{$htmlId}{{else}}{$name}{{endif}}"
|
|
{{if $required === TRUE}}aria-required='true'{{endif}}
|
|
{{if $maxlength !== NULL}}maxlength="{$maxlength}"{{endif}}
|
|
{{if $size !== NULL}}size="{$size}"{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if $autoComplete !== NULL}}
|
|
data-ipsAutocomplete
|
|
{{if isset( $autoComplete['freeChoice'] ) && !$autoComplete['freeChoice']}}data-ipsAutocomplete-freeChoice='false'{{endif}}
|
|
{{if isset( $autoComplete['forceLower'] ) && $autoComplete['forceLower']}}data-ipsAutocomplete-forceLower{{endif}}
|
|
{{if isset( $autoComplete['maxItems'] )}}data-ipsAutocomplete-maxItems='{$autoComplete['maxItems']}'{{endif}}
|
|
{{if !empty($autoComplete['unique'])}}
|
|
data-ipsAutocomplete-unique
|
|
{{endif}}
|
|
{{if isset($autoComplete['source']) AND is_array( $autoComplete['source'] )}}
|
|
list='{$name}_datalist'
|
|
{{elseif !empty($autoComplete['source'])}}
|
|
data-ipsAutocomplete-dataSource="{url="{$autoComplete['source']}"}"
|
|
data-ipsAutocomplete-queryParam='input'
|
|
{{endif}}
|
|
{{if !empty($autoComplete['resultItemTemplate'])}}
|
|
data-ipsAutocomplete-resultItemTemplate="{$autoComplete['resultItemTemplate']}"
|
|
{{endif}}
|
|
{{if isset( $autoComplete['minLength'] )}}data-ipsAutocomplete-minLength='{$autoComplete['minLength']}'{{endif}}
|
|
{{if isset( $autoComplete['maxLength'] )}}data-ipsAutocomplete-maxLength='{$autoComplete['maxLength']}'{{endif}}
|
|
{{if isset( $autoComplete['minAjaxLength'] )}}data-ipsAutocomplete-minAjaxLength='{$autoComplete['minAjaxLength']}'{{endif}}
|
|
{{if isset( $autoComplete['disallowedCharacters'] )}}data-ipsAutocomplete-disallowedCharacters='{expression="json_encode( $autoComplete['disallowedCharacters'] )"}'{{endif}}
|
|
{{endif}}
|
|
{{if $placeholder !== NULL}}placeholder='{$placeholder}'{{endif}}
|
|
{{if $regex !== NULL}}pattern="{$regex}"{{endif}}
|
|
>
|
|
|
|
{{if isset($autoComplete['source']) AND is_array( $autoComplete['source'] )}}
|
|
<datalist id="{$name}_datalist">
|
|
{{foreach $autoComplete['source'] as $v}}
|
|
<option value="$v">{$v}</option>
|
|
{{endforeach}}
|
|
</datalist>
|
|
{{endif}}
|
|
{{if $nullLang}}
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" data-control="unlimited" name="{$name}_null" id='{$name}_null' value="1" {{if $value === NULL}}checked aria-checked='true'{{endif}} {{if $disabled}}disabled aria-disabled='true'{{endif}} aria-labelledby='{$name}_null_label'>
|
|
<span></span>
|
|
</span> <label for='{$name}_null' id='{$name}_null_label' class='ipsField_unlimited'>{lang="$nullLang"}</label>
|
|
{{endif}}
|
|
{{if isset( $autoComplete['prefix'] ) and $autoComplete['prefix']}}
|
|
<div data-role='prefixRow' class='ipsHide' id='{{if ! empty($htmlId)}}{$htmlId}{{else}}{$name}{{endif}}_prefixWrap'>
|
|
<input type='checkbox' name='{$name}_freechoice_prefix' {{if isset($valueAsArray['prefix'])}}checked{{endif}} class='ipsJS_hide'> <button type='button' id='{{if ! empty($htmlId)}}{$htmlId}{{else}}{$name}{{endif}}_prefix' data-role="prefixButton" data-ipsMenu data-ipsMenu-selectable="radio" data-ipsMenu-appendTo="{{if ! empty($htmlId)}}#{$htmlId}{{else}}#{$name}{{endif}}_prefixWrap" class='ipsButton ipsButton_light ipsButton_verySmall'><span>{{if isset($valueAsArray['prefix'])}}{$valueAsArray['prefix']}{{else}}{lang="select_prefix"}{{endif}}</span> <i class='fa fa-caret-down'></i></button>
|
|
<input type='hidden' data-role='prefixValue' name='{$name}_prefix' value='{{if isset($valueAsArray['prefix'])}}{$valueAsArray['prefix']}{{endif}}'>
|
|
<ul id='{{if ! empty($htmlId)}}{$htmlId}{{else}}{$name}{{endif}}_prefix_menu' data-role="prefixMenu" class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide'>
|
|
<li data-ipsMenuValue='-' class='ipsMenu_item ipsMenu_itemChecked'>
|
|
<a href='#'>{lang="no_prefix"}</a>
|
|
</li>
|
|
<li class='ipsMenu_sep'>
|
|
<hr>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<noscript>
|
|
<input type="hidden" name="{$name}_first_as_prefix" value="0">
|
|
{{$valueKeys = is_array( $value ) ? array_keys( $value ) : array_keys( explode( ',', $value ) );}}
|
|
<input type="checkbox" name="{$name}_first_as_prefix" value="1" id="{$name}_first_as_prefix" {{if array_shift( $valueKeys ) === 'prefix'}}checked{{endif}}> <label for="{$name}_first_as_prefix">{lang="use_first_tag_as_prefix"}</label>
|
|
</noscript>
|
|
{{endif}}
|
|
{{if ( isset( $autoComplete['freeChoice'] ) && !$autoComplete['freeChoice'] ) || ( isset( $autoComplete['prefix'] ) and $autoComplete['prefix'] ) }}
|
|
</div>
|
|
{{endif}}
|
|
{{if isset( $autoComplete['desc'] )}}
|
|
<span class='ipsFieldRow_desc'>
|
|
{$autoComplete['desc']|raw}
|
|
</span>
|
|
{{endif}}
|
|
{{if isset( $autoComplete['freeChoice'] ) && !$autoComplete['freeChoice']}}
|
|
<noscript>
|
|
<select name="{$name}_noscript[]" multiple>
|
|
{{foreach $autoComplete['source'] as $v}}
|
|
<option value="$v" {{if in_array( $v, $valueAsArray )}}selected{{endif}}>{$v}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
{{if isset( $autoComplete['prefix'] ) and $autoComplete['prefix']}}
|
|
<br><br>
|
|
{lang="prefix_noscript"}
|
|
<select name="{$name}_noscript_prefix">
|
|
<option value=""></option>
|
|
{{foreach $autoComplete['source'] as $v}}
|
|
<option value="$v" {{if isset( $valueAsArray['prefix'] ) and $valueAsArray['prefix'] === $v}}selected{{endif}}>{$v}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
{{endif}}
|
|
</noscript>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="textarea" template_data="$name, $value='', $required, $maxlength=NULL, $disabled=FALSE, $class='', $placeholder='', $nullLang=NULL, $tags=array(), $rows=NULL" template_location="global" template_app="core"><![CDATA[{{if !empty( $tags )}}
|
|
<div class='ipsColumns ipsColumns_collapseTablet' data-controller='core.global.editor.customtags' data-tagFieldType='text' data-tagFieldID='elTextarea_{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}'>
|
|
<div class='ipsColumn_fluid ipsColumn'>
|
|
<div data-role="editor">
|
|
{{endif}}
|
|
<textarea
|
|
name="{$name}"
|
|
id='elTextarea_{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}'
|
|
value="{$value}"
|
|
class="ipsField_fullWidth {$class}"
|
|
{{if $rows !== NULL}}rows="{$rows}"{{endif}}
|
|
{{if $maxlength !== NULL}}maxlength="{$maxlength}"{{endif}}
|
|
{{if $required === TRUE}}aria-required='true'{{endif}}
|
|
{{if $disabled}}disabled aria-disabled='true'{{endif}}
|
|
{{if $placeholder}}placeholder="{$placeholder}"{{endif}}
|
|
>{$value}</textarea>
|
|
{{if !empty( $tags )}}
|
|
</div>
|
|
{{endif}}
|
|
{{if $nullLang}}
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited" name="{$name}_null" id="{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}_null" value="1" {{if $value === NULL}}checked aria-checked='true'{{endif}} {{if $disabled}}disabled{{endif}} aria-controls='{$name}' aria-labelledby='{$name}_null_label'>
|
|
<span></span>
|
|
</span> <label for='{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}_null' id='{expression="preg_replace('/[^a-zA-Z0-9\-_]/', '_', $name)"}_null_label' class='ipsField_unlimited'>{lang="$nullLang"}</label>
|
|
{{endif}}
|
|
{{if !empty( $tags )}}
|
|
</div>
|
|
<div class='ipsColumn_medium ipsColumn ipsAreaBackground_light ipsComposeArea_sidebar {{if !isset( \IPS\Request::i()->cookie['tagSidebar'] )}}ipsComposeArea_sidebarOpen{{else}}ipsComposeArea_sidebarClosed{{endif}}'>
|
|
<a href='#' class="ipsJS_show" data-action='tagsToggle' data-ipsTooltip data-ipsTooltip-label="{lang="toggle_sidebar"}">{lang="toggle_sidebar"}</a>
|
|
<h3 class='ipsAreaBackground ipsPad_half ipsType_reset' data-role='tagsHeader'>{lang="editor_tags"}</h3>
|
|
<ul class='ipsList_reset ipsScrollbar' data-role='tagsList'>
|
|
{{foreach $tags as $tagKey => $tagValue }}
|
|
<li class='ipsPad_half'>
|
|
<label class="ipsJS_show" data-tagKey="{$tagKey}">{$tagKey}</label>
|
|
<div class='ipsJS_hide ipsType_light'><strong>{$tagKey}</strong></div>
|
|
<div class='ipsType_light ipsType_small'>{$tagValue}</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="translatable" template_data="$name, $languages, $values, $editors, $placeholder, $textarea=FALSE, $required=FALSE" template_location="global" template_app="core"><![CDATA[{{if count( $languages ) === 1}}
|
|
{{foreach $languages as $lang}}
|
|
{{if !isset( $editors[ $lang->id ] ) }}
|
|
{{if $textarea}}
|
|
<textarea name="{$name}[{$lang->id}]">{{if isset($values[ $lang->id ])}}{$values[ $lang->id ]}{{endif}}</textarea>
|
|
{{else}}
|
|
<input type='text' name="{$name}[{$lang->id}]" value="{{if isset($values[ $lang->id ])}}{$values[ $lang->id ]}{{endif}}" {{if $placeholder !== NULL}}placeholder='{$placeholder}'{{endif}}>
|
|
{{endif}}
|
|
{{else}}
|
|
{$editors[ $lang->id ]->html()|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{else}}
|
|
{{if $textarea}}
|
|
{{foreach $languages as $lang}}
|
|
<span class="{$lang->_icon}"></span> {$lang->_title} {{if $required and $lang->default}}<span class="ipsFieldRow_required">required</span>{{endif}}<br>
|
|
<br>
|
|
<textarea name="{$name}[{$lang->id}]" aria-label='{$lang->title}' {{if !$required || !$lang->default}}class='ipsFieldRow_errorExclude'{{endif}}>{{if isset( $values[ $lang->id ])}}{$values[ $lang->id ]}{{endif}}</textarea><br>
|
|
<br>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<ul class='ipsField_translatable ipsList_reset'>
|
|
{{foreach $languages as $lang}}
|
|
<li class='ipsClearfix'>
|
|
{{if !isset( $editors[ $lang->id ] ) }}
|
|
<span class="{$lang->_icon}"></span>
|
|
<input type='text' name="{$name}[{$lang->id}]" aria-label='{$lang->title}' placeholder="{$lang->title}" {{if isset( $values[ $lang->id ])}}value="{$values[ $lang->id ]}"{{endif}} {{if !$required || !$lang->default}}class='ipsFieldRow_errorExclude'{{endif}}>
|
|
{{if $required and $lang->default}}
|
|
<span class="ipsFieldRow_required">required</span>
|
|
{{endif}}
|
|
{{else}}
|
|
<p class='ipsFlagEditor'>
|
|
<span class="{$lang->_icon}"></span> <span class='ipsFlagLabel'>{$lang->_title}</span>
|
|
{{if $required and $lang->default}}<span class="ipsFieldRow_required">required</span>{{endif}}
|
|
</p>
|
|
{$editors[ $lang->id ]->html()|raw}
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="upload" template_data="$name, $value, $minimize, $maxFileSize, $maxChunkSize, $totalMaxSize, $allowedFileTypes, $pluploadKey, $multiple=FALSE, $editor=FALSE, $forceNoscript=FALSE, $template='core.attachments.fileItem', $existing=array(), $default=NULL" template_location="global" template_app="core"><![CDATA[<input name="{$name}" type="hidden" value="{$pluploadKey}">
|
|
{{if $forceNoscript}}
|
|
<input name="{$name}_noscript[]" type="file" {{if $multiple}}multiple{{endif}}>
|
|
{{else}}
|
|
<noscript>
|
|
<input name="{$name}_noscript[]" type="file" {{if $multiple}}multiple{{endif}}>
|
|
<span class="ipsType_light ipsType_small">
|
|
{{if $allowedFileTypes !== NULL}}
|
|
<strong>{lang="form_upload_accepted"}</strong>
|
|
{expression="implode( ', ', $allowedFileTypes )"}
|
|
{{endif}}
|
|
{{if $multiple and $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_total_max"}</strong>
|
|
{$totalMaxSize}MB
|
|
{{endif}}
|
|
{{if !$multiple or !$totalMaxSize or $maxChunkSize < $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL or ( $multiple and $totalMaxSize )}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_max"}</strong>
|
|
{$maxChunkSize}MB
|
|
{{endif}}
|
|
</span>
|
|
</noscript>
|
|
{{if $value}}
|
|
{{foreach $value as $id => $file}}
|
|
<input type="hidden" name="{$name}_existing[{$id}]" value="{$file->tempId}">
|
|
{{endforeach}}
|
|
{{endif}}
|
|
<div id="{$name}_drop_{expression="md5( uniqid() )"}"
|
|
data-ipsUploader
|
|
{{if $maxFileSize}}data-ipsUploader-maxFileSize="{$maxFileSize}"{{endif}}
|
|
data-ipsUploader-maxChunkSize="{$maxChunkSize}"
|
|
{{if $allowedFileTypes}}data-ipsUploader-allowedFileTypes='{expression="json_encode( $allowedFileTypes )"}'{{endif}}
|
|
data-ipsUploader-name="{$name}"
|
|
data-ipsUploader-key="{$pluploadKey}"
|
|
{{if $multiple}}data-ipsUploader-multiple {{if $totalMaxSize}}data-ipsUploader-maxTotalSize="{$totalMaxSize}"{{endif}}{{endif}}
|
|
{{if $minimize}}data-ipsUploader-minimized{{endif}}
|
|
{{if $editor}}data-ipsUploader-insertable{{endif}}
|
|
data-ipsUploader-template='{$template}'
|
|
data-ipsUploader-existingFiles='{expression="json_encode( $existing )"}'
|
|
{{if isset( $default )}}data-ipsUploader-default='{$default}'{{endif}}
|
|
>
|
|
<div class="ipsAttachment_dropZone {{if $minimize}}ipsAttachment_dropZoneSmall{{endif}} ipsClearfix">
|
|
{{if $minimize}}
|
|
<a href="#" data-action='uploadFile' class="ipsButton ipsButton_small ipsButton_primary ipsPos_left" id="{$name}_browse_{expression="md5( uniqid() )"}">{{if $multiple}}{lang="form_upload_choose"}{{else}}{lang="form_upload_choose_one"}{{endif}}</a>
|
|
<div class='ipsAttachment_dropZoneSmall_info'>
|
|
<span class="ipsAttachment_supportDrag">{{if $multiple}}{lang="form_upload_dad_mini"}{{else}}{lang="form_upload_dad_mini_one"}{{endif}}<br></span>
|
|
<span class="ipsType_light ipsType_small">
|
|
{{if $allowedFileTypes !== NULL}}
|
|
<strong>{lang="form_upload_accepted"}</strong>
|
|
{expression="implode( ', ', $allowedFileTypes )"}
|
|
{{endif}}
|
|
{{if $multiple and $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_total_max"}</strong>
|
|
{$totalMaxSize}MB
|
|
{{endif}}
|
|
{{if $maxFileSize and ( !$multiple or !$totalMaxSize or $maxFileSize < $totalMaxSize )}}
|
|
{{if $allowedFileTypes !== NULL or ( $multiple and $totalMaxSize )}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_max"}</strong>
|
|
{expression="round($maxFileSize,2)"}MB
|
|
{{endif}}
|
|
</span>
|
|
</div>
|
|
{{else}}
|
|
<i class="fa fa-cloud-upload"></i>
|
|
<span class="ipsAttachment_supportDrag">{{if $multiple}}{lang="form_upload_dad"}{{else}}{lang="form_upload_dad_one"}{{endif}}<br></span>
|
|
<a href="#" data-action='uploadFile' class="ipsButton ipsButton_verySmall ipsButton_primary" id="{$name}_browse_{expression="md5( uniqid() )"}">{{if $multiple}}{lang="form_upload_choose"}{{else}}{lang="form_upload_choose_one"}{{endif}}</a>
|
|
<br>
|
|
<span class="ipsType_light ipsType_small">
|
|
{{if $allowedFileTypes !== NULL}}
|
|
<strong>{lang="form_upload_accepted"}</strong>
|
|
{expression="implode( ', ', $allowedFileTypes )"}
|
|
{{endif}}
|
|
{{if $multiple and $totalMaxSize}}
|
|
{{if $allowedFileTypes !== NULL}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_total_max"}</strong>
|
|
{$totalMaxSize}MB
|
|
{{endif}}
|
|
{{if $maxFileSize and ( !$multiple or !$totalMaxSize or $maxFileSize < $totalMaxSize )}}
|
|
{{if $allowedFileTypes !== NULL or ( $multiple and $totalMaxSize )}}
|
|
·
|
|
{{endif}}
|
|
<strong>{lang="form_upload_max"}</strong>
|
|
{expression="round($maxFileSize,2)"}MB
|
|
{{endif}}
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<div class="ipsAttachment_fileList ipsScrollbar">
|
|
<div data-role='fileList'></div>
|
|
<noscript>
|
|
{{if $value}}
|
|
{{foreach $value as $id => $file}}
|
|
{template="uploadFile" group="forms" location="global" app="core" params="$id, $file, $name, $editor, ( $template === 'core.attachments.imageItem' )"}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</noscript>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="uploadDisplay" template_data="$file" template_location="global" template_app="core"><![CDATA[{{if $file->isImage()}}
|
|
<img src="$file->url" class="ipsImage" data-ipsLightbox>
|
|
{{else}}
|
|
<a href="{$file->url}">{$file->originalFilename}</a>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="uploadFile" template_data="$id, $file, $name=NULL, $editor=FALSE, $showAsImages=FALSE, $link=NULL" template_location="global" template_app="core"><![CDATA[{{if $showAsImages}}
|
|
<div class='ipsGrid_span3 ipsAttach ipsImageAttach ipsPad_half ipsAreaBackground_light {{if $editor}}ipsAttach_done{{endif}}' data-role='file' data-fileid="{$id}" {{if $link}}data-filelink="{$link}"{{endif}} data-isImage="{$file->isImage()}" {{if $file->attachmentThumbnailUrl}}data-thumbnailurl="{$file->attachmentThumbnailUrl}"{{endif}} data-fullsizeurl="{$file->url}">
|
|
<ul class='ipsList_inline ipsImageAttach_controls'>
|
|
{{if $editor}}
|
|
<li><a href='#' data-action='selectFile' class='ipsAttach_selection' data-ipsTooltip title='{lang="form_upload_insert_one"}'><i class='fa fa-check'></i></a></li>
|
|
{{endif}}
|
|
{{if $name}}
|
|
<li class='ipsPos_right'>
|
|
<input type="hidden" name="{$name}_keep[{$id}]" value="1">
|
|
<a href='#' data-role='deleteFile' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="editor_media_remove"}'><i class='fa fa-trash-o'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if in_array( mb_strtolower( mb_substr( $file->filename, mb_strrpos( $file->filename, '.' ) + 1 ) ), \IPS\Image::$imageExtensions )}}
|
|
<div class='ipsImageAttach_thumb ipsType_center' data-role='preview' data-grid-ratio='65' data-action='selectFile' style='background-image: url( "{expression="str_replace( array( '(', ')' ), array( '\(', '\)' ), ( $file->attachmentThumbnailUrl ) ? $file->attachmentThumbnailUrl : $file->url )"}" );'>
|
|
<img src="{$file->url}" alt='' class='ipsImage'>
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsImageAttach_thumb ipsType_center' data-role='preview' data-grid-ratio='65' data-action='selectFile'>
|
|
<div class='ipsNoThumb'></div>
|
|
</div>
|
|
{{endif}}
|
|
<h2 class='ipsType_reset ipsAttach_title ipsType_medium ipsTruncate ipsTruncate_line ipsType_break' data-role='title'>{$file->originalFilename}</h2>
|
|
<p class='ipsType_light ipsType_small'><span data-role='status'>{filesize="$file->filesize()"}</span></p>
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsDataItem ipsAttach {{if $editor}}ipsAttach_done{{endif}}' {{if $file->attachmentThumbnailUrl}}data-thumbnailurl="{$file->attachmentThumbnailUrl}"{{endif}} data-role='file' data-fileid="{$id}" data-fullsizeurl="{$file->url}" {{if $link}}data-filelink="{$link}"{{endif}} data-isImage="{$file->isImage()}">
|
|
<div class='ipsDataItem_generic ipsDataItem_size3 ipsResponsive_hidePhone ipsResponsive_block ipsType_center' data-action='selectFile'>
|
|
{{if in_array( mb_strtolower( mb_substr( $file->filename, mb_strrpos( $file->filename, '.' ) + 1 ) ), \IPS\Image::$imageExtensions )}}
|
|
<img src="{{if $file->attachmentThumbnailUrl}}{$file->attachmentThumbnailUrl}{{else}}{$file->url}{{endif}}" alt='' class='ipsImage ipsThumb_small'>
|
|
{{else}}
|
|
<i class='fa fa-file ipsType_large'></i>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main' data-action='selectFile'>
|
|
<h2 class='ipsDataItem_title ipsType_reset ipsType_medium ipsAttach_title ipsTruncate ipsTruncate_line ipsType_break' data-role='title'>{$file->originalFilename}</h2>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{filesize="$file->filesize()"}
|
|
</p>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size9 ipsType_light' data-role='status'>
|
|
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size3 ipsType_right'>
|
|
<ul class='ipsList_inline'>
|
|
{{if $editor}}
|
|
<li><a href='#' data-action='selectFile' class='ipsAttach_selection' data-ipsTooltip title='{lang="form_upload_insert_one"}'><i class='fa fa-check'></i></a></li>
|
|
{{endif}}
|
|
{{if $name}}
|
|
<li>
|
|
<input type="hidden" name="{$name}_keep[{$id}]" value="1">
|
|
<a href='#' data-role='deleteFile' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="editor_media_remove"}'><i class='fa fa-trash-o'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="forms" template_name="uploadNoScript" template_data="$name, $value, $required, $multiple" template_location="front" template_app="core"></template>
|
|
<template template_group="forms" template_name="widthheight" template_data="$name, $width, $height, $unlimited, $image=NULL, $resizableDiv=TRUE" template_location="admin" template_app="core"><![CDATA[<div class="ipsWidthHeight_container">
|
|
{{if $image !== NULL}}
|
|
<img class="ipsJS_show ipsWidthHeight" data-control="dimensions" src="{$image->url}" style="width:{$width}px; height:{$height}px">
|
|
{{elseif $image === NULL AND $resizableDiv === TRUE}}
|
|
<div class="ipsJS_show ipsWidthHeight" data-control="dimensions" style="width:{$width}px; height:{$height}px"></div>
|
|
{{endif}}
|
|
<div class="ipsWidthHeight_controls">
|
|
<input type="number" name="{$name}[0]" class="ipsField_short ipsWidthHeight_width" value="{$width}" aria-label='{lang="width"}'> × <input type="number" name="{$name}[1]" class="ipsField_short ipsWidthHeight_height" value="{$height}" aria-label='{lang="height"}'> {lang="px"}
|
|
{{if $unlimited !== NULL}}
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' class="ipsWidthHeight_unlimited" data-control="dimensionsUnlimited" name="{$name}[unlimited]" id='{$name}_unlimited' {{if $unlimited == array( $width, $height )}}checked aria-checked='true'{{endif}} aria-labelledby='{$name}_unlimited_label'>
|
|
<span></span>
|
|
</span> <label for='{$name}_unlimited' id='{$name}_unlimited_label' class='ipsField_unlimited'>{lang="unlimited"}</label>
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="acknowledgeWarning" template_data="$warnings=array()" template_location="front" template_app="core"><![CDATA[{{foreach $warnings as $idx => $warning}}
|
|
{{if $idx === 0}}
|
|
<div class='ipsMessage ipsMessage_error'>
|
|
<h4 class='ipsMessage_title'>{lang="you_have_been_warned" sprintf="\IPS\Member::load( $warning->moderator )->name"}</h4>
|
|
{{if \IPS\Member::loggedIn()->isBanned()}}
|
|
{{if $warning->note_member}}
|
|
<p class='ipsType_reset ipsType_medium'>{$warning->note_member|raw}</p>
|
|
{{endif}}
|
|
{{else}}
|
|
<p class='ipsType_reset ipsType_medium'>{lang="must_acknowledge_msg"}</p>
|
|
<br>
|
|
<a href='{url="app=core&module=system&controller=warnings&id={$warning->member}&w={$warning->id}" seoTemplate="warn_view" seoTitle="\IPS\Member::loggedIn()->members_seo_name"}' class='ipsButton ipsButton_verySmall ipsButton_veryLight' data-ipsDialog data-ipsDialog-size='narrow'>{lang="view_warning_details"}</a>
|
|
{{endif}}
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="advertisementImage" template_data="$advertisement, $acpLink=NULL" template_location="global" template_app="core"><![CDATA[{{if count( $advertisement->_images )}}
|
|
<div class='ipsAdvertisement ipsSpacer_both ipsSpacer_half'>
|
|
<ul class='ipsList_inline ipsType_center ipsList_reset'>
|
|
<li class='ipsAdvertisement_large ipsResponsive_showDesktop ipsResponsive_inlineBlock ipsAreaBackground_light ipsPad_half'>
|
|
{{if $advertisement->link}}
|
|
<a href='{{if $acpLink}}{$acpLink->makeSafeForAcp()}{{else}}{url="app=core&module=system&controller=redirect&do=advertisement&ad=$advertisement->id" base="front" csrf="true"}{{endif}}' target='_blank' rel='nofollow'>
|
|
{{endif}}
|
|
<img src='{file="$advertisement->_images['large']" extension="$advertisement->storageExtension()"}' alt="{lang="advertisement_alt"}" class='ipsImage ipsContained'>
|
|
{{if $advertisement->link}}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{if !empty( $advertisement->_images['medium'] )}}
|
|
<li class='ipsAdvertisement_medium ipsResponsive_showTablet ipsResponsive_inlineBlock ipsAreaBackground_light ipsPad_half'>
|
|
{{if $advertisement->link}}
|
|
<a href='{{if $acpLink}}{$acpLink->makeSafeForAcp()}{{else}}{url="app=core&module=system&controller=redirect&do=advertisement&ad=$advertisement->id" base="front" csrf="true"}{{endif}}' target='_blank' rel='nofollow'>
|
|
{{endif}}
|
|
<img src='{file="$advertisement->_images['medium']" extension="$advertisement->storageExtension()"}' alt="{lang="advertisement_alt"}" class='ipsImage ipsContained'>
|
|
{{if $advertisement->link}}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if !empty( $advertisement->_images['small'] )}}
|
|
<li class='ipsAdvertisement_small ipsResponsive_showPhone ipsResponsive_inlineBlock ipsAreaBackground_light ipsPad_half'>
|
|
{{if $advertisement->link}}
|
|
<a href='{{if $acpLink}}{$acpLink->makeSafeForAcp()}{{else}}{url="app=core&module=system&controller=redirect&do=advertisement&ad=$advertisement->id" base="front" csrf="true"}{{endif}}' target='_blank' rel='nofollow'>
|
|
{{endif}}
|
|
<img src='{file="$advertisement->_images['small']" extension="$advertisement->storageExtension()"}' alt="{lang="advertisement_alt"}" class='ipsImage ipsContained'>
|
|
{{if $advertisement->link}}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if $acpLink}}
|
|
<div class="ipsType_center ipsType_small"><a href="{$acpLink->makeSafeForAcp()}">{$acpLink}</a></div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="appmenu" template_data="$menu, $currentTab" template_location="admin" template_app="core"><![CDATA[<ul id='acpAppList' class='ipsList_reset' data-controller='core.admin.core.nav'>
|
|
{{foreach $menu['tabs'] as $tab => $items}}
|
|
<li class='{{if $tab === $currentTab}}acpAppList_active{{endif}}' data-tab="tab_{$tab}">
|
|
<a href='{url="$menu['defaults'][$tab]"}'>
|
|
<span class='acpAppList_icon'><i class='fa fa-{lang="menutab__{$tab}_icon"}'></i></span>
|
|
<span class='acpAppList_app'>{lang="menutab__{$tab}"}</span>
|
|
</a>
|
|
<ul class='ipsList_reset ipsScrollbar'>
|
|
{{foreach $items as $appAndModule => $item}}
|
|
{{if count( $item ) > 1}}
|
|
<li data-menuKey='{$appAndModule}'>
|
|
<h3>{lang="menu__{$appAndModule}"}</h3>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $item as $key => $url}}
|
|
<li>
|
|
{{if $badgeNumber = \IPS\Application::load( mb_substr( $appAndModule, 0, mb_strpos( $appAndModule, '_' ) ) )->acpMenuNumber( $url )}}
|
|
<a href='{url="$url"}'>
|
|
{lang="menu__{$appAndModule}_{$key}"}
|
|
<span class='ipsBadge ipsBadge_style1'>{$badgeNumber}</span>
|
|
</a>
|
|
{{else}}
|
|
<a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{else}}
|
|
<li data-menuKey='{$appAndModule}'>
|
|
<h3>{lang="menu__{$appAndModule}"}</h3>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $item as $key => $url}}
|
|
<li>
|
|
<a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
<li id='elHideMenu' class='ipsJS_show'>
|
|
<a href='#'>
|
|
<i class='fa fa-angle-left' data-action='toggleClose'></i>
|
|
<i class='fa fa-angle-right' data-action='toggleOpen'></i>
|
|
</a>
|
|
</li>
|
|
<li id='elReorderAppMenu'>
|
|
<a href='#' data-action='reorder'><i class='fa fa-bars'></i> {lang="reorder_menu"}</a>
|
|
<a href='#' data-action='saveOrder' class='ipsButton ipsButton_important ipsButton_verySmall ipsButton_fullWidth ipsHide'><i class='fa fa-check'></i> {lang="save_reorder_menu"}</a>
|
|
</li>
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="basicUrl" template_data="$url, $newWindow=TRUE, $title=NULL, $wordbreak=TRUE" template_location="global" template_app="core"><![CDATA[<a href='{$url}'{{if $newWindow === TRUE}} target='_blank'{{endif}}>{{if $wordbreak}}{wordbreak="$title ?: $url"}{{else}}{{if $title}}{$title}{{else}}{$url}{{endif}}{{endif}}</a>]]></template>
|
|
<template template_group="global" template_name="blankTemplate" template_data="$html" template_location="admin" template_app="core"><![CDATA[<meta charset="utf-8">
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
{$html|raw}]]></template>
|
|
<template template_group="global" template_name="blankTemplate" template_data="$html, $title=NULL" template_location="front" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{expression="output.getTitle( $title )"}</title>
|
|
{template="includeMeta" app="core" group="global" location="global" params=""}
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" if="theme.js_include != 'footer'" app="core" group="global" location="global" params=""}
|
|
</head>
|
|
<body class='ipsApp ipsApp_front ipsClearfix ipsLayout_noBackground {{if isset( \IPS\Request::i()->cookie['hasJS'] )}}ipsJS_has{{else}}ipsJS_none{{endif}} ipsClearfix{{foreach output.bodyClasses as $class}} {$class}{{endforeach}}' {{if output.globalControllers}}data-controller='{expression="implode( ',', output.globalControllers )"}'{{endif}} {{if isset( output.inlineMessage )}}data-message="{expression="output.inlineMessage"}"{{endif}} itemscope itemtype="http://schema.org/WebSite">
|
|
{$html|raw}
|
|
{template="includeJS" if="theme.js_include == 'footer'" app="core" group="global" location="global" params=""}
|
|
{expression="output.endBodyCode" raw="true"}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="global" template_name="block" template_data="$title, $content, $margins=TRUE, $class='', $id=NULL, $showTitle=FALSE" template_location="admin" template_app="core"><![CDATA[<div class='acpBlock {$class}' {{if $id !== NULL}}id="{$id}"{{endif}}>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="box" template_data="$content=NULL, $classes=array()" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsBox {{if count( $classes)}}{expression="implode( ' ', $classes )"}{{endif}}'>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="breadcrumb" template_data="$useMicrodata=TRUE, $position='top', $markRead=TRUE" template_location="front" template_app="core"><![CDATA[<nav class='ipsBreadcrumb ipsBreadcrumb_{$position} ipsFaded_withHover'>
|
|
{{if $position == 'bottom'}}
|
|
{template="rssMenu" group="global" app="core" params=""}
|
|
{{endif}}
|
|
|
|
<ul class='ipsList_inline ipsPos_right'>
|
|
{{$defaultStream = \IPS\core\Stream::defaultStream();}}
|
|
<li>
|
|
<a data-action="defaultStream" class='ipsType_light {{if ! $defaultStream}}ipsHide{{endif}}' href='{{if $defaultStream}}{$defaultStream->url()}{{endif}}'><i class='icon-newspaper'></i> <span>{{if $defaultStream}}{$defaultStream->_title}{{endif}}</span></a>
|
|
</li>
|
|
{{if $markRead && \IPS\Member::loggedIn()->member_id}}
|
|
<li>
|
|
<a data-action="markSiteRead" class='ipsType_light' data-controller="core.front.core.markRead" href='{url="app=core&module=system&controller=markread" seoTemplate="mark_site_as_read" csrf="true"}' title='{lang="mark_site_read"}' data-ipsTooltip><i class='fa fa-check'></i> {lang="mark_site_read_button"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
<ul{{if $useMicrodata}} itemscope itemtype="http://schema.org/BreadcrumbList"{{endif}}>
|
|
<li{{if $useMicrodata}} itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"{{endif}}>
|
|
<a href='{setting="base_url"}' {{if $useMicrodata}}itemprop="url"{{endif}}>
|
|
<span {{if $useMicrodata}}itemprop="name"{{endif}}><i class='fa fa-home'></i> {lang="home"}{{if count( \IPS\Output::i()->breadcrumb )}} <i class='fa fa-angle-right'></i>{{endif}}</span>
|
|
</a>
|
|
</li>
|
|
{{$i = 0;}}
|
|
{{foreach \IPS\Output::i()->breadcrumb as $k => $b}}
|
|
<li{{if $useMicrodata}} itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"{{endif}}>
|
|
{{if $b[0] === NULL}}
|
|
{$b[1]}
|
|
{{else}}
|
|
<a href='{$b[0]}' {{if $useMicrodata}}itemprop="url"{{endif}}>
|
|
<span {{if $useMicrodata}}itemprop="name"{{endif}}>{$b[1]} {{if ( $i + 1 != count( \IPS\Output::i()->breadcrumb ) )}}<i class='fa fa-angle-right'></i>{{endif}}</span>
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{$i++;}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</nav>]]></template>
|
|
<template template_group="global" template_name="buttons" template_data="$buttons" template_location="admin" template_app="core"><![CDATA[<ul class='ipsToolList ipsToolList_horizontal ipsClearfix'>
|
|
{{foreach $buttons as $button}}
|
|
<li class='{{if isset( $button['hidden'] ) and $button['hidden']}}ipsJS_hide{{endif}}' {{if isset( $button['id'] )}}id="{$button['id']}"{{endif}}>
|
|
<a
|
|
{{if isset( $button['link'] )}}href='{$button['link']}'{{endif}}
|
|
title='{lang="$button['title']"}'
|
|
class='ipsButton ipsButton_alternate ipsButton_small ipsButton_fullWidth {{if isset( $button['class'] )}}{$button['class']}{{endif}}'
|
|
role="button"
|
|
{{if isset( $button['id'] )}}id="{$button['id']}_button"{{endif}}
|
|
{{if isset( $button['target'] )}}target="{$button['target']}"{{endif}}
|
|
{{if isset( $button['data'] )}}
|
|
{{foreach $button['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset( $button['hotkey'] )}}
|
|
data-keyAction='{$button['hotkey']}'
|
|
{{endif}}
|
|
>
|
|
{{if $button['icon']}}
|
|
<i class='fa fa-{$button['icon']}'></i>
|
|
{{endif}}
|
|
{lang="$button['title']"}
|
|
|
|
{{if isset($button['dropdown'])}}
|
|
<i class='fa fa-caret-down'></i>
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="buttons" template_data="$buttons" template_location="front" template_app="core"><![CDATA[<ul class='ipsToolList ipsToolList_horizontal ipsClearfix'>
|
|
{{foreach $buttons as $button}}
|
|
<li class='{{if isset( $button['hidden'] ) and $button['hidden']}}ipsJS_hide{{endif}}' {{if isset( $button['id'] )}}id="{$button['id']}"{{endif}}>
|
|
<a
|
|
{{if isset( $button['link'] )}}href='{$button['link']}'{{endif}}
|
|
title='{lang="$button['title']"}'
|
|
class='ipsButton ipsButton_alternate ipsButton_small ipsButton_fullWidth {{if isset( $button['class'] )}}{$button['class']}{{endif}}'
|
|
role="button"
|
|
{{if isset( $button['id'] )}}id="{$button['id']}_button"{{endif}}
|
|
{{if isset( $button['target'] )}}target="{$button['target']}"{{endif}}
|
|
{{if isset( $button['data'] )}}
|
|
{{foreach $button['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset( $button['hotkey'] )}}
|
|
data-keyAction='{$button['hotkey']}'
|
|
{{endif}}
|
|
>
|
|
{{if $button['icon']}}
|
|
<i class='fa fa-{$button['icon']}'></i>
|
|
{{endif}}
|
|
{lang="$button['title']"}
|
|
|
|
{{if isset($button['dropdown'])}}
|
|
<i class='fa fa-caret-down'></i>
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="cachingLog" template_data="$log" template_location="front" template_app="core"><![CDATA[<div id="elCachingLog">
|
|
{{foreach $log as $i => $log}}
|
|
<div class="cCachingLog" data-ipsDialog data-ipsDialog-content="#elCachingLog{$i}_menu">
|
|
{{if $log[0] === 'get'}}
|
|
<span class="cCachingLogMethod cCachingLogMethod_get">get</span>
|
|
<span class="cCachingLogKey">{$log[1]}</span>
|
|
{{elseif $log[0] === 'set'}}
|
|
<span class="cCachingLogMethod cCachingLogMethod_set">set</span>
|
|
<span class="cCachingLogKey">{$log[1]}</span>
|
|
{{elseif $log[0] === 'check'}}
|
|
<span class="cCachingLogMethod cCachingLogMethod_check">check</span>
|
|
<span class="cCachingLogKey">{$log[1]}</span>
|
|
{{elseif $log[0] === 'key'}}
|
|
<span class="cCachingLogMethod cCachingLogMethod_delete">delete</span>
|
|
<span class="cCachingLogKey">{$log[1]}</span>
|
|
{{endif}}
|
|
</div>
|
|
<div id='elCachingLog{$i}_menu' class='ipsPad ipsHide'>
|
|
{{if $log[2] !== NULL}}
|
|
<pre class="prettyprint lang-php">{$log[2]}</pre>
|
|
<hr class="ipsHr">
|
|
{{endif}}
|
|
<pre class="prettyprint lang-php">{$log[3]}</pre>
|
|
</div>
|
|
<hr class="ipsHr">
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="chart" template_data="$chart, $type, $options, $format=NULL" template_location="global" template_app="core"><![CDATA[<table class="ipsTable" data-ipsChart data-ipsChart-type="{$type}" data-ipsChart-extraOptions='{$options|raw}' {{if $format}}data-ipsChart-format='{$format}'{{endif}}>
|
|
<thead>
|
|
<tr>
|
|
{{foreach $chart->headers as $data}}
|
|
<th data-colType="{$data['type']}">{$data['label']}</th>
|
|
{{endforeach}}
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{{foreach $chart->rows as $row}}
|
|
<tr>
|
|
{{foreach $row as $value}}
|
|
<td>{$value}</td>
|
|
{{endforeach}}
|
|
</tr>
|
|
{{endforeach}}
|
|
</tbody>
|
|
</table>
|
|
<div></div>]]></template>
|
|
<template template_group="global" template_name="comment" template_data="$item, $comment, $editorName, $app, $type, $class=''" template_location="front" template_app="core"><![CDATA[{{$idField = $comment::$databaseColumnId;}}
|
|
<div id='comment-{$comment->$idField}_wrap' data-controller='core.front.core.comment' data-commentApp='{$app}' data-commentType='{$type}' data-commentID="{$comment->$idField}" data-quoteData='{expression="json_encode( array('userid' => $comment->author()->member_id, 'username' => $comment->author()->name, 'timestamp' => $comment->mapped('date'), 'contentapp' => $app, 'contenttype' => $type, 'contentclass' => $class, 'contentid' => $item->id, 'contentcommentid' => $comment->$idField) )"}' class='ipsComment_content ipsType_medium'>
|
|
{{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}
|
|
<strong class='ipsComment_popularFlag' data-ipsTooltip title='{lang="this_is_a_popular_comment"}'><i class='fa fa-heart'></i></strong>
|
|
{{endif}}
|
|
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini', $comment->warningRef()"}
|
|
<div>
|
|
<p class='ipsPos_right ipsType_reset ipsType_blendLinks'>
|
|
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' data-ipsTooltip title='{lang="share_this_comment"}' data-ipsMenu data-ipsMenu-closeOnClick='false' id='elShareComment_{$comment->id}' data-role='shareComment'><i class='fa fa-share-alt'></i></a>
|
|
{{if count( $item->commentMultimodActions() )}}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="multimod[{$comment->$idField}]" value="1" data-role="moderation" data-actions="{{if $comment->canSplit()}}split merge{{endif}} {{if $comment->hidden() === -1 AND $comment->canUnhide()}}unhide{{elseif $comment->hidden() === 1 AND $comment->canUnhide()}}approve{{elseif $comment->canHide()}}hide{{endif}} {{if $comment->canDelete()}}delete{{endif}}" data-state='{{if $comment->tableStates()}}{$comment->tableStates()}{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
{{endif}}
|
|
</p>
|
|
<h3 class='ipsComment_author ipsType_blendLinks'>
|
|
<strong class='ipsType_normal'>{template="userLink" app="core" group="global" params="$comment->author(), $comment->warningRef()"}</strong>
|
|
{template="reputationBadge" group="global" app="core" params="$comment->author()"}
|
|
</h3>
|
|
<p class='ipsComment_meta ipsType_light ipsType_medium'>
|
|
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a>
|
|
{{if $comment->editLine()}}
|
|
({lang="edited_lc"})
|
|
{{endif}}
|
|
{{if $comment->hidden()}}
|
|
· {$comment->hiddenBlurb()}
|
|
{{endif}}
|
|
{{if $comment instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and $comment->hidden() !== 1 }}
|
|
· <a href='{$comment->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report_content"}'>{lang="report"}</a>
|
|
{{endif}}
|
|
</p>
|
|
|
|
{{if member.modPermission('mod_see_warn') and $comment->warning}}
|
|
{template="commentWarned" group="global" app="core" params="$comment"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class='ipsPad'>
|
|
|
|
<div data-role='commentContent' class='ipsType_normal ipsType_richText ipsType_break ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
|
|
<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
|
|
{{endif}}
|
|
{$comment->content()|raw}
|
|
|
|
{{if $comment->editLine()}}
|
|
{$comment->editLine()|raw}
|
|
{{endif}}
|
|
</div>
|
|
|
|
{{if $comment->hidden() !== 1 && $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
{template="reputation" group="global" app="core" params="$comment, 'ipsPos_right ipsResponsive_noFloat'"}
|
|
{{endif}}
|
|
|
|
<ul class='ipsComment_controls ipsClearfix' data-role="commentControls">
|
|
{{if $comment->hidden() === 1 && ( $comment->canUnhide() || $comment->canDelete() )}}
|
|
{{if $comment->canUnhide()}}
|
|
<li><a href='{$comment->url('unhide')->csrf()}' class='ipsButton ipsButton_verySmall ipsButton_positive' data-action='approveComment'><i class='fa fa-check'></i> {lang="approve"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->canDelete()}}
|
|
<li><a href='{$comment->url('delete')->csrf()}' data-confirm data-action='deleteComment' data-updateOnDelete="#commentCount" class='ipsButton ipsButton_verySmall ipsButton_negative'><i class='fa fa-times'></i> {lang="delete"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->canEdit() || $comment->canSplit()}}
|
|
<li>
|
|
<a href='#elControls_{$comment->$idField}_menu' id='elControls_{$comment->$idField}' data-ipsMenu data-ipsMenu-appendTo='#comment-{$comment->$idField}_wrap'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elControls_{$comment->$idField}_menu' class='ipsMenu ipsMenu_narrow ipsHide'>
|
|
{{if $comment->canEdit()}}
|
|
{{if $comment->mapped('first') and $comment->item()->canEdit()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->item()->url()->setQueryString( 'do', 'edit' )}'>{lang="edit"}</a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('edit')}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $comment->canSplit()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('split')}' data-action='splitComment' data-ipsDialog data-ipsDialog-title="{lang="split_to_new" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $item::$title )"}">{lang="split"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $comment->hidden() === 0 and $item->canComment() and $editorName}}
|
|
<li data-ipsQuote-editor='{$editorName}' data-ipsQuote-target='#comment-{$comment->$idField}' class='ipsJS_show'>
|
|
<button class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_narrow cMultiQuote ipsHide' data-action='multiQuoteComment' data-ipsTooltip data-ipsQuote-multiQuote data-mqId='mq{$comment->$idField}' title='{lang="multiquote"}'><i class='fa fa-plus'></i></button>
|
|
</li>
|
|
<li data-ipsQuote-editor='{$editorName}' data-ipsQuote-target='#comment-{$comment->$idField}' class='ipsJS_show'>
|
|
<a href='#' data-action="quoteComment" data-ipsQuote-singleQuote>{lang="quote"}</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if $comment->canEdit()}}
|
|
{{if $comment->mapped('first') and $comment->item()->canEdit()}}
|
|
<li><a href='{$comment->item()->url()->setQueryString( 'do', 'edit' )}'>{lang="edit"}</a></li>
|
|
{{else}}
|
|
<li><a href='{$comment->url('edit')}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $comment->canDelete() || $comment->canSplit() || ( $comment instanceof \IPS\Content\Hideable AND ( ( !$comment->hidden() and $comment->canHide() ) || ( $comment->hidden() and $comment->canUnhide() ) ) )}}
|
|
<li>
|
|
<a href='#elControls_{$comment->$idField}_menu' id='elControls_{$comment->$idField}' data-ipsMenu data-ipsMenu-appendTo='#comment-{$comment->$idField}_wrap'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elControls_{$comment->$idField}_menu' class='ipsMenu ipsMenu_narrow ipsHide'>
|
|
{{if $comment instanceof \IPS\Content\Hideable}}
|
|
{{if !$comment->hidden() and $comment->canHide()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('hide')->csrf()}' data-ipsDialog data-ipsDialog-title="{lang="hide"}">{lang="hide"}</a></li>
|
|
{{elseif $comment->hidden() and $comment->canUnhide()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('unhide')->csrf()}'>{lang="unhide"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $comment->canSplit()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('split')}' data-action='splitComment' data-ipsDialog data-ipsDialog-title="{lang="split_to_new" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $item::$title )"}">{lang="split"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->canDelete()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('delete')->csrf()}' data-action='deleteComment' data-updateOnDelete="#commentCount">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
<li class='ipsHide' data-role='commentLoading'>
|
|
<span class='ipsLoading ipsLoading_tiny ipsLoading_noAnim'></span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsMenu ipsMenu_wide ipsHide cPostShareMenu' id='elShareComment_{$comment->id}_menu'>
|
|
<div class='ipsPad'>
|
|
<h4 class='ipsType_sectionHead'>{lang="share_this_comment"}</h4>
|
|
<hr class='ipsHr'>
|
|
<h5 class='ipsType_normal ipsType_reset'>{lang="link_to_comment"}</h5>
|
|
<input type='text' value='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsField_fullWidth'>
|
|
<h5 class='ipsType_normal ipsType_reset ipsSpacer_top'>{lang="share_externally"}</h5>
|
|
{template="sharelinks" group="global" app="core" params="$comment"}
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="commentContainer" template_data="$item, $comment" template_location="front" template_app="core"><![CDATA[{{$idField = $comment::$databaseColumnId;}}
|
|
{{$itemClassSafe = str_replace( '\\', '_', mb_substr( $comment::$itemClass, 4 ) );}}
|
|
{{if $comment->isIgnored()}}
|
|
<div class='ipsComment ipsComment_ignored ipsPad_half ipsType_light' id='elIgnoreComment_{$comment->$idField}' data-ignoreCommentID='elComment_{$comment->$idField}' data-ignoreUserID='{$comment->author()->member_id}'>
|
|
{lang="ignoring_content" sprintf="$comment->author()->name"} <a href='#elIgnoreComment_{$comment->$idField}_menu' data-ipsMenu data-ipsMenu-menuID='elIgnoreComment_{$comment->$idField}_menu' data-ipsMenu-appendTo='#elIgnoreComment_{$comment->$idField}' data-action="ignoreOptions" title='{lang="see_post_ignore_options"}' class='ipsType_blendLinks'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsHide' id='elIgnoreComment_{$comment->$idField}_menu'>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='showPost'><a href='#'>{lang="show_this_comment"}</a></li>
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='stopIgnoring'><a href='{url="app=core&module=system&controller=ignore&do=remove&id={$comment->author()->member_id}" seoTemplate="ignore"}'>{lang="stop_ignoring_posts_by" sprintf="$comment->author()->name"}</a></li>
|
|
<li class='ipsMenu_item'><a href='{url="app=core&module=members&controller=ignore" seoTemplate="ignore"}'>{lang="change_ignore_preferences"}</a></li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
|
|
<a id='comment-{$comment->$idField}'></a>
|
|
<article itemscope itemtype="http://schema.org/Comment" id='elComment_{$comment->$idField}' class='ipsComment {{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}ipsComment_popular{{endif}} ipsComment_parent ipsClearfix ipsClear {{if $comment->isIgnored()}}ipsHide{{endif}} {{if $comment->hidden()}}ipsModerated{{endif}}'>
|
|
{template="comment" group="global" app="core" params="$item, $comment, $item::$formLangPrefix . 'comment', $item::$application, $item::$module, $itemClassSafe"}
|
|
</article>]]></template>
|
|
<template template_group="global" template_name="commentEditHistory" template_data="$editHistory, $comment" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<h1 class='ipsType_pageTitle'>{lang="edit_history_title"}</h1>
|
|
{{endif}}
|
|
|
|
<div class="ipsPad" data-role="commentFeed">
|
|
{{if count($editHistory) }}
|
|
{{foreach $editHistory as $edit}}
|
|
<article class='ipsComment ipsComment_parent ipsClearfix ipsClear'>
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini ipsPhotoPanel_notPhone'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $edit['member'] ), 'mini'"}
|
|
<div>
|
|
<h3 class='ipsComment_author ipsType_sectionHead'>
|
|
{expression="\IPS\Member::load( $edit['member'] )->link()" raw="true"}
|
|
</h3>
|
|
<p class='ipsComment_meta ipsType_light'>
|
|
{datetime="$edit['time']"}
|
|
{{if $edit['reason']}}
|
|
<br>
|
|
{$edit['reason']}
|
|
{{endif}}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground_reset ipsPad'>
|
|
<div class='ipsType_richText'>
|
|
{$edit['new']|raw}
|
|
</div>
|
|
</div>
|
|
</article>
|
|
{{endforeach}}
|
|
<article class='ipsComment ipsComment_parent ipsClearfix ipsClear'>
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini ipsPhotoPanel_notPhone'>
|
|
{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini'"}
|
|
<div>
|
|
<h3 class='ipsComment_author ipsType_sectionHead'>
|
|
{$comment->author()->link()|raw}
|
|
</h3>
|
|
<p class='ipsComment_meta ipsType_light'>
|
|
{datetime="$comment->mapped('date')"}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground_reset ipsPad'>
|
|
<div class='ipsType_richText'>
|
|
{$edit['old']|raw}
|
|
</div>
|
|
</div>
|
|
</article>
|
|
{{else}}
|
|
<p class='ipsType_large ipsType_light'>{lang="no_rows_in_table"}</p>
|
|
{{endif}}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="global" template_name="commentEditLine" template_data="$comment, $supportsReason=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<span class='ipsType_reset ipsType_medium ipsType_light' data-excludequote>
|
|
<strong>{lang="date_edited" htmlsprintf="\IPS\DateTime::ts( $comment->mapped('edit_time') )->html(FALSE), htmlspecialchars( $comment->mapped('edit_member_name'), ENT_QUOTES | \IPS\HTMLENTITIES, 'UTF-8', FALSE )"}</strong>
|
|
{{if $supportsReason && $comment->mapped('edit_reason')}}
|
|
<br>{$comment->mapped('edit_reason')}
|
|
{{endif}}
|
|
{{if \IPS\Settings::i()->edit_log == 2 and ( \IPS\Settings::i()->edit_log_public or \IPS\Member::loggedIn()->modPermission('can_view_editlog') ) }}
|
|
<a href='{$comment->url('editlog')}' class='' data-ipsDialog data-ipsDialog-title='{lang="edit_history_title"}' title='{lang="edit_history"}'>({lang="edit_history"})</a>
|
|
{{if !$comment->mapped('edit_show') AND \IPS\Member::loggedIn()->modPermission('can_view_editlog')}}
|
|
<br>{lang="comment_edit_show_anyways"}
|
|
{{endif}}
|
|
{{endif}}
|
|
</span>]]></template>
|
|
<template template_group="global" template_name="commentMultimod" template_data="$item, $type='comment'" template_location="front" template_app="core"><![CDATA[<input type="hidden" name="csrfKey" value="{expression="\IPS\Session::i()->csrfKey"}" />
|
|
{{$method = $type . 'MultimodActions';}}
|
|
{{if $actions = $item->$method() and count( $actions )}}
|
|
<div class="ipsClearfix">
|
|
<div class="ipsAreaBackground ipsPad ipsClearfix" data-role="pageActionOptions">
|
|
<div class="ipsPos_right">
|
|
<select name="modaction" data-role="moderationAction">
|
|
{{if in_array( 'split_merge', $actions )}}
|
|
<option value='split' data-icon='expand'>{lang="split"}</option>
|
|
<option value='merge' data-icon='level-up'>{lang="merge"}</option>
|
|
{{endif}}
|
|
{{if in_array( 'hide', $actions ) or in_array( 'unhide', $actions )}}
|
|
<optgroup label="{lang="hide"}" data-icon='eye' data-action='hide'>
|
|
{{if in_array( 'hide', $actions )}}
|
|
<option value='hide'>{lang="hide"}</option>
|
|
{{endif}}
|
|
{{if in_array( 'unhide', $actions )}}
|
|
<option value='unhide'>{lang="unhide"}</option>
|
|
{{endif}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if in_array( 'delete', $actions )}}
|
|
<option value='delete' data-icon='trash'>{lang="delete"}</option>
|
|
{{endif}}
|
|
</select>
|
|
<button type="submit" class="ipsButton ipsButton_alternate ipsButton_verySmall">{lang="submit"}</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="commentsAndReviewsTabs" template_data="$content, $id" template_location="front" template_app="core"><![CDATA[<div data-controller='core.front.core.commentsWrapper' data-tabsId='{$id}'>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="commentTableHeader" template_data="$comment, $status" template_location="front" template_app="core"><![CDATA[
|
|
|
|
<div class='ipsDataList ipsAreaBackground_light ipsClearfix'>
|
|
<div class='ipsDataItem'>
|
|
<div class='ipsDataItem_icon'>
|
|
{template="userPhoto" group="global" app="core" params="$status->author()"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<p class='ipsType_medium ipsType_light ipsType_blendLinks ipsType_reset'>
|
|
{lang="status_updated_by" htmlsprintf="$status->author()->link()"}
|
|
</p>
|
|
<div class='ipsType_richText ipsType_medium' data-ipsTruncate data-ipsTruncate-size='5 lines' data-ipsTruncate-type='remove'>
|
|
{$status->truncated()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="commentWarned" template_data="$comment" template_location="front" template_app="core"><![CDATA[
|
|
<!-- Moderator warning -->
|
|
<div class="ipsType_reset ipsPad ipsAreaBackground_light ipsClearfix ipsPhotoPanel ipsPhotoPanel_mini">
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( $comment->warning->moderator ), 'mini'"}
|
|
<div>
|
|
<strong class='ipsType_warning ipsType_normal'>{lang="member_given_post_warning" sprintf="\IPS\Member::load( $comment->warning->moderator )->name, \IPS\Member::load( $comment->warning->member )->name"}</strong>
|
|
<br>
|
|
<span class='ipsType_light'>
|
|
<strong>{lang="warn_reason_message"}</strong> {lang="core_warn_reason_{$comment->warning->reason}"} · <strong>{lang="warn_points_message"}</strong> {$comment->warning->points} · <a href="{url="app=core&module=system&controller=warnings&id={$comment->warning->member}&w={$comment->warning->id}" seoTemplate="warn_view" seoTitle="$comment->author()->members_seo_name"}" title='{lang="view_warning_details_title"}' data-ipsDialog data-ipsDialog-size='narrow'>{lang="view_warning_details"}</a>
|
|
</span>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="controlStrip" template_data="$buttons, $otherClasses=NULL" template_location="admin" template_app="core"><![CDATA[<ul class='ipsControlStrip ipsType_noBreak ipsList_reset {{if $otherClasses}}{$otherClasses}{{endif}}' data-ipsControlStrip>
|
|
{{foreach $buttons as $button}}
|
|
<li class='ipsControlStrip_button {{if isset( $button['hidden'] ) and $button['hidden']}}ipsJS_hide{{endif}}' {{if isset( $button['id'] )}}id="{$button['id']}"{{endif}}>
|
|
<a
|
|
{{if isset( $button['link'] )}}href='{$button['link']}'{{endif}}
|
|
title='{lang="$button['title']"}'
|
|
data-ipsTooltip
|
|
aria-label="{lang="$button['title']"}"
|
|
|
|
{{if isset( $button['class'] )}}class='{$button['class']}'{{endif}}
|
|
{{if isset( $button['data'] )}}
|
|
{{foreach $button['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset( $button['hotkey'] )}}
|
|
data-keyAction='{$button['hotkey']}'
|
|
{{endif}}
|
|
{{if isset( $button['target'] )}}
|
|
target="{$button['target']}"
|
|
{{endif}}
|
|
>
|
|
<i class='ipsControlStrip_icon fa fa-{$button['icon']}'></i>
|
|
<span class='ipsControlStrip_item'>{lang="$button['title']"}</span>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
]]></template>
|
|
<template template_group="global" template_name="controlStrip" template_data="$buttons" template_location="front" template_app="core"><![CDATA[<ul class='ipsControlStrip ipsType_noBreak ipsList_reset' data-ipsControlStrip>
|
|
{{foreach $buttons as $button}}
|
|
<li class='ipsControlStrip_button {{if isset( $button['hidden'] ) and $button['hidden']}}ipsJS_hide{{endif}}' {{if isset( $button['id'] )}}id="{$button['id']}"{{endif}}>
|
|
<a
|
|
{{if isset( $button['link'] )}}href='{$button['link']}'{{endif}}
|
|
title='{lang="$button['title']"}'
|
|
data-ipsTooltip
|
|
aria-label="{lang="$button['title']"}"
|
|
|
|
{{if isset( $button['class'] )}}class='{$button['class']}'{{endif}}
|
|
{{if isset( $button['data'] )}}
|
|
{{foreach $button['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset( $button['hotkey'] )}}
|
|
data-keyAction='{$button['hotkey']}'
|
|
{{endif}}
|
|
>
|
|
<i class='ipsControlStrip_icon fa fa-{$button['icon']}'></i>
|
|
<span class='ipsControlStrip_item'>{lang="$button['title']"}</span>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
]]></template>
|
|
<template template_group="global" template_name="coverPhoto" template_data="$url, $coverPhoto" template_location="front" template_app="core"><![CDATA[<div class='ipsPageHead_special ipsCoverPhoto' data-controller='core.front.core.coverPhoto' data-url="{$url->csrf()}" data-coverOffset='{$coverPhoto->offset}'>
|
|
{{if $coverPhoto->file}}
|
|
<div class='ipsCoverPhoto_container'>
|
|
<img src='{$coverPhoto->file->url}' class='ipsCoverPhoto_photo' alt=''>
|
|
</div>
|
|
{{endif}}
|
|
{{if $coverPhoto->editable}}
|
|
<a href='#elEditPhoto_menu' data-hideOnCoverEdit class='ipsCoverPhoto_button ipsPos_right ipsButton ipsButton_verySmall ipsButton_narrow ipsButton_overlaid' data-ipsMenu id='elEditPhoto' data-role='coverPhotoOptions'>{lang="cover_photo_button"} <i class='fa fa-caret-down'></i></a>
|
|
{{endif}}
|
|
<div class='ipsColumns ipsColumns_collapsePhone' data-hideOnCoverEdit>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{if $coverPhoto->editable}}
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elEditPhoto_menu'>
|
|
{{if $coverPhoto->file}}
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$url->setQueryString( 'do', 'coverPhotoRemove' )->csrf()}' data-action='removeCoverPhoto'>{lang="cover_photo_remove"}</a>
|
|
</li>
|
|
<li class='ipsMenu_item ipsHide'>
|
|
<a href='#' data-action='positionCoverPhoto'>{lang="cover_photo_reposition"}</a>
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$url->setQueryString( 'do', 'coverPhotoUpload' )}' data-ipsDialog data-ipsDialog-title="{lang="cover_photo_add"}">{lang="cover_photo_add"}</a>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
{$coverPhoto->overlay|raw}
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="customFieldsDisplay" template_data="$author" template_location="front" template_app="core"><![CDATA[{{foreach $author->contentProfileFields() as $group => $fields}}
|
|
{{foreach $fields as $field => $value}}
|
|
<li class='ipsResponsive_hidePhone ipsType_break'>
|
|
{$value|raw}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="decision" template_data="$blurb, $options" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsAreaBackground_light ipsPad ipsType_center'>
|
|
<div class='ipsType_large'><strong>{lang="$blurb"}</strong></div>
|
|
<br><br>
|
|
<ul class='ipsList_inline'>
|
|
{{foreach $options as $lang => $link}}
|
|
<li>
|
|
<a href="{$link}" title='{lang="$lang"}' class='ipsButton ipsButton_medium ipsButton_primary'>{lang="$lang"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="definitionTable" template_data="$rows, $sidebar=NULL, $parse=TRUE" template_location="admin" template_app="core"><![CDATA[{{if $sidebar !== NULL}}
|
|
<div class="ipsColumns">
|
|
<div class="ipsColumn ipsColumn_fluid">
|
|
{{endif}}
|
|
<ul class='ipsDataList'>
|
|
{{foreach $rows as $k => $v}}
|
|
<li>
|
|
<span class="ipsDataItem_generic ipsDataItem_size6">
|
|
<strong class="title">
|
|
{{if $parse}}
|
|
{lang="$k"}
|
|
{{else}}
|
|
{$k}
|
|
{{endif}}
|
|
</strong>
|
|
</span>
|
|
<span class="ipsDataItem_generic">
|
|
{{if $v}}
|
|
{$v}
|
|
{{else}}
|
|
<em class="ipsType_light">{lang="unknown"}</em>
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{if $sidebar !== NULL}}
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fixed ipsColumn_veryWide">
|
|
{$sidebar|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="global" template_name="designersModeBuilding" template_data="$html, $title=NULL" template_location="front" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{expression="output.getTitle( $title )"}</title>
|
|
{template="includeMeta" app="core" group="global" location="global" params=""}
|
|
<style type="text/css">
|
|
/* ======================================================== */
|
|
/* PROGRESS BAR */
|
|
@-webkit-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-moz-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-ms-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-o-keyframes progress-bar-stripes {
|
|
from { background-position: 0 0; }
|
|
to { background-position: 40px 0; }
|
|
}
|
|
@keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
|
|
.ipsProgressBar {
|
|
width: 50%;
|
|
margin: auto;
|
|
height: 26px;
|
|
overflow: hidden;
|
|
background: rgb(156,156,156);
|
|
background: -moz-linear-gradient(top, rgba(156,156,156,1) 0%, rgba(180,180,180,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(156,156,156,1)), color-stop(100%,rgba(180,180,180,1)));
|
|
background: -webkit-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
border-radius: 4px;
|
|
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_fullWidth {
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_animated .ipsProgressBar_progress {
|
|
background-color: #5490c0;
|
|
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
|
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-size: 40px 40px;
|
|
}
|
|
|
|
.ipsProgressBar_progress {
|
|
float: left;
|
|
width: 0;
|
|
height: 100%;
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
color: #ffffff;
|
|
text-align: center;
|
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.25);
|
|
background: #5490c0;
|
|
position: relative;
|
|
white-space: nowrap;
|
|
line-height: 26px;
|
|
}
|
|
|
|
.ipsProgressBar_warning .ipsProgressBar_progress {
|
|
background: #8c3737;
|
|
}
|
|
|
|
.ipsProgressBar > span:first-child {
|
|
padding-left: 7px;
|
|
}
|
|
|
|
.ipsProgressBar_progress[data-progress]:after {
|
|
position: absolute;
|
|
right: 5px;
|
|
top: 0;
|
|
line-height: 32px;
|
|
color: #fff;
|
|
content: attr(data-progress);
|
|
display: block;
|
|
font-weight: bold;
|
|
}
|
|
|
|
span[data-role=message] {
|
|
text-align: center;
|
|
display: block;
|
|
margin: 8px;
|
|
font-family: Helvetica;
|
|
}
|
|
|
|
</style>
|
|
</head>
|
|
<body class="ipsApp ipsApp_front ipsJS_none ipsClearfix ipsLayout_noBackground">
|
|
{$html|raw}
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="global" template_name="dynamicChart" template_data="$chart, $html" template_location="global" template_app="core"><![CDATA[<div class='ipsChart' data-controller='core.admin.core.dynamicChart' data-chart-url='{$chart->baseURL}' data-chart-identifier='{$chart->identifier}' data-chart-type="{$chart->type}" data-chart-timescale="{$chart->timescale}">
|
|
<div class='ipsPad ipsAreaBackground ipsClearfix'>
|
|
{{if $chart->title}}
|
|
<h2 class='ipsType_sectionHead'>{$chart->title}</h2>
|
|
{{endif}}
|
|
<ul class='ipsList_inline'>
|
|
<li data-role="groupingButtons">
|
|
<span class="ipsButton_split ipsClearfix">
|
|
{{foreach array( 'daily', 'weekly', 'monthly' ) as $k}}
|
|
<a class='ipsButton ipsButton_verySmall {{if $chart->type == 'Table'}}ipsButton_disabled ipsButton_veryLight{{else}}{{if $chart->timescale == $k}}ipsButton_primary{{else}}ipsButton_veryLight{{endif}}{{endif}}' href="{$chart->url->setQueryString( array( 'timescale' => array( $chart->identifier => $k ), 'noheader' => 1 ) )}" data-timescale="{$k}" {{if $chart->timescale == $k}}data-selected{{endif}}>{lang="stats_date_group_$k"}</a>
|
|
{{endforeach}}
|
|
</span>
|
|
</li>
|
|
<li class="ipsClearfix">
|
|
<a data-action='chartDate' data-ipsMenu data-ipsMenu-closeOnClick='false' id='el{$chart->identifier}Date' href="#" class="ipsButton ipsButton_verySmall ipsButton_veryLight"><i class='fa fa-calendar'></i> {lang="stats_date_range"} <i class='fa fa-caret-down'></i></a>
|
|
<div id='el{$chart->identifier}Date_menu' class='ipsMenu ipsMenu_normal ipsHide ipsPad'>
|
|
<form accept-charset='utf-8' action="{$chart->url}" method="post" data-role="dateForm" data-ipsForm>
|
|
{template="date" group="forms" location="global" app="core" params="'start', $chart->start ? $chart->start->localeDate() : NULL, FALSE, NULL, NULL, FALSE, FALSE, NULL, NULL, array(), TRUE, 'ipsField_fullWidth', \IPS\Member::loggedIn()->language()->addToStack('stats_start_date')"}
|
|
<br><br>
|
|
{template="date" group="forms" location="global" app="core" params="'end', $chart->start ? $chart->start->localeDate() : NULL, FALSE, NULL, NULL, FALSE, FALSE, NULL, NULL, array(), TRUE, 'ipsField_fullWidth', \IPS\Member::loggedIn()->language()->addToStack('stats_end_date')"}
|
|
<br><br>
|
|
<button type="submit" class="ipsButton ipsButton_primary ipsButton_fullWidth" data-role="updateDate">{lang="submit"}</button>
|
|
</form>
|
|
</div>
|
|
</li>
|
|
{{if count( $chart->availableFilters ) > 0}}
|
|
<li>
|
|
<a data-action="chartFilter" data-ipsMenu data-ipsMenu-selectable data-ipsMenu-closeOnClick='false' id='el{$chart->identifier}Filter' href="#" class="ipsButton ipsButton_verySmall ipsButton_veryLight"><i class='fa fa-filter'></i> {lang="stats_chart_filters"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='el{$chart->identifier}Filter_menu' class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' data-role='filterMenu'>
|
|
{{foreach $chart->availableFilters as $f => $name}}
|
|
<li class='ipsMenu_item {{if in_array( $f, $chart->currentFilters )}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$f}'><a href="{$chart->flipUrlFilter( $f )}">{$name}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if count( $chart->availableTypes ) > 1}}
|
|
<li class='ipsPos_right'>
|
|
<span class="ipsButton_split ipsClearfix">
|
|
{{foreach $chart->availableTypes as $t}}
|
|
<a class='ipsButton ipsButton_verySmall {{if $chart->type == $t}}ipsButton_primary{{else}}ipsButton_veryLight{{endif}}' href="{$chart->url->setQueryString( array( 'type' => array( $chart->identifier => $t ), 'noheader' => 1 ) )}" data-ipsTooltip title='{lang="chart_{$t}"}' data-type='{$t}' {{if $chart->type == $t}}data-selected{{endif}}>
|
|
{{if $t === 'Table'}}
|
|
<i class="fa fa-table"></i>
|
|
{{elseif $t === 'LineChart'}}
|
|
<i class="fa fa-line-chart"></i>
|
|
{{elseif $t === 'ColumnChart'}}
|
|
<i class="fa fa-bar-chart"></i>
|
|
{{elseif $t === 'BarChart'}}
|
|
<i class="fa fa-bar-chart fa-rotate-90"></i>
|
|
{{elseif $t === 'PieChart'}}
|
|
<i class="fa fa-pie-chart"></i>
|
|
{{elseif $t === 'GeoChart'}}
|
|
<i class="fa fa-globe"></i>
|
|
{{endif}}
|
|
</a>
|
|
{{endforeach}}
|
|
</span>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
</div>
|
|
<div class='ipsChart_chart ipsPad' data-role="chart">
|
|
{$html|raw}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="embedComment" template_data="$item, $comment, $url, $image=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsEmbedded {{if $image}}ipsEmbedded_withImage{{endif}}'>
|
|
<div class='ipsEmbedded_headerArea'>
|
|
<h4 class='ipsType_reset ipsType_normal ipsTruncate ipsTruncate_line'>
|
|
<i class='fa fa-{$comment::$icon}' data-ipsTooltip title='{lang="$comment::$title"}'></i>
|
|
<a href='{$url}' target='_top'>
|
|
{{if $item::$firstCommentRequired}}
|
|
{{if $comment->isFirst()}}
|
|
{$item->mapped('title')}
|
|
{{else}}
|
|
{lang="embed_reply_to" sprintf="$item->mapped('title')"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="embed_comment_on" sprintf="$item->mapped('title')"}
|
|
{{endif}}
|
|
</a>
|
|
</h4>
|
|
</div>
|
|
<div class='ipsEmbedded_content'>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix ipsType_medium'>
|
|
{template="userPhoto" group="global" app="core" params="$comment->author(), 'mini', NULL, '', FALSE"}
|
|
<div>
|
|
<span class='ipsType_light ipsType_small'>{lang="byline" sprintf="$comment->author()->name"} {datetime="$comment->mapped('date')"}</span>
|
|
<div data-ipsTruncate data-ipsTruncate-size='1 lines' data-ipsTruncate-type='remove'>
|
|
{$comment->truncated( TRUE )|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if $image}}
|
|
<div style='background-image: url( "{expression="str_replace( array( '(', ')' ), array( '\(', '\)' ), $image->url )"}" );' class='ipsEmbedded_image'>
|
|
<a href='{$url}' target='_top'>
|
|
<img src='{$image->url}'>
|
|
</a>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="embedItem" template_data="$item, $url, $image=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsEmbedded {{if $image}}ipsEmbedded_withImage{{endif}}'>
|
|
<div class='ipsEmbedded_headerArea'>
|
|
<h4 class='ipsType_reset ipsType_normal ipsTruncate ipsTruncate_line'><i class='fa fa-{$item::$icon}' data-ipsTooltip title='{lang="$item::$title"}'></i> <a href='{$url}' target='_top'>{$item->mapped('title')}</a></h4>
|
|
</div>
|
|
<div class='ipsEmbedded_content'>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix ipsType_medium'>
|
|
{template="userPhoto" group="global" app="core" params="$item->author(), 'mini', NULL, '', FALSE"}
|
|
<div>
|
|
{{if $container = $item->containerWrapper()}}
|
|
<span class='ipsType_light ipsType_small'>
|
|
{lang="byline_nodate" sprintf="$item->author()->name"}
|
|
{lang="in"} {$container->_title}, {datetime="$item->mapped('date')"}
|
|
</span>
|
|
{{else}}
|
|
<span class='ipsType_light ipsType_small'>{lang="byline" sprintf="$item->author()->name"} {datetime="$item->mapped('date')"}</span>
|
|
{{endif}}
|
|
<div data-ipsTruncate data-ipsTruncate-size='1 lines' data-ipsTruncate-type='remove'>
|
|
{$item->truncated( TRUE )|raw}
|
|
</div>
|
|
<ul class='ipsList_inline ipsType_small ipsEmbedded_stats'>
|
|
{{if ( $item instanceof \IPS\Content\Ratings and $rating = $item->averageRating() ) or ( isset( $item::$reviewClass ) and $rating = $item->averageReviewRating() )}}
|
|
<li>{template="rating" app="core" params="'small', $rating" group="global"}</li>
|
|
{{endif}}
|
|
{{if $item::$commentClass}}
|
|
{{if $item::$firstCommentRequired}}
|
|
<li><i class='fa fa-comment'></i> {lang="replies_number" pluralize="$item->mapped('num_comments') - 1"}</li>
|
|
{{else}}
|
|
<li><i class='fa fa-comment'></i> {lang="num_comments" pluralize="$item->mapped('num_comments')"}</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if $image}}
|
|
<div style='background-image: url( "{expression="str_replace( array( '(', ')' ), array( '\(', '\)' ), $image->url )"}" );' class='ipsEmbedded_image'>
|
|
<a href='{$url}' target='_top'>
|
|
<img src='{$image->url}'>
|
|
</a>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="embedReview" template_data="$item, $review, $url, $image=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsEmbedded {{if $image}}ipsEmbedded_withImage{{endif}}'>
|
|
<div class='ipsEmbedded_headerArea'>
|
|
<h4 class='ipsType_reset ipsType_normal ipsTruncate ipsTruncate_line'>
|
|
<i class='fa fa-{$review::$icon}' data-ipsTooltip title='{lang="$review::$title"}'></i>
|
|
<a href='{$url}' target='_top'>
|
|
{lang="embed_review_of" sprintf="$item->mapped('title')"}
|
|
</a>
|
|
</h4>
|
|
</div>
|
|
<div class='ipsEmbedded_content'>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix ipsType_medium'>
|
|
{template="userPhoto" group="global" app="core" params="$review->author(), 'mini', NULL, '', FALSE"}
|
|
<div>
|
|
<span class='ipsType_light ipsType_small'>{lang="byline" sprintf="$review->author()->name"} {datetime="$review->mapped('date')"}</span>
|
|
{template="rating" app="core" params="'small', $review->mapped('rating')" group="global"}
|
|
<div data-ipsTruncate data-ipsTruncate-size='1 lines' data-ipsTruncate-type='remove'>
|
|
{$review->truncated( TRUE )|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if $image}}
|
|
<div style='background-image: url( "{expression="str_replace( array( '(', ')' ), array( '\(', '\)' ), $image->url )"}" );' class='ipsEmbedded_image'>
|
|
<a href='{$url}' target='_top'>
|
|
<img src='{$image->url}'>
|
|
</a>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="error" template_data="$title, $message, $code, $backtrace" template_location="admin" template_app="core"><![CDATA[<div class='ipsMessage ipsMessage_error'>
|
|
<span class="ipsMessage_code">{$code}</span>
|
|
{$message|raw}
|
|
{{if $backtrace}}
|
|
<br>
|
|
<pre>{$backtrace}</pre>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="error" template_data="$title, $message, $code, $backtrace" template_location="front" template_app="core"><![CDATA[
|
|
<section id='elError' class='ipsType_center'>
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<i class='fa fa-exclamation-circle ipsType_huge'></i>
|
|
<p class='ipsType_reset ipsType_light ipsType_large'>
|
|
{lang="something_went_wrong"}
|
|
</p>
|
|
<div id='elErrorMessage' class='ipsPos_center'>
|
|
{$message|raw}
|
|
</div>
|
|
<p class='ipsType_light ipsType_reset ipsType_normal'>
|
|
{lang="error_page_code"} <strong>{$code}</strong>
|
|
</p>
|
|
</div>
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'contact' ) ) and !( \IPS\Dispatcher::i()->application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'contact' )}}
|
|
<p class='ipsType_light ipsType_large'>
|
|
<a href='{url="app=core&module=contact&controller=contact" seoTemplate="contact"}' title='{lang="contact_admin"}'>
|
|
{lang="contact_admin"}
|
|
</a>
|
|
</p>
|
|
{{endif}}
|
|
{{if !member.member_id}}
|
|
<br>
|
|
<a href='{url="app=core&module=system&controller=login" seoTemplate="login"}' class='ipsButton ipsButton_normal ipsButton_medium' title='{lang="sign_in"}'>
|
|
{lang="sign_in"}
|
|
</a>
|
|
{{endif}}
|
|
</section>
|
|
{{if $backtrace}}
|
|
<br><hr class='ipsHr'><br>
|
|
<pre>{$backtrace}</pre>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="favico" template_data="" template_location="front" template_app="core"><![CDATA[{{if isset( \IPS\Theme::i()->logo['favicon'] ) and \IPS\Theme::i()->logo['favicon'] !== null}}
|
|
<link rel='shortcut icon' href='{theme="logo_favicon"}'>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="findComment" template_data="$header, $item, $comment" template_location="front" template_app="core"><![CDATA[{{$idField = $comment::$databaseColumnId;}}
|
|
{{$itemClassSafe = str_replace( '\\', '_', mb_substr( $comment::$itemClass, 4 ) );}}
|
|
{{if ! \IPS\Request::i()->isAjax()}}
|
|
<h1 class='ipsType_pageTitle'><a href="{$item->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->$idField ) )}">{$header}</a></h1>
|
|
<br />
|
|
{{endif}}
|
|
<article itemscope itemtype="http://schema.org/Comment" id='elComment_{$comment->$idField}' class='ipsComment {{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}ipsComment_popular{{endif}} ipsComment_parent ipsClearfix ipsClear {{if $comment->hidden()}}ipsModerated{{endif}}'>
|
|
<div id='comment-{$comment->$idField}_wrap' data-controller='core.front.core.comment' data-commentApp='{$comment::$application}' data-commentType='{$item::$module}' data-commentID="{$comment->$idField}" data-quoteData='{expression="json_encode( array('userid' => $comment->author()->member_id, 'username' => $comment->author()->name, 'timestamp' => $comment->mapped('date'), 'contentapp' => $comment::$application, 'contenttype' => $item::$module, 'contentclass' => $itemClassSafe, 'contentid' => $item->id, 'contentcommentid' => $comment->$idField) )"}' class='ipsComment_content ipsType_medium'>
|
|
{{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}
|
|
<strong class='ipsComment_popularFlag' data-ipsTooltip title='{lang="this_is_a_popular_comment"}'><i class='fa fa-heart'></i></strong>
|
|
{{endif}}
|
|
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini ipsPhotoPanel_notPhone'>
|
|
{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini', $comment->warningRef()"}
|
|
<div>
|
|
<h3 class='ipsComment_author ipsType_blendLinks'>
|
|
<strong class='ipsType_sectionHead'>{template="userLink" app="core" group="global" params="$comment->author(), $comment->warningRef()"}</strong>
|
|
</h3>
|
|
<p class='ipsComment_meta ipsType_light ipsType_medium'>
|
|
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a>
|
|
{{if $comment->editLine()}}
|
|
· {$comment->editLine()|raw}
|
|
{{endif}}
|
|
{{if $comment->hidden()}}
|
|
· {$comment->hiddenBlurb()}
|
|
{{endif}}
|
|
</p>
|
|
{{if member.modPermission('mod_see_warn') and $comment->warning}}
|
|
{template="commentWarned" group="global" app="core" params="$comment"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground_reset ipsPad'>
|
|
<div data-role='commentContent' class='ipsType_richText ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
|
|
<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
|
|
{{endif}}
|
|
{$comment->content()|raw}
|
|
</div>
|
|
{{if $comment->hidden() !== 1 && $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
<br>
|
|
{template="reputation" group="global" app="core" params="$comment"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</article>]]></template>
|
|
<template template_group="global" template_name="follow" template_data="$app, $area, $id, $count" template_location="front" template_app="core"><![CDATA[
|
|
<div data-followApp='{$app}' data-followArea='{$area}' data-followID='{$id}' data-controller='core.front.core.followButton'>
|
|
{{if !member.member_id}}
|
|
<span class='ipsType_light ipsType_blendLinks ipsResponsive_hidePhone ipsResponsive_inline'><i class='fa fa-info-circle'></i> <a href='{url="app=core&module=system&controller=login" seoTemplate="login"}' title='{lang="sign_in_title"}'>{lang="follow_sign_in"}</a> </span>
|
|
{{endif}}
|
|
{template="followButton" group="global" app="core" params="$app, $area, $id, $count"}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="followButton" template_data="$app, $area, $id, $count" template_location="front" template_app="core"><![CDATA[{{if member.member_id}}
|
|
{{if member.following( $app, $area, $id )}}
|
|
<div class="ipsFollow ipsButton ipsButton_primary ipsButton_verySmall" data-role="followButton">
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="following_this_content"}" data-ipsTooltip class="ipsType_blendLinks ipsType_noUnderline" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick><i class='fa fa-check'></i> {lang="following_this"} <i class='fa fa-caret-down'></i></a>
|
|
<a class='ipsCommentCount' href='{url="app=core&module=system§ion=notifications&do=followers&follow_app={$app}&follow_area={$area}&follow_id={$id}"}' title='{lang="followers_tooltip"}' data-ipsTooltip data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="who_follows_this"}'>{$count}</span></a>
|
|
</div>
|
|
{{else}}
|
|
<div class="ipsFollow ipsButton ipsButton_light ipsButton_verySmall" data-role="followButton">
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="follow_this_content"}" data-ipsTooltip class="ipsType_blendLinks ipsType_noUnderline" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick>{lang="follow"}</a>
|
|
{{if $count > 0}}
|
|
<a class='ipsCommentCount' href='{url="app=core&module=system§ion=notifications&do=followers&follow_app={$app}&follow_area={$area}&follow_id={$id}"}' title='{lang="followers_tooltip"}' data-ipsTooltip data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="who_follows_this"}'>{$count}</a>
|
|
{{else}}
|
|
<span class='ipsCommentCount'>{$count}</span>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
<div class="ipsFollow ipsPos_middle ipsButton ipsButton_light ipsButton_verySmall {{if $count == 0}}ipsButton_disabled{{endif}}" data-role="followButton">
|
|
{{if $count > 0}}
|
|
<a href='{url="app=core&module=system§ion=notifications&do=followers&follow_app={$app}&follow_area={$area}&follow_id={$id}"}' title='{lang="followers_tooltip"}' class='ipsType_blendLinks ipsType_noUnderline' data-ipsTooltip data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="who_follows_this"}'>
|
|
{{endif}}
|
|
<span>{lang="followers"}</span>
|
|
<span class='ipsCommentCount'>{$count}</span>
|
|
{{if $count}}
|
|
</a>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="footer" template_data="" template_location="front" template_app="core"><![CDATA[{{if ( \IPS\Settings::i()->site_online || \IPS\Member::loggedIn()->group['g_access_offline'] ) and ( \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canAccess() )}}
|
|
<ul class='ipsList_inline ipsType_center ipsSpacer_top' id="elFooterLinks">
|
|
|
|
{{$languages = \IPS\Lang::getEnabledLanguages();}}
|
|
{{if count( $languages ) > 1}}
|
|
<li>
|
|
<a href='#elNavLang_menu' id='elNavLang' data-ipsMenu data-ipsMenu-above>{lang='language'} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elNavLang_menu' class='ipsMenu ipsMenu_selectable ipsHide'>
|
|
{{foreach $languages as $id => $lang }}
|
|
<li class='ipsMenu_item{{if \IPS\Member::loggedIn()->language()->id == $id || ( $lang->default && \IPS\Member::loggedIn()->language === 0 )}} ipsMenu_itemChecked{{endif}}'>
|
|
<form action="{url="app=core&module=system&controller=language" noprotocol="true" csrf="true" seoTemplate="language"}" method="post">
|
|
<button type='submit' name='id' value='{$id}' class='ipsButton ipsButton_link'>{{if $lang->get__icon()}}<i class='{$lang->get__icon()}'></i> {{endif}}{$lang->title} {{if $lang->default}}{lang="default"}{{endif}}</button>
|
|
</form>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{$themes = \IPS\Theme::getThemesWithAccessPermission();}}
|
|
{{if count ( $themes ) > 1 }}
|
|
<li>
|
|
<a href='#elNavTheme_menu' id='elNavTheme' data-ipsMenu data-ipsMenu-above>{lang='skin'} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elNavTheme_menu' class='ipsMenu ipsMenu_selectable ipsHide'>
|
|
{{foreach $themes as $id => $set }}
|
|
{{if $set->canAccess()}}
|
|
<li class='ipsMenu_item{{if \IPS\Theme::i()->id == $id}} ipsMenu_itemChecked{{endif}}'>
|
|
<form action="{url="app=core&module=system&controller=theme" noprotocol="true" csrf="true" seoTemplate="theme"}" method="post">
|
|
<button type='submit' name='id' value='{$id}' class='ipsButton ipsButton_link'>{lang="$set->_title"} {{if $set->is_default}}{lang="default"}{{endif}}</button>
|
|
</form>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if \IPS\Settings::i()->privacy_type != "none"}}
|
|
<li><a href='{{if \IPS\Settings::i()->privacy_type == "internal"}}{url="app=core&module=system&controller=privacy" seoTemplate="privacy"}{{else}}{setting="privacy_link"}{{endif}}'>{lang="privacy"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'contact' ) ) and !( \IPS\Dispatcher::i()->application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'contact' )}}
|
|
<li><a href='{url="app=core&module=contact&controller=contact" seoTemplate="contact"}' data-ipsdialog data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage='{lang="contact_sent_blurb"}' data-ipsdialog-title="{lang="contact"}">{lang='contact'}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canManageWidgets()}}
|
|
<button type='button' id='elWidgetControls' data-action='openSidebar' data-ipsTooltip title='{lang="manage_blocks"}' class='ipsButton ipsButton_primary ipsButton_narrow'><i class='fa fa-chevron-right'></i></button>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="genericBlock" template_data="$content, $title='', $classes=NULL" template_location="front" template_app="core"><![CDATA[{{if $title}}
|
|
{template="pageHeader" app="core" group="global" params="$title"}
|
|
{{endif}}
|
|
<div class='{{if $classes}}{$classes}{{endif}}'>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="globalTemplate" template_data="$title,$html,$location=array()" template_location="admin" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>{$title}</title>
|
|
<!--[if lt IE 9]>
|
|
<script src="{url="applications/core/interface/html5shiv/html5shiv.js" base="none" protocol="\IPS\Http\Url::PROTOCOL_RELATIVE"}"></script>
|
|
<![endif]-->
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
</head>
|
|
<body data-baseurl="{setting="base_url"}" class='ipsApp ipsApp_admin {{if isset( \IPS\Request::i()->cookie['hasJS'] )}}ipsJS_has{{else}}ipsJS_none{{endif}} {{if isset( \IPS\Request::i()->cookie['hideAdminMenu'] )}}cAdminHideMenu{{endif}}' data-controller="{expression="implode( ',', \IPS\Output::i()->globalControllers )"}" {{if isset( output.inlineMessage )}}data-message="{expression="output.inlineMessage"}"{{endif}} data-pageApp='{$location['app']}' data-pageLocation='admin' data-pageModule='{$location['module']}' data-pageController='{$location['controller']}'>
|
|
<a href='#content' id='acpJumpToContent'>{lang="jump_to_content"}</a>
|
|
<div id='ipsLayout_header' class='ipsClearfix' role='banner' data-controller='core.admin.core.mobileNav'>
|
|
<header>
|
|
<a href='{url="&"}' id='elSiteTitle'>
|
|
<span id='elLogo'><img src='{resource="logo.png" app="core" location="admin"}' alt=''></span>
|
|
<span id='elTitle' class='ipsResponsive_hidePhone'>
|
|
IPS Community Suite<br>
|
|
<span id='elVersion'>{lang="acp_version_number" sprintf="\IPS\Application::load('core')->version"}</span>
|
|
</span>
|
|
</a>
|
|
<ul class='ipsList_inline ipsType_light ipsResponsive_hidePhone'>
|
|
<li class='ipsResponsive_showDesktop ipsResponsive_inline'>
|
|
<a href='#elAdminUser_menu' id='elAdminUser' data-ipsMenu>
|
|
{lang="logged_in_as" sprintf="\IPS\Member::loggedIn()->name"} <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
</li>
|
|
<li><a href='{expression="\IPS\Http\Url::baseUrl()"}' target='_blank'><i class='fa fa-home'></i> {lang="site"}</a></li>
|
|
</ul>
|
|
<ul id='elAdminMobileNav' class='ipsList_inline ipsList_noSpacing ipsResponsive_hideDesktop ipsResponsive_block'>
|
|
<li class='ipsJS_show'>
|
|
<a href='#' class='ipsResponsive_showPhone ipsResponsive_block' data-action="mobileSearch"><i class='fa fa-search'></i></a>
|
|
</li>
|
|
<li data-ipsDrawer data-ipsDrawer-drawerElem='#elMobileDrawer' title='{lang="admincp_menu"}'>
|
|
<a href='#'><i class='fa fa-align-justify'></i></a>
|
|
</li>
|
|
</ul>
|
|
</header>
|
|
{{if member.hasAcpRestriction( 'core', 'livesearch', 'livesearch_manage')}}
|
|
<div class='ipsPad_half ipsJS_show' id='acpLiveSearch'>
|
|
<input type='text' class='' id='acpSearchKeyword' placeholder='{lang="search_admincp"}'>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
<ul id='elAdminUser_menu' class='ipsMenu ipsMenu_narrow ipsHide'>
|
|
<li class='ipsMenu_item'><a href='{url="app=core&module=members&controller=members&do=adminDetails"}' data-ipsDialog data-ipsDialog-url='{url="app=core&module=members&controller=members&do=adminDetails"}' data-ipsDialog-title='{lang="change_details"}' data-ipsDialog-size='narrow'><i class='fa fa-pencil'></i> {lang="change_details"}</a></li>
|
|
{{$languages = \IPS\Lang::getEnabledLanguages();}}
|
|
{{if count( $languages ) > 1}}
|
|
<li class='ipsMenu_item ipsMenu_subItems'>
|
|
<a href='#elNavLang_menu' id='elNavLang'><i class='fa fa-globe'></i> {lang='acp_language'}</a>
|
|
<ul id='elNavLang_menu' class='ipsMenu ipsMenu_selectable ipsHide'>
|
|
{{foreach $languages as $id => $lang }}
|
|
<li class='ipsMenu_item{{if \IPS\Member::loggedIn()->acp_language == $id || ( $lang->default && \IPS\Member::loggedIn()->acp_language === 0 )}} ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=system&controller=language&id=$id" csrf="true"}'>{{if $lang->get__icon()}}<i class='{$lang->get__icon()}'></i> {{endif}}{$lang->title} {{if $lang->default}}{lang="default"}{{endif}}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if count( \IPS\Theme::themes() ) > 1}}
|
|
<li class='ipsMenu_item ipsMenu_subItems'>
|
|
<a href='#elNavTheme_menu' id='elNavTheme'><i class='fa fa-leaf'></i> {lang='acp_skin'}</a>
|
|
<ul id='elNavTheme_menu' class='ipsMenu ipsMenu_selectable ipsHide'>
|
|
{{foreach \IPS\Theme::themes() as $id => $set }}
|
|
{{if $set->canAccess()}}
|
|
<li class='ipsMenu_item{{if \IPS\Member::loggedIn()->acp_skin == $id || ($set->is_default && \IPS\Member::loggedIn()->acp_skin === 0 )}} ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=system&controller=theme&id=$id" csrf="true"}'>{lang="$set->_title"} {{if $set->is_default}}{lang="default"}{{endif}}</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
<li class='ipsMenu_item'><a href='{url="app=core&module=system&controller=login&do=logout"}'><i class='fa fa-power-off'></i> {lang="sign_out"}</a></li>
|
|
</ul>
|
|
<a id='content'></a>
|
|
<main class='ipsColumns ipsColumns_noSpacing' id='acpMainLayout'>
|
|
<nav class='ipsColumn ipsColumn_veryWide ipsResponsive_hidePhone' id='acpAppMenu'>
|
|
{{if isset( \IPS\Output::i()->sidebar['appmenu'] )}}{expression="\IPS\Output::i()->sidebar['appmenu']" raw="true"}{{endif}}
|
|
</nav>
|
|
<div class='ipsColumn ipsColumn_fluid' id='acpMainArea'>
|
|
{template="lkeyWarning" app="core" group="global" location="global" params=""}
|
|
{{if !in_array( 'acpHeader', \IPS\Output::i()->hiddenElements)}}
|
|
<div id='acpPageHeader'>
|
|
{{if count( \IPS\Output::i()->breadcrumb )}}
|
|
<nav class='ipsBreadcrumb ipsSubNavigation'>
|
|
<ul id='breadcrumb' itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
|
|
{{$i = 0;}}
|
|
{{foreach \IPS\Output::i()->breadcrumb as $k => $b}}
|
|
<li>
|
|
{{if $b[0] === NULL}}
|
|
{lang="$b[1]"}
|
|
{{else}}
|
|
<a href='{$b[0]}' itemprop="url">
|
|
<span itemprop="title">{lang="$b[1]"} {{if ( $i + 1 != count( \IPS\Output::i()->breadcrumb ) )}}<i class='fa fa-angle-right'></i>{{endif}}</span>
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{$i++;}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</nav>
|
|
{{endif}}
|
|
<h1 class='ipsType_pageTitle'>
|
|
{$title}
|
|
{{if \IPS\Output::i()->editUrl}}
|
|
<a href="{expression="\IPS\Output::i()->editUrl"}" class="ipsType_medium" data-ipsDialog data-ipsDialog-title="{lang="edit"}"><i class="fa fa-pencil"></i></a>
|
|
{{endif}}
|
|
{{if \IPS\IN_DEV}}
|
|
{template="searchKeywords" group="global" app="core" params="'app=' . \IPS\Request::i()->app . '&module=' . \IPS\Request::i()->module . '&controller=' . \IPS\Request::i()->controller . ( ( isset( \IPS\Request::i()->do ) and \IPS\Request::i()->do != 'do' ) ? ( '&do=' . \IPS\Request::i()->do ) : '' ) . ( ( \IPS\Request::i()->controller == 'enhancements' and ( isset( \IPS\Request::i()->id ) ) ) ? ( '&id=' . \IPS\Request::i()->id ) : '' )"}
|
|
{{endif}}
|
|
</h1>
|
|
</div>
|
|
{{if isset(\IPS\Output::i()->sidebar['actions'])}}
|
|
<div class='acpToolbar ipsClearfix'>
|
|
{template="pageButtons" app="core" group="global" location="admin" params="\IPS\Output::i()->sidebar['actions']"}
|
|
</div>
|
|
{{endif}}
|
|
{{endif}}
|
|
<div id='acpContent'>
|
|
{{if \IPS\Output::i()->inlineMessage}}
|
|
<noscript>
|
|
<div class="ipsMessage ipsMessage_information ipsMessageInABottle">
|
|
{lang="\IPS\Output::i()->inlineMessage"}
|
|
</div>
|
|
</noscript>
|
|
{{endif}}
|
|
|
|
{{if !\IPS\Output::i()->responsive}}
|
|
<div class='ipsResponsive_showPhone ipsResponsive_block ipsType_center'>
|
|
<i class='ipsType_huge fa fa-tablet'></i><br>
|
|
<h2 class='ipsType_sectionHead'>{lang="not_mobile"}</h2>
|
|
<br><br>
|
|
<p class='ipsType_normal'>
|
|
{lang="not_mobile_desc"}
|
|
</p>
|
|
</div>
|
|
<div class='ipsResponsive_hidePhone'>
|
|
{$html|raw}
|
|
</div>
|
|
{{else}}
|
|
{$html|raw}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</main>
|
|
<div id='acpLiveSearchResults' class='ipsHide' data-controller='core.admin.core.liveSearch'>
|
|
<div class='ipsColumns ipsColumns_noSpacing ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_medium' data-role="searchMenu">
|
|
<div data-ipsSideMenu data-ipsSideMenu-type='radio'>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach \IPS\Application::allExtensions( 'core', 'LiveSearch', TRUE, 'core', 'Settings' ) as $key => $extension}}
|
|
{{if $extension->hasAccess()}}
|
|
<li class="ipsSideMenu_item ipsSideMenu_itemDisabled" data-ipsMenuValue='{$key}'><a href="#">{lang="acp_search_title_{$key}"} <span data-role="resultCount" class='ipsSideMenu_itemCount ipsLoading ipsLoading_tiny ipsPad_top'> </span></a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid ipsPad ipsScrollbar' data-role="searchResults"></div>
|
|
</div>
|
|
</div>
|
|
{{if isset( \IPS\Output::i()->sidebar['mobilenav'] )}}{expression="\IPS\Output::i()->sidebar['mobilenav']" raw="true"}{{endif}}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="global" template_name="globalTemplate" template_data="$title,$html,$location=array()" template_location="front" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{expression="output.getTitle( $title )"}</title>
|
|
<!--[if lt IE 9]>
|
|
{{foreach \IPS\Theme::i()->css( 'extra/ie8.css', 'core' ) as $css}}<link rel="stylesheet" type="text/css" href="{$css}">{{endforeach}}
|
|
<script src="{url="applications/core/interface/html5shiv/html5shiv.js" base="none" protocol="\IPS\Http\Url::PROTOCOL_RELATIVE"}"></script>
|
|
<![endif]-->
|
|
{template="includeMeta" app="core" group="global" location="global" params=""}
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" if="theme.js_include != 'footer'" app="core" group="global" location="global" params=""}
|
|
{template="favico" app="core" group="global" location="front" params=""}
|
|
</head>
|
|
<body class='ipsApp ipsApp_front {{if isset( \IPS\Request::i()->cookie['hasJS'] )}}ipsJS_has{{else}}ipsJS_none{{endif}} ipsClearfix{{foreach output.bodyClasses as $class}} {$class}{{endforeach}}' {{if output.globalControllers}}data-controller='{expression="implode( ',', output.globalControllers )"}'{{endif}} {{if isset( output.inlineMessage )}}data-message="{expression="output.inlineMessage"}"{{endif}} data-pageApp='{$location['app']}' data-pageLocation='front' data-pageModule='{$location['module']}' data-pageController='{$location['controller']}' itemscope itemtype="http://schema.org/WebSite">
|
|
<meta itemprop="url" content="{setting="base_url"}">
|
|
<a href='#elContent' class='ipsHide' title='{lang="jump_to_content_desc"}' accesskey='m'>{lang="jump_to_content"}</a>
|
|
{template="offlineMessage" if="!settings.site_online && \IPS\Member::loggedIn()->group['g_access_offline']" app="core" group="global" params=""}
|
|
<div id='ipsLayout_header' class='ipsClearfix'>
|
|
{template="updateWarning" app="core" group="global" params=""}
|
|
{template="lkeyWarning" app="core" group="global" location="global" params=""}
|
|
{{if !in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}{template="mobileNavBar" app="core" group="global" params=""}{{endif}}
|
|
<header>
|
|
<div class='ipsLayout_container'>
|
|
{template="logo" app="core" group="global" params=""}
|
|
{{if !in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}{template="userBar" app="core" group="global" params=""}{{endif}}
|
|
</div>
|
|
</header>
|
|
{template="navBar" app="core" group="global" params=""}
|
|
</div>
|
|
<main role='main' id='ipsLayout_body' class='ipsLayout_container'>
|
|
<div id='ipsLayout_contentArea'>
|
|
<div id='ipsLayout_contentWrapper'>
|
|
{template="breadcrumb" app="core" group="global" params="true, 'top'"}
|
|
{template="sidebar" if="theme.sidebar_position == 'left'" app="core" group="global" params="'left'"}
|
|
<div id='ipsLayout_mainArea'>
|
|
<a id='elContent'></a>
|
|
{advertisement="ad_global_header"}
|
|
{template="acknowledgeWarning" if="\IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings']" params="\IPS\Member::loggedIn()->warnings( 1, FALSE )" group="global" app="core"}
|
|
{template="widgetContainer" group="global" app="core" params="'header', 'horizontal'"}
|
|
{$html|raw}
|
|
{template="widgetContainer" group="global" app="core" params="'footer', 'horizontal'"}
|
|
</div>
|
|
{template="sidebar" if="theme.sidebar_position == 'right'" app="core" group="global" params="'right'"}
|
|
{template="breadcrumb" app="core" group="global" params="false, 'bottom'"}
|
|
</div>
|
|
</div>
|
|
{template="inlineMessage" if="member.msg_show_notification and $conversation = \IPS\core\Messenger\Conversation::latestUnreadConversation()" app="core" group="global" params="$conversation->comments( 1, 0, 'date', 'desc' )"}
|
|
</main>
|
|
<footer id='ipsLayout_footer' class='ipsClearfix'>
|
|
<div class='ipsLayout_container'>
|
|
{advertisement="ad_global_footer"}
|
|
{template="footer" app="core" group="global" params=""}
|
|
</div>
|
|
</footer>
|
|
{{if !in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}{template="mobileNavigation" if="theme.responsive" app="core" group="global" params=""}{{endif}}
|
|
{template="includeJS" if="theme.js_include == 'footer'" app="core" group="global" location="global" params=""}
|
|
{{if settings.ipbseo_ga_enabled}}
|
|
{setting="ipseo_ga"}
|
|
{{endif}}
|
|
{template="viglink" if="settings.viglink_enabled" app="core" group="global" params=""}
|
|
{template="metaTagEditor" if="isset( $_SESSION['live_meta_tags'] ) and $_SESSION['live_meta_tags'] and member.isAdmin()" app="core" group="global" params=""}
|
|
<!--ipsQueryLog-->
|
|
<!--ipsCachingLog-->
|
|
{expression="output.endBodyCode" raw="true"}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="global" template_name="googleMap" template_data="$linkUrl, $imageUrl, $lat=NULL, $long=NULL" template_location="global" template_app="core"><![CDATA[{{if $lat and $long}}
|
|
<span itemscope itemtype='http://schema.org/GeoCoordinates'>
|
|
<meta itemprop='latitude' content='{$lat}'>
|
|
<meta itemprop='longitude' content='{$long}'>
|
|
<a href='{$linkUrl}' target='_blank' itemprop='url'><img src='{$imageUrl}' alt='' class='ipsImage'></a>
|
|
</span>
|
|
{{else}}
|
|
<a href='{$linkUrl}' target='_blank' itemprop='url'><img src='{$imageUrl}' alt='' class='ipsImage'></a>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="guestCommentTeaser" template_data="$item, $login" template_location="front" template_app="core"><![CDATA[
|
|
{{$ref = base64_encode( $item->url() . '#replyForm' );}}
|
|
{{if \IPS\Settings::i()->allow_reg}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<h2 class='ipsType_pageTitle'>{lang="teaser_title_reg"}</h2>
|
|
<p class='ipsType_light ipsType_normal ipsType_reset'>{lang="teaser_desc_reg"}</p>
|
|
|
|
<div class='ipsGrid ipsGrid_collapsePhone ipsSpacer_top'>
|
|
<div class='ipsGrid_span6 ipsAreaBackground_light ipsPad'>
|
|
<h2 class='ipsType_sectionHead'>{lang="teaser_account"}</h2>
|
|
<p class='ipsType_normal ipsType_reset ipsType_light'>{lang="teaser_account_desc"}</p>
|
|
<br>
|
|
<a href='{url="app=core&module=system&controller=register" seoTemplate="register"}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="teaser_account_button"}</a>
|
|
</div>
|
|
<div class='ipsGrid_span6 ipsAreaBackground_light ipsPad'>
|
|
<h2 class='ipsType_sectionHead'>{lang="teaser_signin"}</h2>
|
|
<p class='ipsType_normal ipsType_reset ipsType_light'>{lang="teaser_signin_desc"}</p>
|
|
<br>
|
|
<a href='{url="app=core&module=system&controller=login&ref={$ref}" seoTemplate="login"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton_primary ipsButton_small'>{lang="teaser_signin_button"}</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<h2 class='ipsType_pageTitle'>{lang="teaser_title_noreg"}</h2>
|
|
<p class='ipsType_light ipsType_normal ipsType_reset'>{lang="teaser_desc_noreg"}</p>
|
|
<br>
|
|
<br>
|
|
<a href='{url="app=core&module=system&controller=login&ref={$ref}" seoTemplate="login"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton_alternate ipsButton_large'>{lang="teaser_signin_button"}</a>
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="global" template_name="includeCSS" template_data="" template_location="global" template_app="core"><![CDATA[{{foreach array_unique( \IPS\Output::i()->cssFiles, SORT_STRING ) as $file}}
|
|
<link rel='stylesheet' href='{expression="\IPS\Http\Url::external( $file )->setQueryString( 'v', \IPS\SUITE_UNIQUE_KEY )"}' media='all'>
|
|
{{endforeach}}
|
|
|
|
{{$customCss = \IPS\Theme::i()->css( 'custom.css', 'core', 'front' );}}
|
|
{{foreach $customCss as $css}}
|
|
<link rel='stylesheet' href='{expression="\IPS\Http\Url::external( $css )->setQueryString( 'v', \IPS\SUITE_UNIQUE_KEY )"}' media='all'>
|
|
{{endforeach}}
|
|
|
|
{{if \IPS\Output::i()->headCss}}
|
|
<style type='text/css'>
|
|
{expression="\IPS\Output::i()->headCss" raw="true"}
|
|
</style>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="includeJS" template_data="" template_location="global" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<script type='text/javascript'>
|
|
var ipsDebug = {{if ( \IPS\IN_DEV and \IPS\DEV_DEBUG_JS ) or \IPS\DEBUG_JS}}true{{else}}false{{endif}};
|
|
{{if \IPS\IN_DEV}}
|
|
var CKEDITOR_BASEPATH = '{url="applications/core/dev/ckeditor/" base="none" protocol="\IPS\Http\Url::PROTOCOL_RELATIVE"}';
|
|
{{else}}
|
|
var CKEDITOR_BASEPATH = '{url="applications/core/interface/ckeditor/ckeditor/" base="none" protocol="\IPS\Http\Url::PROTOCOL_RELATIVE"}';
|
|
{{endif}}
|
|
var ipsSettings = {
|
|
{{if \IPS\Dispatcher::hasInstance() and \IPS\Dispatcher::i()->controllerLocation == 'admin'}}
|
|
adsess: "{expression="\IPS\Request::i()->adsess"}",
|
|
{{endif}}
|
|
{{if \IPS\COOKIE_DOMAIN !== NULL}}
|
|
cookie_domain: "{expression="\IPS\COOKIE_DOMAIN"}",
|
|
{{endif}}
|
|
{{if \IPS\COOKIE_PATH !== NULL}}
|
|
cookie_path: "{expression="\IPS\COOKIE_PATH"}",
|
|
{{endif}}
|
|
{{if \IPS\COOKIE_PREFIX !== NULL}}
|
|
cookie_prefix: "{expression="\IPS\COOKIE_PREFIX"}",
|
|
{{endif}}
|
|
{{if mb_substr( \IPS\Settings::i()->base_url, 0, 5 ) == 'https' AND !\IPS\COOKIE_BYPASS_SSLONLY}}
|
|
cookie_ssl: true,
|
|
{{else}}
|
|
cookie_ssl: false,
|
|
{{endif}}
|
|
imgURL: "{resource="./" location="front"}",
|
|
baseURL: "{expression="\IPS\Http\Url::baseUrl( \IPS\Http\Url::PROTOCOL_RELATIVE )"}",
|
|
jsURL: "{expression="rtrim( \IPS\Http\Url::baseUrl( \IPS\Http\Url::PROTOCOL_RELATIVE ), '/' )"}/applications/core/interface/js/js.php",
|
|
csrfKey: "{expression="\IPS\Session::i()->csrfKey"}",
|
|
antiCache: "{expression="\IPS\SUITE_UNIQUE_KEY"}",
|
|
disableNotificationSounds: {{if member.members_bitoptions['disable_notification_sounds']}}true{{else}}false{{endif}},
|
|
useCompiledFiles: {{if \IPS\IN_DEV}}false{{else}}true{{endif}},
|
|
links_external: {setting="links_external"},
|
|
memberID: {expression="( \IPS\Member::loggedIn()->member_id ) ? \IPS\Member::loggedIn()->member_id : 0"}
|
|
};
|
|
</script>
|
|
{{endif}}
|
|
{{foreach array_unique( \IPS\Output::i()->jsFiles, SORT_STRING ) as $js}}
|
|
{{$js = \IPS\Http\Url::external( $js );}}
|
|
<script type='text/javascript' src='{{if $js->data['host'] == parse_url( \IPS\Settings::i()->base_url, PHP_URL_HOST )}}{expression="$js->setQueryString( 'v', \IPS\SUITE_UNIQUE_KEY )"}{{else}}{expression="$js"}{{endif}}' data-ips></script>
|
|
{{endforeach}}
|
|
{{foreach array_unique( \IPS\Output::i()->jsFilesAsync, SORT_STRING ) as $js}}
|
|
<script type="text/javascript" src="{expression="\IPS\Http\Url::external( $js )->setQueryString( 'v', \IPS\SUITE_UNIQUE_KEY )"}" async="true"></script>
|
|
{{endforeach}}
|
|
{{if !\IPS\Request::i()->isAjax() and ( count( \IPS\Output::i()->jsVars ) || \IPS\Output::i()->headJs)}}
|
|
<script type='text/javascript'>
|
|
{{foreach \IPS\Output::i()->jsVars as $k => $v}}
|
|
ips.setSetting( '{$k}', jQuery.parseJSON('{expression="json_encode( $v )" raw="true"}') );
|
|
{{endforeach}}
|
|
{expression="\IPS\Output::i()->headJs" raw="true"}
|
|
</script>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="global" template_name="includeMeta" template_data="" template_location="global" template_app="core"><![CDATA[<meta charset="utf-8">
|
|
{{if theme.responsive}}
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
{{endif}}
|
|
{{if !isset( \IPS\Output::i()->metaTags['og:image'] ) and \IPS\Theme::i()->logo_sharer }}
|
|
<meta property="og:image" content="{theme="logo_sharer"}">
|
|
{{endif}}
|
|
{{foreach \IPS\Output::i()->metaTags as $name => $content}}
|
|
{{if $name != 'title'}}
|
|
{{if is_array( $content ) }}
|
|
{{foreach $content as $_value }}
|
|
<meta {{if mb_substr( $name, 0, 3 ) === 'og:'}}property{{else}}name{{endif}}="{$name}" content="{$_value}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<meta {{if mb_substr( $name, 0, 3 ) === 'og:'}}property{{else}}name{{endif}}="{$name}" content="{$content}">
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<meta name="theme-color" content="{theme="header"}">
|
|
{{foreach \IPS\Output::i()->linkTags as $type => $href}}<link rel="{$type}" href="{expression="$href"}" />{{endforeach}}
|
|
{{foreach \IPS\Output::i()->rssFeeds as $title => $url}}<link rel="alternate" type="application/rss+xml" title="{lang="$title"}" href="{$url}" />{{endforeach}}
|
|
{{if \IPS\Output::i()->base}}
|
|
<base target="{expression="\IPS\Output::i()->base"}">
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="inlineMessage" template_data="$message" template_location="front" template_app="core"><![CDATA[<div id='elInlineMessage' class='ipsPad' title='{lang="messenger_inline_title" sprintf="$message->author()->name"}'>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_medium'>
|
|
{template="userPhoto" app="core" group="global" params="$message->author(), 'medium'"}
|
|
<div class='ipsType_normal'>
|
|
<strong>{$message->item()->title}</strong><br>
|
|
<span class='ipsType_light'>{lang="messenger_inline_date"} {datetime="$message->date"}</span>
|
|
<br>
|
|
<div data-ipsTruncate data-ipsTruncate-type="remove" data-ipsTruncate-size="25 lines">
|
|
{$message->post|raw}
|
|
</div>
|
|
<hr class='ipsHr'>
|
|
<a href='{$message->url()}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="messenger_inline_button"}</a>{{if \IPS\Member::loggedIn()->msg_count_new > 1}} <a href='{url="app=core&module=messaging&controller=messenger" seoTemplate="messaging"}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="messenger_inline_view_all"}</a>{{endif}}{{if $message->canReport()}} <a href='{$message->url('report')}'><span class='ipsResponsive_showPhone ipsResponsive_inline'><i class='fa fa-flag'></i></span><span class='ipsResponsive_hidePhone ipsResponsive_inline'>{lang="report_post"}</span></a>{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="itemIcon" template_data="$iconInfo" template_location="front" template_app="core"><![CDATA[
|
|
<span class='ipsItemStatus {{if $iconInfo['size']}}ipsItemStatus_{$iconInfo['size']}{{endif}}'><i class='{{if $iconInfo['type'] == 'unread'}}fa fa-circle{{endif}}'></i></span>]]></template>
|
|
<template template_group="global" template_name="lkeyWarning" template_data="" template_location="global" template_app="core"><![CDATA[
|
|
{{if $lkeyWarning = \IPS\Output::i()->licenseKeyWarning()}}
|
|
{{if $lkeyWarning == 'none'}}
|
|
<div class="ipsMessage ipsMessage_error" id='elLicenseKey'>
|
|
{lang="license_error_none"}
|
|
</div>
|
|
{{elseif $lkeyWarning == 'expired' && !isset( \IPS\Request::i()->cookie['licenseDismiss'] )}}
|
|
<div class="ipsMessage ipsMessage_general" id='elLicenseKey' data-controller='core.global.core.license'>
|
|
{lang="license_error_expired"}
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
<a href='{url="renew_my_license" ips="true"}' class='ipsButton ipsButton_verySmall ipsButton_veryLight'>{lang="license_renew_now"}</a>
|
|
</li>
|
|
<li>
|
|
<a href='{url="app=core&module=settings&controller=licensekey&do=refresh" base="admin"}' class='ipsButton ipsButton_verySmall ipsButton_veryLight'>{lang="license_check_again"}</a>
|
|
</li>
|
|
</ul>
|
|
<a href='#' data-role='closeMessage' data-ipsTooltip title='{lang="license_dismiss"}'>×</a>
|
|
</div>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="loginPopup" template_data="$login" template_location="front" template_app="core"><![CDATA[<div id='elUserSignIn_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
<div data-role="loginForm">
|
|
{{if count ( $login->forms( FALSE, TRUE ) ) > 1}}
|
|
<div class='ipsColumns ipsColumns_noSpacing'>
|
|
<div class='ipsColumn ipsColumn_wide' id='elUserSignIn_internal'>
|
|
{{endif}}
|
|
{{foreach $login->forms( FALSE, TRUE ) as $k => $form}}
|
|
{{if $k === '_standard'}}
|
|
{$form->customTemplate( array( \IPS\Theme::i()->getTemplate( 'global', 'core', 'front' ), 'loginPopupForm' ) )|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if count ( $login->forms( FALSE, TRUE ) ) > 1}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide'>
|
|
<div class='ipsPad' id='elUserSignIn_external'>
|
|
<div class='ipsAreaBackground_light ipsPad_half'>
|
|
<p class='ipsType_reset ipsType_small ipsType_center'><strong>{lang="sign_in_with_these"}</strong></p>
|
|
<br>
|
|
{{foreach $login->forms( FALSE, TRUE ) as $k => $form}}
|
|
{{if $k !== '_standard'}}
|
|
<div class='ipsPad_half ipsType_center'>
|
|
{$form|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="loginPopupForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsPad ipsForm ipsForm_vertical" method='post' action='{$action}' data-ipsValidation novalidate>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
<h4 class="ipsType_sectionHead">{lang="login"}</h4>
|
|
<br><br>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Text}}
|
|
<li class="ipsFieldRow ipsFieldRow_noLabel ipsFieldRow_fullWidth">
|
|
<input type="{$input->formType}" required placeholder="{lang="$input->name"}" name='{$input->name}' id='{$input->htmlId}'>
|
|
</li>
|
|
{{else}}
|
|
{$input->rowHtml($form)|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<li class="ipsFieldRow ipsFieldRow_fullWidth">
|
|
<br>
|
|
<button type="submit" class="ipsButton ipsButton_primary ipsButton_small" id="elSignIn_submit">{lang="login"}</button>
|
|
<br>
|
|
<p class="ipsType_right ipsType_small">
|
|
<a href='{url="app=core&module=system&controller=lostpass" seoTemplate="lostpassword"}' data-ipsDialog data-ipsDialog-title='{lang="forgotten_password"}'>{lang="forgotten_password"}</a>
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</form>]]></template>
|
|
<template template_group="global" template_name="logo" template_data=" " template_location="front" template_app="core"><![CDATA[{{if \IPS\Theme::i()->logo['front']['url'] !== null }}
|
|
{{$logo = \IPS\File::get( 'core_Theme', \IPS\Theme::i()->logo['front']['url'] )->url;}}
|
|
<a href='{setting="base_url"}' id='elLogo' accesskey='1'><img src="{$logo}" alt='{setting="board_name" escape="true"}'></a>
|
|
{{else}}
|
|
<a href='{setting="base_url"}' id='elSiteTitle' accesskey='1'>{setting="board_name"}</a>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="message" template_data="$message, $type, $debug=NULL, $parse=TRUE, $pad=FALSE" template_location="admin" template_app="core"><![CDATA[{{if $pad}}<div class="ipsPad_half">{{endif}}
|
|
{{if $debug !== NULL}}
|
|
<div class="ipsMessage ipsMessage_{$type}">
|
|
{{if $parse}}
|
|
{lang="$message"}
|
|
{{else}}
|
|
{$message|raw}
|
|
{{endif}}
|
|
<br><br>
|
|
<pre>{$debug}</pre>
|
|
</div>
|
|
{{else}}
|
|
<p class="ipsMessage ipsMessage_{$type}">
|
|
{{if $parse}}
|
|
{lang="$message"}
|
|
{{else}}
|
|
{$message|raw}
|
|
{{endif}}
|
|
</p>
|
|
{{endif}}
|
|
{{if $pad}}</div>{{endif}}]]></template>
|
|
<template template_group="global" template_name="message" template_data="$message, $type, $debug=NULL, $parse=TRUE" template_location="global" template_app="core"><![CDATA[{{if $debug !== NULL}}
|
|
<div class="ipsMessage ipsMessage_{$type}">
|
|
{{if $parse}}
|
|
{lang="$message"}
|
|
{{else}}
|
|
{$message|raw}
|
|
{{endif}}
|
|
<br><br>
|
|
<pre>{$debug}</pre>
|
|
</div>
|
|
{{else}}
|
|
<p class="ipsMessage ipsMessage_{$type}">
|
|
{{if $parse}}
|
|
{lang="$message"}
|
|
{{else}}
|
|
{$message|raw}
|
|
{{endif}}
|
|
</p>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="metaTagEditor" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<div id='elMetaTagEditor' class='ipsToolbox ipsPad ipsScrollbar' data-controller="core.front.system.metaTagEditor">
|
|
<h3 class='ipsToolbox_title ipsType_reset'>{lang="live_meta_tag_editor"}</h3>
|
|
<form accept-charset='utf-8' method='post' action="{url="app=core&module=system&controller=metatags&do=save"}" data-ipsForm>
|
|
<input type='hidden' name='meta_url' value='{expression="\IPS\Output::i()->metaTagsUrl"}'>
|
|
<input type="hidden" name="csrfKey" value="{expression="\IPS\Session::i()->csrfKey"}">
|
|
|
|
<h4 class='ipsToolbox_sectionTitle'>{lang="metatags_page_title"}</h4>
|
|
<input name='meta_tag_title' type='text' value="{expression="\IPS\Output::i()->metaTagsTitle"}">
|
|
<br><br>
|
|
|
|
<h4 class='ipsToolbox_sectionTitle'>{lang="meta_tags_blurb"}</h4>
|
|
|
|
<ul class='ipsList_reset' id='elMetaTagEditor_tags'>
|
|
{{foreach \IPS\Output::i()->metaTags as $name => $content}}
|
|
<li>
|
|
<ul class='ipsForm ipsForm_vertical'>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<select name='meta_tag_name[]'>
|
|
<option value='keywords' {{if $name == 'keywords'}}selected{{endif}}>{lang="meta_keywords"}</option>
|
|
<option value='description' {{if $name == 'description'}}selected{{endif}}>{lang="meta_description"}</option>
|
|
<option value='robots' {{if $name == 'robots'}}selected{{endif}}>{lang="meta_robots"}</option>
|
|
<option value='other' {{if !in_array( $name, array( 'keywords', 'description', 'robots' ) )}}selected{{endif}}>{lang="meta_other"}</option>
|
|
</select>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<input name='meta_tag_name_other[]' type='text' value="{{if !in_array( $name, array( 'keywords', 'description', 'robots' ) )}}{$name}{{endif}}" placeholder='{lang="metatags_name"}'>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<input name='meta_tag_content[]' type='text' value="{$content}" placeholder='{lang="metatags_content"}'>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsHide' data-role='metaTemplate'>
|
|
<ul class='ipsForm ipsForm_vertical'>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<select name='meta_tag_name[]' class='ipsField_fullWidth'>
|
|
<option value='keywords'>{lang="meta_keywords"}</option>
|
|
<option value='description'>{lang="meta_description"}</option>
|
|
<option value='robots'>{lang="meta_robots"}</option>
|
|
<option value='other'>{lang="meta_other"}</option>
|
|
</select>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<input name='meta_tag_name_other[]' type='text' value="" placeholder='{lang="metatags_name"}'>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<input name='meta_tag_content[]' type='text' value="" placeholder='{lang="metatags_content"}'>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<br>
|
|
<a href='#' class='ipsJS_show ipsButton ipsButton_normal ipsButton_fullWidth ipsButton_verySmall' data-action='addMeta'><i class='fa fa-plus'></i> {lang="add_another_meta_tag"}</a>
|
|
|
|
<div class="ipsClearfix ipsPad ipsType_center" id='elMetaTagEditor_submit'>
|
|
<button class='ipsButton ipsButton_important' role='button' type='submit'>{lang="save"}</button>
|
|
<a href="{url="app=core&module=system&controller=metatags&do=end"}" class='ipsButton ipsButton_primary'>{lang="end_metatags"}</a>
|
|
</div>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="miniPagination" template_data="$baseUrl, $pages, $activePage=1, $perPage=25, $ajax=FALSE, $pageParam='page'" template_location="global" template_app="core"><![CDATA[{{if $pages > 1}}
|
|
<ul class='ipsPagination ipsPagination_mini' id='elPagination_{expression="md5($baseUrl)"}'>
|
|
{{foreach range( 1, ( 4 > $pages ) ? $pages : 4 ) as $i}}
|
|
<li class='ipsPagination_page'><a href='{$baseUrl->setQueryString( $pageParam, $i )}' data-ipsTooltip title='{lang="go_to_page_x" sprintf="$i"}'>{$i}</a></li>
|
|
{{endforeach}}
|
|
{{if $pages > 4}}
|
|
<li class='ipsPagination_last'><a href='{$baseUrl->setQueryString( $pageParam, $pages )}' data-ipsTooltip title='{lang="last_page"}'>{$pages} <i class='fa fa-caret-right'></i></a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="mobileNavBar" template_data=" " template_location="front" template_app="core"><![CDATA[<ul id='elMobileNav' class='ipsList_inline ipsResponsive_hideDesktop ipsResponsive_block' data-controller='core.front.core.mobileNav'>
|
|
{{if count( \IPS\Output::i()->breadcrumb )}}
|
|
{{if count( \IPS\Output::i()->breadcrumb ) == 1}}
|
|
<li id='elMobileBreadcrumb'>
|
|
<a href='{setting="base_url"}'>
|
|
<span>{lang="home"}</span>
|
|
</a>
|
|
</li>
|
|
{{else}}
|
|
{{$i = 0;}}
|
|
{{foreach \IPS\Output::i()->breadcrumb as $k => $b}}
|
|
{{if $i + 2 == count( \IPS\Output::i()->breadcrumb )}}
|
|
<li id='elMobileBreadcrumb'>
|
|
<a href='{$b[0]}'>
|
|
<span>{$b[1]}</span>
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{$i++;}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{endif}}
|
|
|
|
{{$defaultStream = \IPS\core\Stream::defaultStream();}}
|
|
<li{{if ! $defaultStream}} class='ipsHide'{{endif}}>
|
|
<a data-action="defaultStream" class='ipsType_light' href='{{if $defaultStream}}{$defaultStream->url()}{{endif}}'><i class='icon-newspaper'></i></a>
|
|
</li>
|
|
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'search' ) )}}
|
|
<li class='ipsJS_show'>
|
|
<a href='{url="app=core&module=search&controller=search" seoTemplate="search"}' data-action="mobileSearch"><i class='fa fa-search'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
<li data-ipsDrawer data-ipsDrawer-drawerElem='#elMobileDrawer'>
|
|
<a href='#'>
|
|
{{$total = \IPS\Member::loggedIn()->notification_cnt;}}
|
|
{{if !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
{{$total += \IPS\Member::loggedIn()->msg_count_new;}}
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) and \IPS\Member::loggedIn()->modPermission('can_view_reports')}}
|
|
{{$total += \IPS\Member::loggedIn()->reportCount();}}
|
|
{{endif}}
|
|
{{if $total}}
|
|
<span class='ipsNotificationCount' data-notificationType='total'>{$total}</span>
|
|
{{endif}}
|
|
<i class='fa fa-navicon'></i>
|
|
</a>
|
|
</li>
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="mobileNavigation" template_data="$menu, $currentTab" template_location="admin" template_app="core"><![CDATA[<div id='elMobileDrawer' class='ipsDrawer ipsHide'>
|
|
<div class='ipsDrawer_menu'>
|
|
<div class='ipsDrawer_content'>
|
|
<ul id='elUserNav_mobile' class='ipsList_inline signed_in ipsClearfix'>
|
|
<li><a href='../'><i class='fa fa-home'></i> {lang="site"}</a></li>
|
|
<li><a href='{url="app=core&module=members&controller=members&do=adminDetails"}'> <i class='fa fa-pencil'></i> {lang="my_details"}</a></li>
|
|
<li><a href='{url="app=core&module=system&controller=login&do=logout"}'><i class='fa fa-power-off'></i> {lang="sign_out"}</a></li>
|
|
</ul>
|
|
<ul class='ipsDrawer_list'>
|
|
{{foreach $menu['tabs'] as $tab => $items}}
|
|
<li class='ipsDrawer_itemParent'>
|
|
<h4 class='ipsDrawer_title'>
|
|
<span class='acpAppList_icon'><i class='fa fa-{lang="menutab__{$tab}_icon"}'></i></span>
|
|
<span class='acpAppList_app'>{lang="menutab__{$tab}"}</span>
|
|
</h4>
|
|
<ul class='ipsDrawer_list'>
|
|
<li data-action="back"><a href='#'>{lang="mobile_menu_back"}</a></li>
|
|
{{foreach $items as $appAndModule => $item}}
|
|
{{if count( $item ) > 1}}
|
|
<li class='ipsDrawer_listTitle'>
|
|
{lang="menu__{$appAndModule}"}
|
|
</li>
|
|
{{foreach $item as $key => $url}}
|
|
<li>
|
|
<a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='ipsDrawer_listTitle'>
|
|
{lang="menutab__{$tab}"}
|
|
</li>
|
|
{{foreach $item as $key => $url}}
|
|
<li>
|
|
<a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="mobileNavigation" template_data=" " template_location="front" template_app="core"><![CDATA[<div id='elMobileDrawer' class='ipsDrawer ipsHide'>
|
|
<a href='#' class='ipsDrawer_close' data-action='close'><span>×</span></a>
|
|
<div class='ipsDrawer_menu'>
|
|
<div class='ipsDrawer_content'>
|
|
{{if \IPS\Member::loggedIn()->member_id}}
|
|
<ul id='elUserNav_mobile' class='ipsList_inline signed_in ipsClearfix'>
|
|
<li class='cNotifications cUserNav_icon'>
|
|
<a href='#elMobNotifications_menu' id='elMobNotifications' data-ipsMenu data-ipsMenu-menuID='elFullNotifications_menu' data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-bell'></i> {{if member.notification_cnt}}<span class='ipsNotificationCount' data-notificationType='notify'>{member="notification_cnt"}</span>{{endif}}
|
|
</a>
|
|
</li>
|
|
{{if !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<li class='cInbox cUserNav_icon'>
|
|
<a href='#elMobInbox_menu' id='elMobInbox' data-ipsMenu data-ipsMenu-menuID='elFullInbox_menu' data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-envelope'></i> {{if \IPS\Member::loggedIn()->msg_count_new}} <span class='ipsNotificationCount' data-notificationType='inbox'>{member="msg_count_new"}</span>{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) and \IPS\Member::loggedIn()->modPermission('can_view_reports')}}
|
|
<li class='cReports cUserNav_icon'>
|
|
<a href='#elMobReports_menu' id='elMobReports' data-ipsMenu data-ipsMenu-menuID='elFullReports_menu' data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-warning'></i> {{if \IPS\Member::loggedIn()->reportCount()}}<span class='ipsNotificationCount' data-notificationType='reports'>{member="reportCount()"}</span>{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
|
|
<div class='ipsSpacer_bottom ipsPad'>
|
|
<ul class='ipsToolList ipsToolList_vertical'>
|
|
{{if \IPS\Member::loggedIn()->member_id}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=login&do=logout" csrf="true"}' class='ipsButton ipsButton_light ipsButton_small ipsButton_fullWidth'>
|
|
{{if isset( $_SESSION['logged_in_as_key'] )}}{lang="switch_to_account" sprintf="$_SESSION['logged_in_from']['name']"}{{else}}{lang="sign_out"}{{endif}}
|
|
</a>
|
|
</li>
|
|
{{else}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=login" seoTemplate="login"}' class='ipsButton ipsButton_light ipsButton_small ipsButton_fullWidth'>{lang="sign_in"}</a>
|
|
</li>
|
|
{{if \IPS\Settings::i()->allow_reg}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=register" seoTemplate="register"}' id='elRegisterButton_mobile' class='ipsButton ipsButton_small ipsButton_fullWidth ipsButton_important'>{lang="sign_up"}</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
|
|
{{if \IPS\Member::loggedIn()->member_id}}
|
|
<li>
|
|
<a class='ipsButton ipsButton_small ipsButton_primary ipsButton_fullWidth' data-action="markSiteRead" data-controller="core.front.core.markRead" href='{url="app=core&module=system&controller=markread" seoTemplate="mark_site_as_read" csrf="true"}'><i class='fa fa-check'></i> {lang="mark_site_read_button"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
|
|
<ul class='ipsDrawer_list'>
|
|
{{if \IPS\Member::loggedIn()->member_id}}
|
|
<li class='ipsDrawer_itemParent'>
|
|
<h4 class='ipsDrawer_title'><a href='#'>{lang="mobile_menu_account"}</a></h4>
|
|
<ul class='ipsDrawer_list'>
|
|
<li data-action="back"><a href='#'>{lang="mobile_menu_back"}</a></li>
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) )}}
|
|
<li><a href='{member="url()"}' title='{lang="view_my_profile"}'>{lang="menu_profile"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->group['g_attach_max'] != 0}}
|
|
<li><a href='{url="app=core&module=system&controller=attachments" seoTemplate="attachments"}'>{lang="my_attachments"}</a></li>
|
|
{{endif}}
|
|
<li><a href='{url="app=core&module=system&controller=followed" seoTemplate="followed_content"}'>{lang="menu_followed_content"}</a></li>
|
|
<li id='elAccountSettingsLinkMobile'><a href='{url="app=core&module=system&controller=settings" seoTemplate="settings"}' title='{lang="edit_account_settings"}'>{lang="menu_settings"}</a></li>
|
|
<li><a href='{url="app=core&module=members&controller=ignore" seoTemplate="ignore"}'>{lang="menu_manage_ignore"}</a></li>
|
|
{{if ( \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) AND \IPS\Member::loggedIn()->modPermission() ) or ( \IPS\Member::loggedIn()->isAdmin() AND !\IPS\Settings::i()->security_remove_acp_link )}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) AND \IPS\Member::loggedIn()->modPermission()}}
|
|
<li><a href='{url="app=core&module=modcp" seoTemplate="modcp"}'>{lang="menu_modcp"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->isAdmin() AND !\IPS\Settings::i()->security_remove_acp_link }}
|
|
<li><a href='{expression="\IPS\Http\Url::baseURL( ( \IPS\Settings::i()->logins_over_https ) ? \IPS\Http\Url::PROTOCOL_HTTPS : \IPS\Http\Url::PROTOCOL_RELATIVE ) . \IPS\CP_DIRECTORY"}' target='_blank'>{lang="menu_admincp"} <i class='fa fa-lock'></i></a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
|
|
{{$primaryBars = \IPS\core\FrontNavigation::i()->roots();}}
|
|
{{$subBars = \IPS\core\FrontNavigation::i()->subBars();}}
|
|
|
|
{{foreach $primaryBars as $id => $item}}
|
|
{{if $item->canView()}}
|
|
{{$children = $item->children();}}
|
|
{{if ( $subBars && isset( $subBars[ $id ] ) && count( $subBars[ $id ] ) ) || $children}}
|
|
<li class='ipsDrawer_itemParent'>
|
|
<h4 class='ipsDrawer_title'><a href='#'>{$item->title()}</a></h4>
|
|
<ul class='ipsDrawer_list'>
|
|
<li data-action="back"><a href='#'>{lang="mobile_menu_back"}</a></li>
|
|
{{if $item->link() && $item->link() !== '#'}}
|
|
<li><a href='{$item->link()}'>{$item->title()}</a></li>
|
|
{{endif}}
|
|
{{if $children}}
|
|
{template="mobileNavigationChildren" group="global" app="core" params="$children"}
|
|
{{endif}}
|
|
{{if $subBars && isset( $subBars[ $id ] ) && count( $subBars[ $id ] )}}
|
|
{template="mobileNavigationChildren" group="global" app="core" params="$subBars[ $id ]"}
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{else}}
|
|
<li><a href='{$item->link()}'>{$item->title()}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="mobileNavigationChildren" template_data="$items" template_location="front" template_app="core"><![CDATA[
|
|
{{foreach $items as $child}}
|
|
{{if $child->canView()}}
|
|
{{if $children = $child->children()}}
|
|
{{$id = md5( uniqid() . mt_rand() );}}
|
|
<li class='ipsDrawer_itemParent'>
|
|
<h4 class='ipsDrawer_title'><a href='#'>{$child->title()}</a></h4>
|
|
<ul class='ipsDrawer_list'>
|
|
<li data-action="back"><a href='#'>{lang="mobile_menu_back"}</a></li>
|
|
{{if $child->link() && $child->link() !== '#'}}
|
|
<li>
|
|
<a href='{$child->link()}'>
|
|
{$child->title()}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{template="mobileNavigationChildren" group="global" app="core" params="$children"}
|
|
</ul>
|
|
</li>
|
|
{{elseif $child instanceof \IPS\core\extensions\core\FrontNavigation\MenuHeader}}
|
|
<li class='ipsDrawer_section'>
|
|
{$child->title()}
|
|
</li>
|
|
{{elseif $child instanceof \IPS\core\extensions\core\FrontNavigation\MenuSeparator}}
|
|
|
|
{{elseif $child instanceof \IPS\core\extensions\core\FrontNavigation\MenuButton}}
|
|
<li class='ipsPad_half'>
|
|
<a href='{$child->link()}' class='ipsButton ipsButton_important ipsButton_verySmall ipsButton_fullWidth'>
|
|
{$child->title()}
|
|
</a>
|
|
</li>
|
|
{{else}}
|
|
<li>
|
|
<a href='{$child->link()}'>
|
|
{$child->title()}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="modBadges" template_data="$member" template_location="front" template_app="core"></template>
|
|
<template template_group="global" template_name="multipleRedirect" template_data="$url" template_location="global" template_app="core"><![CDATA[<div class="ipsRedirect_manualButton">
|
|
<a href='{$url->setQueryString( 'mr', 'MA==' )}' class="ipsButton ipsButton_primary">{lang="start"}</a>
|
|
</div>
|
|
<div data-controller="core.global.core.multipleRedirect" data-url="{$url}">
|
|
<div class="ipsRedirect ipsHide ipsPad">
|
|
<div class="ipsLoading ipsRedirect_loading" data-role="loadingIcon"></div>
|
|
<div class="ipsRedirect_progress ipsHide" data-role="progressBarContainer">
|
|
<div class="ipsProgressBar ipsProgressBar_animated">
|
|
<div class="ipsProgressBar_progress" data-role="progressBar"></div>
|
|
</div>
|
|
</div>
|
|
<span data-role="message"></span>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="navBar" template_data="$preview=FALSE" template_location="front" template_app="core"><![CDATA[{{if !in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}
|
|
<nav class='ipsLayout_container' data-controller='core.front.core.navBar'>
|
|
<div class='ipsNavBar_primary {{if !count( \IPS\core\FrontNavigation::i()->subBars( $preview ) )}}ipsNavBar_noSubBars{{endif}} ipsClearfix'>
|
|
{{if !$preview and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'search' ) ) AND !in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}
|
|
<div id='elSearch' class='ipsPos_right' data-controller='core.front.core.quickSearch' itemprop="potentialAction" itemscope itemtype="http://schema.org/SearchAction" data-default="{expression="\IPS\Output::i()->defaultSearchOption[0]"}">
|
|
<form accept-charset='utf-8' action='{url="app=core&module=search&controller=search" seoTemplate="search"}' method='{{if settings.use_friendly_urls and settings.htaccess_mod_rewrite}}get{{else}}post{{endif}}'>
|
|
<meta itemprop="target" content="{url="app=core&module=search&controller=search&q=" seoTemplate="search"}{q}">
|
|
<input type="hidden" name="type" value="{expression="\IPS\Output::i()->defaultSearchOption[0]"}" data-role="searchFilter">
|
|
<a href='#' id='elSearchFilter' data-ipsMenu data-ipsMenu-selectable='radio' data-ipsMenu-appendTo='#elSearch' class="ipsHide">
|
|
<span data-role='searchingIn'>
|
|
{expression="\IPS\Member::loggedIn()->language()->addToStack( \IPS\Output::i()->defaultSearchOption[1] )"}
|
|
</span>
|
|
<i class='fa fa-caret-down'></i>
|
|
</a>
|
|
<ul id='elSearchFilter_menu' class='ipsMenu ipsMenu_selectable ipsMenu_narrow ipsHide'>
|
|
<li class='ipsMenu_item {{if output.defaultSearchOption[0] == 'all'}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='all'>
|
|
<a href='{url="app=core&module=search&controller=search" csrf="1"}' title='{lang="search_everything"}'>{lang="search_everything"}</a>
|
|
</li>
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{if count( output.contextualSearchOptions )}}
|
|
{{foreach output.contextualSearchOptions as $name => $data}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='{expression="json_encode( $data )"}' data-options='{expression="json_encode( $data )"}'>
|
|
<a href='#'>{$name}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{endif}}
|
|
<li data-role='globalSearchMenuOptions'></li>
|
|
<li class='ipsMenu_item ipsMenu_itemNonSelect'>
|
|
<a href='{url="app=core&module=search&controller=search" seoTemplate="search"}' accesskey='4'><i class='fa fa-cog'></i> {lang="advanced_search"}</a>
|
|
</li>
|
|
</ul>
|
|
<input type='search' id='elSearchField' placeholder='{lang="search_placeholder"}' name='q' itemprop="query-input">
|
|
<button type='submit'><i class='fa fa-search'></i></button>
|
|
</form>
|
|
</div>
|
|
{{endif}}
|
|
<ul data-role="primaryNavBar" class='{{if !$preview}}ipsResponsive_showDesktop ipsResponsive_block{{endif}}'>
|
|
{template="navBarItems" app="core" group="global" location="front" params="\IPS\core\FrontNavigation::i()->roots( $preview ), \IPS\core\FrontNavigation::i()->subBars( $preview ), 0, $preview"}
|
|
<li class='ipsHide' id='elNavigationMore' data-role='navMore'>
|
|
<a href='#' data-ipsMenu data-ipsMenu-appendTo='#elNavigationMore' id='elNavigationMore_dropdown'>{lang="more"}</a>
|
|
<ul class='ipsNavBar_secondary ipsHide' data-role='secondaryNavBar'>
|
|
<li class='ipsHide' id='elNavigationMore_more' data-role='navMore'>
|
|
<a href='#' data-ipsMenu data-ipsMenu-appendTo='#elNavigationMore_more' id='elNavigationMore_more_dropdown'>{lang="more"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsHide ipsMenu ipsMenu_auto' id='elNavigationMore_more_dropdown_menu' data-role='moreDropdown'></ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
{{elseif member.group['g_view_board']}}
|
|
<nav class='ipsLayout_container'>
|
|
<div class='ipsNavBar_primary ipsNavBar_noSubBars ipsClearfix'>
|
|
<a id='elBackHome' href='{setting="base_url"}' title='{lang="go_community_home"}'><i class='fa fa-angle-left'></i> {lang="community_home"}</a></li>
|
|
</div>
|
|
</nav>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="navBarChildren" template_data="$items, $preview=FALSE" template_location="front" template_app="core"><![CDATA[{{foreach $items as $item}}
|
|
{{if $preview or $item->canView()}}
|
|
{{if $children = $item->children()}}
|
|
{{$id = md5( uniqid() . mt_rand() );}}
|
|
<li id='elNavigation_{$id}' class='ipsMenu_item ipsMenu_subItems'>
|
|
<a href='{$item->link()}'>
|
|
{$item->title()}
|
|
</a>
|
|
<ul id='elNavigation_{$id}_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{template="navBarChildren" app="core" group="global" params="$children, $preview"}
|
|
</ul>
|
|
</li>
|
|
{{elseif $item instanceof \IPS\core\extensions\core\FrontNavigation\MenuHeader}}
|
|
<li class='ipsMenu_title'>
|
|
{$item->title()}
|
|
</li>
|
|
{{elseif $item instanceof \IPS\core\extensions\core\FrontNavigation\MenuSeparator}}
|
|
<li class='ipsMenu_sep'>
|
|
<hr>
|
|
</li>
|
|
{{elseif $item instanceof \IPS\core\extensions\core\FrontNavigation\MenuButton}}
|
|
<li class='ipsPad_half'>
|
|
<a href='{$item->link()}' class='ipsButton ipsButton_primary ipsButton_verySmall ipsButton_fullWidth'>
|
|
{$item->title()}
|
|
</a>
|
|
</li>
|
|
{{else}}
|
|
<li class='ipsMenu_item' {$item->attributes()|raw}>
|
|
<a href='{$item->link()}'>
|
|
{$item->title()}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="navBarItems" template_data="$roots, $subBars=NULL, $parent=0, $preview=FALSE" template_location="front" template_app="core"><![CDATA[{{foreach $roots as $id => $item}}
|
|
{{if $preview or $item->canView()}}
|
|
{{if $item->active()}}
|
|
{{\IPS\core\FrontNavigation::i()->activePrimaryNavBar = $item->id;}}
|
|
{{endif}}
|
|
<li {{if $item->active()}}class='ipsNavBar_active' data-active{{endif}} id='elNavSecondary_{$item->id}' data-role="navBarItem" data-navApp="{expression="mb_substr( get_class( $item ), 4, mb_strpos( get_class( $item ), '\\', 4 ) - 4 )"}" data-navExt="{expression="mb_substr( get_class( $item ), mb_strrpos( get_class( $item ), '\\' ) + 1 )"}">
|
|
{{$children = $item->children();}}
|
|
{{if $children}}
|
|
<a href="{{if $item->link()}}{$item->link()}{{else}}#{{endif}}" id="elNavigation_{$id}" data-ipsMenu data-ipsMenu-appendTo='#{{if $parent}}elNavSecondary_{$parent}{{else}}elNavSecondary_{$id}{{endif}}' data-ipsMenu-activeClass='ipsNavActive_menu' data-navItem-id="{$item->id}" {{if $item->active()}}data-navDefault{{endif}}>
|
|
{$item->title()} <i class="fa fa-caret-down"></i>
|
|
</a>
|
|
<ul id="elNavigation_{$id}_menu" class="ipsMenu ipsMenu_auto ipsHide">
|
|
{template="navBarChildren" app="core" group="global" location="front" params="$children, $preview"}
|
|
</ul>
|
|
{{else}}
|
|
<a href="{{if $item->link()}}{$item->link()}{{else}}#{{endif}}" data-navItem-id="{$item->id}" {{if $item->active()}}data-navDefault{{endif}}>
|
|
{$item->title()}
|
|
</a>
|
|
{{endif}}
|
|
{{if $subBars && isset( $subBars[ $id ] ) && count( $subBars[ $id ] )}}
|
|
<ul class='ipsNavBar_secondary {{if !$item->active()}}ipsHide{{endif}}' data-role='secondaryNavBar'>
|
|
{template="navBarItems" app="core" group="global" location="front" params="$subBars[ $id ], NULL, $item->id, $preview"}
|
|
<li class='ipsHide' id='elNavigationMore_{$id}' data-role='navMore'>
|
|
<a href='#' data-ipsMenu data-ipsMenu-appendTo='#elNavigationMore_{$id}' id='elNavigationMore_{$id}_dropdown'>{lang="more"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsHide ipsMenu ipsMenu_auto' id='elNavigationMore_{$id}_dropdown_menu' data-role='moreDropdown'></ul>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="offlineMessage" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<div id='elSiteOffline'>
|
|
<h2 class='ipsType_reset'><i class='fa fa-warning'></i> {lang="offline_message_title"}</h2>
|
|
<p class='ipsType_reset'>{lang="offline_message_desc"}</p>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="pageButtons" template_data="$buttons" template_location="admin" template_app="core"><![CDATA[{{if !empty( $buttons )}}
|
|
<ul class="ipsList ipsList_inline">
|
|
{{foreach $buttons as $action}}
|
|
<li>
|
|
<a
|
|
{{if isset( $action['link'] )}}
|
|
href='{{if mb_substr( $action['link'], 0, 1 ) === '#' or preg_match( '/^[a-z]{3,5}:\/\/.*$/', $action['link'] )}}{$action['link']}{{else}}{url="{$action['link']}"}{{endif}}'
|
|
{{else}}
|
|
href='#'
|
|
{{endif}}
|
|
{{if isset( $action['menu'] )}}
|
|
data-ipsMenu
|
|
id='{{$id = md5( uniqid() );}}{$id}'
|
|
{{endif}}
|
|
class='ipsButton ipsButton_verySmall {{if isset( $action['color'] )}}{$action['color']}{{else}}ipsButton_normal{{endif}} {{if isset( $action['class'] )}}{$action['class']}{{endif}}'
|
|
{{if isset( $action['target'] )}}target="{$action['target']}"{{endif}}
|
|
{{if isset( $action['data'] )}}
|
|
{{foreach $action['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
>
|
|
<i class='fa fa-{$action['icon']}'></i> <span data-role="title">{lang="$action['title']"}</span>{{if isset( $action['menu'] )}} <i class="fa fa-caret-down"></i>{{endif}}
|
|
</a>
|
|
{{if isset( $action['menu'] )}}
|
|
<div id='{$id}_menu' class='ipsMenu {{if isset( $action['menuClass'] )}}{$action['menuClass']}{{endif}} ipsHide'>
|
|
<ul>
|
|
{{foreach $action['menu'] as $item}}
|
|
{{if isset( $item['hr'] ) and $item['hr']}}
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{else}}
|
|
<li class="ipsMenu_item {{if isset( $item['class'] )}}{$item['class']}{{endif}}" {{if isset( $item['data'] )}}{{foreach $item['data'] as $k => $v}} data-{$k}="{$v}"{{endforeach}}{{endif}}>
|
|
<a href="{$item['link']}">
|
|
{{if isset( $item['icon'] )}}
|
|
<i class='fa fa-{$item['icon']}'></i>
|
|
{{endif}}
|
|
<span data-role="title">{lang="$item['title']"}</span>
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="pageHeader" template_data="$title, $blurb='', $rawBlurb=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsPageHeader ipsClearfix ipsSpacer_bottom'>
|
|
<h1 class='ipsType_pageTitle'>{$title}</h1>
|
|
{{if $blurb}}
|
|
<div class='ipsPageHeader_info ipsType_light'>
|
|
{{if !$rawBlurb}}
|
|
{$blurb}
|
|
{{else}}
|
|
{$blurb|raw}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="pagination" template_data="$baseUrl, $pages, $activePage=1, $perPage=25, $ajax=TRUE, $pageParam='page'" template_location="global" template_app="core"><![CDATA[{{if $activePage > 1 || $pages > 1}}
|
|
{{$uniqId = uniqid();}}
|
|
<ul class='ipsPagination' id='elPagination_{expression="md5($baseUrl)"}_{$uniqId}' data-pages='{$pages}' {{if $ajax and theme.ajax_pagination}}data-ipsPagination {{if $pageParam != 'page'}}data-ipsPagination-pageParam='{$pageParam}'{{endif}} data-ipsPagination-pages="{$pages}" data-ipsPagination-perPage='{$perPage}'{{endif}}>
|
|
{{if $activePage != 1}}
|
|
<li class='ipsPagination_first'><a href='{$baseUrl->setQueryString( $pageParam, 1 )}' data-page='1' data-ipsTooltip title='{lang="first_page"}'><i class='fa fa-angle-double-left'></i></a></li>
|
|
<li class='ipsPagination_prev'><a href='{$baseUrl->setQueryString( $pageParam, $activePage - 1 )}' data-page='{expression="$activePage - 1"}' data-ipsTooltip title='{lang="prev_page"}'>{lang="prev"}</a></li>
|
|
{{foreach range( ( ( $activePage - 5 ) > 0 ) ? ( $activePage - 5 ) : 1, $activePage - 1 ) as $idx => $i}}
|
|
<li class='ipsPagination_page'><a href='{$baseUrl->setQueryString( $pageParam, $i )}' data-page='{$i}'>{$i}</a></li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='ipsPagination_first ipsPagination_inactive'><a href='{$baseUrl->setQueryString( $pageParam, 1 )}' data-page='1' data-ipsTooltip title='{lang="first_page"}'><i class='fa fa-angle-double-left'></i></a></li>
|
|
<li class='ipsPagination_prev ipsPagination_inactive'><a href='{$baseUrl->setQueryString( $pageParam, $activePage - 1 )}' data-page='{expression="$activePage - 1"}' data-ipsTooltip title='{lang="prev_page"}'>{lang="prev"}</a></li>
|
|
{{endif}}
|
|
<li class='ipsPagination_page ipsPagination_active'><a href='{$baseUrl->setQueryString( $pageParam, $activePage )}' data-page='{$activePage}'>{$activePage}</a></li>
|
|
{{if $activePage != $pages}}
|
|
{{foreach range( $activePage + 1, ( ( $activePage + 5 ) > $pages ) ? $pages : ( $activePage + 5 ) ) as $idx => $i}}
|
|
<li class='ipsPagination_page'><a href='{$baseUrl->setQueryString( $pageParam, $i )}' data-page='{$i}'>{$i}</a></li>
|
|
{{endforeach}}
|
|
<li class='ipsPagination_next'><a href='{$baseUrl->setQueryString( $pageParam, $activePage + 1 )}' data-page='{expression="$activePage + 1"}' data-ipsTooltip title='{lang="next_page"}'>{lang="next"}</a></li>
|
|
<li class='ipsPagination_last'><a href='{$baseUrl->setQueryString( $pageParam, $pages )}' data-page='{$pages}' data-ipsTooltip title='{lang="last_page"}'><i class='fa fa-angle-double-right'></i></a></li>
|
|
{{else}}
|
|
<li class='ipsPagination_next ipsPagination_inactive'><a href='{$baseUrl->setQueryString( $pageParam, $activePage + 1 )}' data-page='{expression="$activePage + 1"}' data-ipsTooltip title='{lang="next_page"}'>{lang="next"}</a></li>
|
|
<li class='ipsPagination_last ipsPagination_inactive'><a href='{$baseUrl->setQueryString( $pageParam, $pages )}' data-page='{$pages}' data-ipsTooltip title='{lang="last_page"}'><i class='fa fa-angle-double-right'></i></a></li>
|
|
{{endif}}
|
|
{{if $pages > 1}}
|
|
<li class='ipsPagination_pageJump'>
|
|
<a href='#' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elPagination_{expression="md5($baseUrl)"}_{$uniqId}' id='elPagination_{expression="md5($baseUrl)"}_jump'>{lang="pagination" sprintf="$activePage, $pages"} <i class='fa fa-caret-down'></i></a>
|
|
<div class='ipsMenu ipsMenu_narrow ipsPad ipsHide' id='elPagination_{expression="md5($baseUrl)"}_jump_menu'>
|
|
<form accept-charset='utf-8' method='post' action='{$baseUrl->setQueryString( 'page', NULL )}' data-role="pageJump">
|
|
<ul class='ipsForm ipsForm_horizontal'>
|
|
<li class='ipsFieldRow'>
|
|
<input type='number' min='1' max='{$pages}' placeholder='{lang="page_number"}' class='ipsField_fullWidth' name='{$pageParam}'>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<input type='submit' class='ipsButton_fullWidth ipsButton ipsButton_verySmall ipsButton_primary' value='{lang="go"}'>
|
|
</li>
|
|
</ul>
|
|
</form>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="poll" template_data="$poll, $url" template_location="global" template_app="core"><![CDATA[{{if !isset( \IPS\Request::i()->fetchPoll )}}
|
|
<section class='ipsBox' data-controller='core.front.core.poll'>
|
|
{{endif}}
|
|
{{if $poll->canVote() and request._poll != 'results' and ( !$poll->getVote() or request._poll == 'form') and $pollForm = $poll->buildForm()}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>
|
|
{wordbreak="$poll->poll_question"}
|
|
<span class='ipsType_normal ipsType_light'>{lang="poll_num_votes" pluralize="$poll->votes"}</span>
|
|
</h2>
|
|
<div class='ipsPad ipsClearfix' data-role='pollContents'>
|
|
{$pollForm->customTemplate( array( \IPS\Theme::i()->getTemplate( 'global', 'core', 'global' ), 'pollForm' ), $url )|raw}
|
|
</div>
|
|
{{elseif !$poll->canVote() or $poll->getVote() or ( request._poll == 'results' and $poll->canViewResults() )}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>
|
|
{wordbreak="$poll->poll_question"}
|
|
<span class='ipsType_normal ipsType_light'>{lang="poll_num_votes" pluralize="$poll->votes"}</span>
|
|
</h2>
|
|
<div class='ipsPad ipsClearfix' data-role='pollContents'>
|
|
<ol class='ipsList_reset cPollList'>
|
|
{{foreach $poll->choices as $questionId => $question}}
|
|
<li>
|
|
<h3 class='ipsType_sectionHead'>{$questionId}. {wordbreak="$question['question']"}</h3>
|
|
<ul class='ipsList_reset cPollList_choices'>
|
|
{{foreach $question['choice'] as $k => $choice}}
|
|
<li class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span4 ipsType_right ipsType_richText ipsType_break'>
|
|
{$choice|raw}
|
|
</div>
|
|
<div class='ipsGrid_span7'>
|
|
<span class='cPollVoteBar'>
|
|
<span style='width: {{if $poll->votes}}{expression="intval( ( $question['votes'][ $k ] / array_sum( $question['votes'] ) ) * 100 )"}{{else}}0{{endif}}%' data-votes='{{if $poll->votes}}{expression="round( ( $question['votes'][ $k ] / array_sum( $question['votes'] ) ) * 100, 2 )"}{{else}}0{{endif}}%' {{if $poll->votes && intval( ( $question['votes'][ $k ] / $poll->votes ) * 100 ) > 30}}class='cPollVoteBar_inside'{{endif}}></span>
|
|
</span>
|
|
</div>
|
|
<div class='ipsGrid_span1 ipsType_small'>
|
|
{{if $poll->canSeeVoters() && $question['votes'][ $k ] > 0}}
|
|
<a href='{url="app=core&module=system&controller=poll&do=voters&id={$poll->pid}&question={$questionId}&option={$k}"}' title='{lang="view_voters"}' class='ipsType_blendLinks' data-ipsTooltip data-ipsDialog data-ipsDialog-size="narrow" data-ipsDialog-title="{$choice}">
|
|
{{else}}
|
|
<span class='ipsFaded'>
|
|
{{endif}}
|
|
<i class='fa fa-user'></i> {$question['votes'][ $k ]}
|
|
{{if $poll->canSeeVoters() && $question['votes'][ $k ] > 0}}
|
|
</a>
|
|
{{else}}
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
{{if $poll->canVote() || !member.member_id}}
|
|
<hr class='ipsHr'>
|
|
{{if $poll->canVote()}}<a href="{$url->setQueryString( '_poll', 'form' )}" title='{lang="show_vote_options"}' class='ipsButton ipsButton_verySmall ipsButton_light' data-action='viewResults'><i class='fa fa-caret-left'></i> {lang="show_vote_options"}</a>{{endif}}
|
|
{{if !member.member_id}}{lang="poll_guest" htmlsprintf="\IPS\Http\Url::internal( 'app=core&module=system&controller=login', 'front', 'login' ), \IPS\Http\Url::internal( 'app=core&module=system&controller=register', 'front', 'register' )"}{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
{{if !isset( \IPS\Request::i()->fetchPoll )}}
|
|
</section>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="pollForm" template_data="$url, $id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="global" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{foreach $elements as $collection}}
|
|
<ol class='ipsList_reset cPollList cPollList_questions'>
|
|
{{foreach $collection as $idx => $input}}
|
|
<li class='ipsFieldRow ipsFieldRow_noLabel'>
|
|
<h3 class='ipsType_sectionHead'>{$idx}. {wordbreak="$input->label"}</h3>
|
|
{{if !$input->options['multiple']}}
|
|
{template="radio" app="core" location="global" group="forms" params="$input->name, $input->value, $input->required, $input->options['options'], $input->options['disabled'], '', $input->options['disabled']"}
|
|
{{else}}
|
|
{template="checkboxset" app="core" location="global" group="forms" params="$input->name, $input->value, $input->required, $input->options['options'], $input->options['disabled'], $input->options['toggles'], isset( $input->options['descriptions'] ) ? $input->options['descriptions'] : NULL, $input->options['userSuppliedInput']"}
|
|
{{endif}}
|
|
{{if $input->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$input->error"}</span>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
{{endforeach}}
|
|
<hr class='ipsHr'>
|
|
<ul class="ipsPos_left ipsToolList ipsToolList_horizontal ipsList_reset ipsClearfix">
|
|
{{foreach $actionButtons as $button}}
|
|
<li>{$button|raw}</li>
|
|
{{endforeach}}
|
|
<li><a class='ipsButton ipsButton_link' title='{lang="show_results_title"}' href="{$url->setQueryString( '_poll', 'results' )}" {{if !settings.allow_result_view}}data-viewResults-confirm="{lang="warn_allow_result_view"}"{{endif}} data-action='viewResults'>{lang="show_results"}</a></li>
|
|
</ul>
|
|
</form>]]></template>
|
|
<template template_group="global" template_name="pollVoters" template_data="$votes" template_location="global" template_app="core"><![CDATA[<ul class="ipsGrid ipsGrid_collapsePhone ipsPad">
|
|
{{foreach $votes as $vote}}
|
|
<li class='ipsGrid_span6 ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $vote->member_id ), 'mini'"}
|
|
<div class='ipsType_break'>
|
|
<h3 class='ipsType_normal ipsType_reset ipsTruncate ipsTruncate_line'>{member="name" id="$vote->member_id"}</h3>
|
|
<span class="ipsType_light ipsType_medium">{datetime="$vote->vote_date"}</span>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="prefix" template_data="$encoded, $text" template_location="front" template_app="core"><![CDATA[<a href="{url="app=core&module=search&controller=search&tags={$encoded}" seoTemplate="search"}" title="{lang="find_tagged_content" sprintf="$text"}" class='ipsTag_prefix'><span>{$text}</span></a>]]></template>
|
|
<template template_group="global" template_name="prettyprint" template_data="$code" template_location="global" template_app="core"><![CDATA[<pre class='prettyprint'>{$code}</pre>]]></template>
|
|
<template template_group="global" template_name="queryLog" template_data="$log" template_location="front" template_app="core"><![CDATA[<div id="elQueryLog">
|
|
<h3 class='ipsType_center'>{expression="count( $log )"}</h3>
|
|
{{foreach $log as $i => $query}}
|
|
<div>
|
|
<pre class="prettyprint lang-sql" data-ipsDialog data-ipsDialog-content="#elQueryLog{$i}_menu">{$query['query']}</pre>
|
|
{{if $query['extra']}}
|
|
<div class="ipsType_center">
|
|
<strong class="ipsType_warning"><i class="fa fa-exclamation-circle"></i> {$query['extra']}</strong>
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
<div id='elQueryLog{$i}_menu' class='ipsPad ipsHide'>
|
|
<pre>{expression="mb_substr( $query['query'], 0, 120 )"}</pre>
|
|
<hr class="ipsHr">
|
|
<pre class="prettyprint lang-php">{$query['backtrace']}</pre>
|
|
</div>
|
|
</div>
|
|
<hr class="ipsHr">
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="rating" template_data="$size, $value, $max=5" template_location="front" template_app="core"><![CDATA[<ul class='ipsList_inline ipsClearfix ipsRating {{if $size}}ipsRating_{$size}{{endif}}'>
|
|
{{foreach range( 1, $max ) as $i}}
|
|
<li class='{{if $i <= $value}}ipsRating_on{{else}}ipsRating_off{{endif}}'>
|
|
<i class='fa fa-star'></i>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="redirect" template_data="$url, $message" template_location="global" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{lang="redirecting"}</title>
|
|
<meta http-equiv="refresh" content="2; url={$url}">
|
|
{template="includeMeta" app="core" group="global" location="global" params=""}
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
</head>
|
|
<body>
|
|
<p class="ipsMessage ipsMessage_info ipsRedirectMessage">
|
|
<strong>{lang="$message"}</strong><br>
|
|
<br>
|
|
{lang="redirecting_wait"}
|
|
</p>
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="global" template_name="reputation" template_data="$content, $extraClass='', $forceType=NULL" template_location="front" template_app="core"><![CDATA[{{if $content instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
<div data-controller='core.front.core.reputation' class='ipsClearfix {{if $extraClass}}{$extraClass}{{endif}}'>
|
|
{{if settings.reputation_point_types == 'like'}}
|
|
{{if $content->canGiveReputation( 1 ) || $content->canGiveReputation( -1 ) || $content->likeBlurb()}}
|
|
<div class='ipsLikeRep ipsPos_right ipsResponsive_noFloat'>
|
|
{{if $content->likeBlurb()}}
|
|
<span class='ipsLike_contents'>{$content->likeBlurb()|raw}</span>
|
|
{{endif}}
|
|
|
|
{{if $content->canGiveReputation( 1 )}}
|
|
<a href='{$content->url( 'rep' )->setQueryString( 'rep', 1 )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_like ipsButton_alternate'><i class='fa fa-heart'></i> <span class='ipsHide' data-role='repCount'>{$content->reputation()}</span> {lang="like"}</a>
|
|
{{endif}}
|
|
{{if $content->canGiveReputation( -1 )}}
|
|
<a href='{$content->url( 'rep' )->setQueryString( 'rep', -1 )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_like ipsButton_veryLight'><i class='fa fa-times'></i> <span class='ipsHide' data-role='repCount'>{$content->reputation()}</span> {lang="unlike"}</a>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
<div class='ipsLikeRep ipsPos_right'>
|
|
{{if $content->canGiveReputation( 1 )}}
|
|
<a href='{$content->url( 'rep' )->setQueryString( 'rep', 1 )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_rep ipsButton_repUp'><i class='fa fa-arrow-up'></i></a>
|
|
{{endif}}
|
|
{{if $content->canGiveReputation( -1 )}}
|
|
<a href='{$content->url( 'rep' )->setQueryString( 'rep', -1 )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_rep ipsButton_repDown'><i class='fa fa-arrow-down'></i></a>
|
|
{{endif}}
|
|
|
|
{{if settings.reputation_show_content}}
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{$content->url( 'showRep' )}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="rep_log_title"}' title='{lang="see_who_repped"}' data-ipsTooltip class='ipsReputation_count ipsType_blendLinks {{if $content->reputation() < 0}}ipsType_negative{{elseif $content->reputation() > 0}}ipsType_positive{{else}}ipsType_neutral{{endif}}'><i class='fa fa-heart ipsType_small'></i> {$content->reputation()}</a>
|
|
{{else}}
|
|
<span class='ipsReputation_count ipsType_blendLinks {{if $content->reputation() < 0}}ipsType_negative{{elseif $content->reputation() > 0}}ipsType_positive{{else}}ipsType_neutral{{endif}}'><i class='fa fa-heart ipsType_small'></i> {$content->reputation()}</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="global" template_name="reputationBadge" template_data="$author" template_location="front" template_app="core"><![CDATA[{{if settings.reputation_enabled and settings.reputation_show_profile and $author->member_id}}
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{url="app=core&module=members&controller=profile&id={$author->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$author->members_seo_name"}' title="{lang="reputation_badge_tooltip"}" data-ipsTooltip class='ipsRepBadge {{if $author->pp_reputation_points > 0}}ipsRepBadge_positive{{elseif $author->pp_reputation_points < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'>
|
|
{{else}}
|
|
<span title="{lang="reputation_badge_tooltip"}" data-ipsTooltip class='ipsRepBadge {{if $author->pp_reputation_points > 0}}ipsRepBadge_positive{{elseif $author->pp_reputation_points < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'>
|
|
{{endif}}
|
|
<i class='fa {{if $author->pp_reputation_points > 0}}fa-plus-circle{{elseif $author->pp_reputation_points < 0}}fa-minus-circle{{else}}fa-circle{{endif}}'></i> {expression="abs($author->pp_reputation_points)"}
|
|
{{if member.group['gbw_view_reps']}}
|
|
</a>
|
|
{{else}}
|
|
</span>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="reputationLog" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
<li class='ipsGrid_span6 ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $row['member_id'] ), 'mini'"}
|
|
<div>
|
|
<h3 class='ipsType_normal ipsType_reset ipsTruncate ipsTruncate_line'>{member="name" id="$row['member_id']"}</h3>
|
|
<span class='ipsType_light'>
|
|
{{if $row['rep_rating'] === '1' && settings.reputation_point_types != 'like'}}<i class='ipsType_large ipsType_positive fa fa-arrow-circle-up'></i>{{elseif settings.reputation_point_types != 'like'}}<i class='ipsType_large ipsType_negative fa fa-arrow-circle-down'></i>{{endif}} <span class='ipsType_medium'>{datetime="$row['rep_date']"}</span>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="global" template_name="reputationLogTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[<div data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table' {{if $table->getPaginationKey() != 'page'}}data-pageParam='{$table->getPaginationKey()}'{{endif}}>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
|
|
{{if count( $rows )}}
|
|
<ol class='ipsGrid ipsGrid_collapsePhone ipsPad ipsClear {{foreach $table->classes as $class}}{$class} {{endforeach}}' id='elTable_{$table->uniqueId}' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
{{else}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<p class='ipsType_large ipsType_light'>{lang="no_rows_in_table"}</p>
|
|
{{if method_exists( $table, 'container' ) AND $table->container() !== NULL}}
|
|
{{if $table->container()->can('add')}}
|
|
<a href='{$table->container()->url()->setQueryString( 'do', 'add' )}' class='ipsButton ipsButton_primary ipsButton_medium'>
|
|
{lang="submit_first_row"}
|
|
</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="reputationMini" template_data="$repCount, $canRepUp, $canRepDown, $showRepUrl, $giveRepUrl" template_location="front" template_app="core"><![CDATA[<div data-controller='core.front.core.reputation' class='ipsRep_mini'>
|
|
{{if settings.reputation_point_types == 'like'}}
|
|
<div class='ipsLikeRep'>
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{$showRepUrl}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="like_log_title"}' data-ipsTooltip class='ipsReputation_count {{if $repCount == 0}}ipsType_light{{else}}ipsType_blendLinks{{endif}}'><i class='fa fa-heart ipsType_small'></i> {$repCount}</a>
|
|
{{else}}
|
|
<span class='ipsReputation_count {{if $repCount < 0}}ipsType_negative{{elseif $repCount > 0}}ipsType_positive{{else}}ipsType_neutral{{endif}}'><i class='fa {{if $repCount < 0}}fa-minus-circle{{elseif $repCount > 0}}fa-plus-circle{{else}}fa-circle{{endif}} ipsType_small'></i> {$repCount}</span>
|
|
{{endif}}
|
|
{{if $canRepUp}}
|
|
<a href='{$giveRepUrl->setQueryString( array( 'rep' => 1, 'mini' => 1 ) )->csrf()}' data-action="giveReputation">{lang="like"}</a>
|
|
{{endif}}
|
|
{{if $canRepDown}}
|
|
<a href='{$giveRepUrl->setQueryString( array( 'rep' => -1, 'mini' => 1 ) )->csrf()}' data-action="giveReputation">{lang="unlike"}</a>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsLikeRep'>
|
|
{{if $canRepUp}}
|
|
<a href='{$giveRepUrl->setQueryString( array( 'rep' => 1, 'mini' => 1 ) )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_rep ipsButton_repUp'><i class='fa fa-arrow-up'></i></a>
|
|
{{endif}}
|
|
{{if $canRepDown}}
|
|
<a href='{$giveRepUrl->setQueryString( array( 'rep' => -1, 'mini' => 1 ) )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_rep ipsButton_repDown'><i class='fa fa-arrow-down'></i></a>
|
|
{{endif}}
|
|
|
|
{{if settings.reputation_show_content}}
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{$showRepUrl}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="rep_log_title"}' title='{lang="see_who_repped"}' data-ipsTooltip class='ipsReputation_count {{if $repCount < 0}}ipsType_negative{{elseif $repCount > 0}}ipsType_positive{{else}}ipsType_neutral{{endif}}'><i class='fa {{if $repCount < 0}}fa-minus-circle{{elseif $repCount > 0}}fa-plus-circle{{else}}fa-circle{{endif}} ipsType_small'></i> {$repCount}</a>
|
|
{{else}}
|
|
<span class='ipsReputation_count {{if $repCount < 0}}ipsType_negative{{elseif $repCount > 0}}ipsType_positive{{else}}ipsType_neutral{{endif}}'><i class='fa {{if $repCount < 0}}fa-minus-circle{{elseif $repCount > 0}}fa-plus-circle{{else}}fa-circle{{endif}} ipsType_small'></i> {$repCount}</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="reputationOthers" template_data="$content, $lang" template_location="front" template_app="core"><![CDATA[{{if settings.reputation_point_types == 'like'}}
|
|
<a href='{$content->url( 'showRep' )}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="like_log_title"}' title='{lang="see_who_liked"}' data-ipsTooltip>{$lang}</a>
|
|
{{else}}
|
|
<a href='{$content->url( 'showRep' )}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="rep_log_title"}' title='{lang="see_who_repped"}' data-ipsTooltip>{$lang}</a>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="review" template_data="$item, $review, $editorName, $app, $type" template_location="front" template_app="core"><![CDATA[<div id='review-{$review->id}_wrap' data-controller='core.front.core.comment' data-commentApp='{$app}' data-commentType='{$type}-review' data-commentID="{$review->id}" data-quoteData='{expression="json_encode( array('userid' => $review->author()->member_id, 'username' => $review->author()->name, 'timestamp' => $review->mapped('date'), 'contentapp' => $app, 'contenttype' => $type, 'contentid' => $item->id, 'contentcommentid' => $review->id) )"}' class='ipsComment_content ipsType_medium' itemprop='review' itemscope itemtype="http://schema.org/Review">
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_small ipsPhotoPanel_notPhone'>
|
|
{template="userPhoto" app="core" group="global" params="$review->author(), 'small', $review->warningRef(), 'ipsPos_left'"}
|
|
<div>
|
|
<p class='ipsPos_right ipsType_reset ipsType_blendLinks'>
|
|
<a href='{$review->item()->url()->setQueryString( array( 'do' => 'findReview', 'review' => $review->id ) )}' data-ipsTooltip title='{lang="share_this_review"}' data-ipsMenu data-ipsMenu-closeOnClick='false' id='elShareComment_{$review->id}' data-role='shareComment'><i class='fa fa-share-alt'></i></a>
|
|
{{if count( $item->reviewMultimodActions() )}}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="multimod[{$review->id}]" value="1" data-role="moderation" data-actions="{{if $review->hidden() === -1 AND $review->canUnhide()}}unhide{{elseif $review->hidden() === 1 AND $review->canUnhide()}}approve{{elseif $review->canHide()}}hide{{endif}} {{if $review->canDelete()}}delete{{endif}}" data-state='{{if $review->tableStates()}}{$review->tableStates()}{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
{{endif}}
|
|
</p>
|
|
<h3 class="ipsComment_author ipsType_blendLinks">
|
|
<strong class='ipsType_normal' itemprop='author'>{template="userLink" app="core" group="global" params="$review->author(), $review->warningRef()"}</strong>
|
|
{template="reputationBadge" group="global" app="core" params="$review->author()"}
|
|
</h3>
|
|
<p class="ipsComment_meta ipsType_medium ipsType_light">
|
|
{{if $review->mapped('date')}}
|
|
<meta itemprop='datePublished' content='{expression="\IPS\DateTime::ts( $review->mapped('date') )->format( 'Y-m-d' )"}'>{datetime="$review->mapped('date')"}
|
|
{{else}}
|
|
{lang="unknown_date"}
|
|
{{endif}}
|
|
|
|
{{if $review->editLine()}}
|
|
· {$review->editLine()|raw}
|
|
{{endif}}
|
|
{{if $review->hidden()}}
|
|
· {$review->hiddenBlurb()}
|
|
{{endif}}
|
|
{{if $review->hidden() !== 1 and $review instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] }}
|
|
· <a href='{$review->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report"}'>{lang="report"}</a>
|
|
{{endif}}
|
|
</p>
|
|
<ul class='ipsList_inline ipsClearfix ipsRating ipsRating_large' itemprop='reviewRating' itemscope itemtype='http://schema.org/Rating'>
|
|
<meta itemprop='worstRating' content='1'>
|
|
<meta itemprop='bestRating' content='{expression="intval( \IPS\Settings::i()->reviews_rating_out_of )"}'>
|
|
{{foreach range( 1, intval( \IPS\Settings::i()->reviews_rating_out_of ) ) as $i}}
|
|
<li class='{{if $review->mapped('rating') >= $i}}ipsRating_on{{else}}ipsRating_off{{endif}}'>
|
|
{{if $review->mapped('rating') === $i}}<span itemprop='ratingValue' class='ipsHide'>{$i}</span>{{endif}}
|
|
<i class='fa fa-star'></i>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul> {{if $review->mapped('votes_total')}}<strong class='ipsType_medium'>{$review->helpfulLine()|raw}</strong><br>{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class='ipsPad'>
|
|
<div id="review-{$review->id}" data-role="commentContent" class="ipsType_richText ipsType_normal ipsType_break ipsContained" itemprop="reviewBody" data-controller='core.front.core.lightboxedImages'>
|
|
{$review->content()|raw}
|
|
</div>
|
|
|
|
{{if $review->hidden() !== 1}}
|
|
{{if member.member_id and ( !$review->mapped('votes_data') or !array_key_exists( member.member_id, json_decode( $review->mapped('votes_data'), TRUE ) ) ) and $review->author()->member_id != \IPS\Member::loggedIn()->member_id}}
|
|
<span class='ipsType_medium'><strong>{lang="did_you_find_this_helpful"}</strong> <a href='{$review->url('rate')->setQueryString( 'helpful', TRUE )->csrf()}' class='ipsButton ipsButton_verySmall ipsButton_light' data-action="rateReview"><i class='fa fa-check'></i> {lang="yes"}</a> <a href='{$review->url('rate')->setQueryString( 'helpful', FALSE )->csrf()}' class='ipsButton ipsButton_verySmall ipsButton_light' data-action="rateReview"><i class='fa fa-times'></i> {lang="no"}</a></span>
|
|
<br class='ipsClear'>
|
|
{{endif}}
|
|
|
|
{{if $review instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
{template="reputation" group="global" app="core" params="$review, 'ipsPos_right ipsResponsive_noFloat'"}
|
|
{{endif}}
|
|
{{endif}}
|
|
|
|
{{if ( member.member_id and ( !$review->mapped('votes_data') or !array_key_exists( member.member_id, json_decode( $review->mapped('votes_data'), TRUE ) ) ) ) || $review->canEdit() || $review->canDelete() || $review->canHide() || $review->canUnhide()}}
|
|
{{if $review->canEdit() || $review->canDelete() || $review->canHide() || $review->canUnhide()}}
|
|
<ul class='ipsComment_controls ipsClearfix' data-role="commentControls">
|
|
{{if $review->hidden() === 1 && ( $review->canUnhide() || $review->canDelete() )}}
|
|
{{if $review->canUnhide()}}
|
|
<li><a href='{$review->url('unhide')->csrf()}' class='ipsButton ipsButton_verySmall ipsButton_positive' data-action='approveComment'><i class='fa fa-check'></i> {lang="approve"}</a></li>
|
|
{{endif}}
|
|
{{if $review->canDelete()}}
|
|
<li><a href='{$review->url('delete')->csrf()}' data-confirm data-action='deleteComment' data-updateOnDelete="#commentCount" class='ipsButton ipsButton_verySmall ipsButton_negative'><i class='fa fa-times'></i> {lang="delete"}</a></li>
|
|
{{endif}}
|
|
{{if $review->canEdit() || $review->canSplit()}}
|
|
<li>
|
|
<a href='#elControls_{$review->id}_menu' id='elControls_{$review->id}' data-ipsMenu data-ipsMenu-appendTo='#review-{$review->id}_wrap'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elControls_{$review->id}_menu' class='ipsMenu ipsMenu_narrow ipsHide'>
|
|
{{if $review->canEdit()}}
|
|
{{if $review->mapped('first') and $review->item()->canEdit()}}
|
|
<li class='ipsMenu_item'><a href='{$review->item()->url()->setQueryString( 'do', 'edit' )}'>{lang="edit"}</a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item'><a href='{$review->url('edit')}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $review->canSplit()}}
|
|
<li class='ipsMenu_item'><a href='{$review->url('split')}' data-action='splitComment' data-ipsDialog data-ipsDialog-title="{lang="split_to_new" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $item::$title )"}">{lang="split"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $review->canEdit()}}
|
|
<li><a href='{$review->url('edit')}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{if $review->canDelete() || $review->canHide() || $review->canUnhide()}}
|
|
<li>
|
|
<a href='#elControls_review{$review->id}_menu' id='elControls_review{$review->id}' data-ipsMenu data-ipsMenu-appendTo='#review-{$review->id}_wrap'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elControls_review{$review->id}_menu' class='ipsMenu ipsMenu_narrow ipsHide'>
|
|
{{if $review instanceof \IPS\Content\Hideable}}
|
|
{{if !$review->hidden() and $review->canHide()}}
|
|
<li class='ipsMenu_item'><a href='{$review->url('hide')->csrf()}' data-ipsDialog data-ipsDialog-title="{lang="hide"}">{lang="hide"}</a></li>
|
|
{{elseif $review->hidden() and $review->canUnhide()}}
|
|
<li class='ipsMenu_item'><a href='{$review->url('unhide')->csrf()}'>{lang="unhide"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $review->canDelete()}}
|
|
<li class='ipsMenu_item'><a href='{$review->url('delete')->csrf()}' data-confirm data-action='deleteComment' data-updateOnDelete="#reviewCount">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}
|
|
<li class='ipsHide' data-role='commentLoading'>
|
|
<span class='ipsLoading ipsLoading_tiny ipsLoading_noAnim'></span>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
|
|
<div class='ipsMenu ipsMenu_wide ipsHide cPostShareMenu' id='elShareComment_{$review->id}_menu'>
|
|
<div class='ipsPad'>
|
|
<h4 class='ipsType_sectionHead'>{lang="share_this_review"}</h4>
|
|
<hr class='ipsHr'>
|
|
<h5 class='ipsType_normal ipsType_reset'>{lang="link_to_review"}</h5>
|
|
<input type='text' value='{$review->item()->url()->setQueryString( array( 'do' => 'findReview', 'review' => $review->id ) )}' class='ipsField_fullWidth'>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="reviewContainer" template_data="$item, $review" template_location="front" template_app="core"><![CDATA[{{if $review->isIgnored()}}
|
|
<div class='ipsComment ipsComment_ignored ipsPad_half ipsType_light'>
|
|
{lang="ignoring_content" sprintf="$review->author()->name"}
|
|
</div>
|
|
{{else}}
|
|
<article itemscope="" itemtype="http://schema.org/Comment" id="{$review->_id}" class="ipsComment ipsComment_parent ipsClearfix ipsClear {{if $review->hidden()}}ipsModerated{{endif}}">
|
|
{template="review" group="global" app="core" params="$item, $review, $item::$formLangPrefix . 'review', $item::$application, $item::$module"}
|
|
</article>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="reviewHelpful" template_data="$helpful, $total" template_location="front" template_app="core"><![CDATA[
|
|
<span class='ipsResponsive_hidePhone ipsResponsive_inline'>
|
|
{lang="x_members_found_helpful" sprintf="$helpful, \IPS\Member::loggedIn()->language()->pluralize( \IPS\Member::loggedIn()->language()->get( 'x_members' ), array( $total ) )"}
|
|
</span>
|
|
<span class='ipsResponsive_showPhone ipsResponsive_inline'>
|
|
<i class='fa fa-smile-o'></i> {$helpful} / {lang="x_members_found_helpful_phone" pluralize="$total"}
|
|
</span>]]></template>
|
|
<template template_group="global" template_name="rssMenu" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
{{if count( \IPS\Output::i()->rssFeeds )}}
|
|
<a href='#' id='elRSS' class='ipsPos_right ipsType_large' title='{lang="available_rss"}' data-ipsTooltip data-ipsMenu><i class='fa fa-rss-square'></i></a>
|
|
<ul id='elRSS_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{foreach \IPS\Output::i()->rssFeeds as $title => $url}}
|
|
<li class='ipsMenu_item'><a title="{lang="$title"}" href="{$url}">{lang="$title"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="searchKeywords" template_data="$url, $lang=NULL" template_location="admin" template_app="core"><![CDATA[{{if \IPS\IN_DEV}}
|
|
<span id='acplsi_{expression="md5( $url )"}' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='.ipsDialog > div, #acpMainLayout' class='ipsCursor_pointer'>
|
|
{{if isset( \IPS\Dispatcher::i()->searchKeywords[ $url ] )}}
|
|
<span class="ipsBadge ipsBadge_style1">
|
|
<i class="fa fa-search"></i> {expression="count( \IPS\Dispatcher::i()->searchKeywords[ $url ]['keywords'] )"}
|
|
</span>
|
|
{{else}}
|
|
<span class="ipsBadge ipsBadge_style1">
|
|
<i class="fa fa-search"></i> 0
|
|
</span>
|
|
{{endif}}
|
|
</span>
|
|
<div id='acplsi_{expression="md5( $url )"}_menu' class='ipsMenu ipsMenu_wide ipsHide' data-controller="core.admin.core.acpSearchKeywords" data-url="{expression="base64_encode( $url )"}" data-action="{url="app=core&module=system&controller=ajax&do=searchKeywords"}">
|
|
<div class="ipsMenu_headerBar">
|
|
<h4 class="ipsType_sectionHead"><i class='fa fa-cogs'></i> Developer Options</h4>
|
|
</div>
|
|
<div class='ipsPad'>
|
|
<ul class='ipsForm'>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth ipsClearfix'>
|
|
<div class='ipsFieldRow_title'>
|
|
{lang="keywords_language"}
|
|
</div>
|
|
<div class='ipsFieldRow_content'>
|
|
<input type='text' data-role="lang_key" value="{{if isset( \IPS\Dispatcher::i()->searchKeywords[ $url ] )}}{expression="\IPS\Dispatcher::i()->searchKeywords[ $url ]['lang_key']"}{{elseif $lang}}{$lang}{{else}}menu__{expression="\IPS\Request::i()->app"}_{expression="\IPS\Request::i()->module"}_{expression="\IPS\Request::i()->controller"}{{endif}}">
|
|
</div>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth ipsClearfix'>
|
|
<div class='ipsFieldRow_title'>
|
|
{lang="keywords_restriction"}
|
|
</div>
|
|
<div class='ipsFieldRow_content'>
|
|
<select data-role="restriction">
|
|
{{$value = isset( \IPS\Dispatcher::i()->searchKeywords[ $url ] ) ? \IPS\Dispatcher::i()->searchKeywords[ $url ]['restriction'] : \IPS\Dispatcher::i()->menuRestriction;}}
|
|
{{foreach \IPS\Dispatcher::i()->moduleRestrictions as $k => $v}}
|
|
{{if is_array( $v )}}
|
|
<optgroup label="{lang="r__{$k}"}">
|
|
{{foreach $v as $_k => $_v}}
|
|
<option value='{$_k}' {{if $value == $_k}}selected{{endif}}>{lang="r__{$_v}"}</option>
|
|
{{endforeach}}
|
|
</optgroup>
|
|
{{else}}
|
|
<option value='{$k}' {{if $value == $k}}selected{{endif}}>{lang="$v"}</option>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</select>
|
|
</div>
|
|
</li>
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth ipsClearfix'>
|
|
<div class='ipsFieldRow_title'>
|
|
{lang="keywords_keywords"}
|
|
</div>
|
|
<div class='ipsFieldRow_content'>
|
|
<div class="ipsField_stack" data-ipsStack>
|
|
<ul class="ipsList_reset" data-role="stack">
|
|
{{if isset( \IPS\Dispatcher::i()->searchKeywords[ $url ] )}}
|
|
{{foreach \IPS\Dispatcher::i()->searchKeywords[ $url ]['keywords'] as $word}}
|
|
<li class='ipsField_stackItem' data-role="stackItem">
|
|
<span class="ipsField_stackDrag ipsDrag" data-action='stackDrag'>
|
|
<i class='fa fa-bars ipsDrag_dragHandle'></i>
|
|
</span>
|
|
<span class="ipsField_stackDelete ipsCursor_pointer" data-action="stackDelete">
|
|
<i class='fa fa-times'></i>
|
|
</span>
|
|
<div data-ipsStack-wrapper><input type='text' data-role="keywords" value="{$word}"></div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='ipsField_stackItem' data-role="stackItem">
|
|
<span class="ipsField_stackDrag ipsDrag" data-action='stackDrag'>
|
|
<i class='fa fa-bars ipsDrag_dragHandle'></i>
|
|
</span>
|
|
<span class="ipsField_stackDelete ipsCursor_pointer" data-action="stackDelete">
|
|
<i class='fa fa-times'></i>
|
|
</span>
|
|
<div data-ipsStack-wrapper><input type='text' data-role="keywords"></div>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
<button class="ipsField_stackAdd ipsButton ipsButton_light ipsButton_small" data-action="stackAdd" role="button"><i class='fa fa-plus-circle'></i> {lang="stack_add"}</button>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div class="ipsAreaBackground ipsClearfix ipsPad ipsType_center">
|
|
<button type="button" class="ipsButton ipsButton_primary ipsButton_normal" data-action="save">{lang="save"}</button>
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="sharelinks" template_data="$item" template_location="front" template_app="core"><![CDATA[{{if count( $item->sharelinks() ) }}
|
|
<ul class='ipsList_inline ipsList_noSpacing ipsClearfix' data-controller="core.front.core.sharelink">
|
|
{{foreach $item->sharelinks() as $sharelink }}
|
|
<li>{$sharelink|raw}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="shortMessage" template_data="$message, $classes=array(), $parse=TRUE" template_location="admin" template_app="core"><![CDATA[<span class='{expression="implode( ' ', $classes )"}'>{{if $parse}}{lang="$message"}{{else}}{$message|raw}{{endif}}</span>]]></template>
|
|
<template template_group="global" template_name="sidebar" template_data="$items, $activeItem" template_location="admin" template_app="core"><![CDATA[<ul class="ipsList_reset">
|
|
{{foreach $items as $appAndModule => $moduleItems}}
|
|
<li class='{{if count( $moduleItems ) > 1}}has_sub{{endif}} {{if $appAndModule == $activeItem}}active{{endif}}'>
|
|
{{if count( $moduleItems ) > 1}}
|
|
{lang="menu__{$appAndModule}"}
|
|
<ul class="ipsList_reset">
|
|
{{foreach $moduleItems as $key => $url}}
|
|
<li><a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
{{foreach $moduleItems as $key => $url}}
|
|
<a href='{url="$url"}'>{lang="menu__{$appAndModule}_{$key}"}</a>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>]]></template>
|
|
<template template_group="global" template_name="sidebar" template_data="$position='left'" template_location="front" template_app="core"><![CDATA[{{if \IPS\Output::i()->sidebar['enabled'] && ( ( isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== '' ) || ( isset( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) && count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) ) || ( \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canManageWidgets() ) )}}
|
|
<div id='ipsLayout_sidebar' class='ipsLayout_sidebar{$position} {{if !( isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== '' ) && ( !isset( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) || !count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) ) && \IPS\Dispatcher::i()->application->canManageWidgets()}}ipsLayout_sidebarUnused{{endif}}' data-controller='core.front.widgets.sidebar'>
|
|
{{if isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== ''}}
|
|
<aside id="elContextualTools" class='ipsClearfix' {{if isset( \IPS\Output::i()->sidebar['sticky'] )}}data-ipsSticky{{endif}}>
|
|
{expression="\IPS\Output::i()->sidebar['contextual']" raw="true"}
|
|
</aside>
|
|
{{endif}}
|
|
{{if isset(\IPS\Output::i()->sidebar['widgets']['sidebar']) and count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) and ( \IPS\core\Advertisement::loadByLocation( 'ad_sidebar' ) ) }}
|
|
{advertisement="ad_sidebar"}
|
|
<br><br>
|
|
{{endif}}
|
|
{template="widgetContainer" group="global" app="core" params="'sidebar', 'vertical'"}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="signature" template_data="$member" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Member::loggedIn()->isIgnoring( $member, 'signatures' ) AND \IPS\Settings::i()->signatures_enabled AND \IPS\Member::loggedIn()->members_bitoptions['view_sigs']}}
|
|
<div data-role="memberSignature" class='ipsResponsive_hidePhone'>
|
|
<hr class='ipsHr'>
|
|
|
|
{{if member.member_id}}
|
|
{{$uniqid = md5( uniqid() );}}
|
|
<div class='ipsPos_right'>
|
|
<a href='#elSigIgnore{$uniqid}_menu' data-memberID="{$member->member_id}" id='elSigIgnore{$uniqid}' data-role='signatureOptions' data-ipsMenu class='ipsFaded ipsFaded_more ipsFaded_withHover ipsType_light' data-ipsTooltip title='{lang="edit_signature_options"}'>
|
|
<i class='fa fa-times'></i> <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
|
|
<ul class='ipsMenu ipsMenu_medium ipsHide' id='elSigIgnore{$uniqid}_menu'>
|
|
{{if member.member_id != $member->member_id}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='oneSignature'>
|
|
<a href='{url="app=core&module=members&controller=ignore&do=ignoreType&type=signatures&member_id={$member->member_id}" seoTemplate="ignore"}'>{lang="hide_members_signature" sprintf="$member->name"}</a>
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='allSignatures'>
|
|
<a href='{url="app=core&module=system&controller=settings&do=toggleSigs" seoTemplate="settings" csrf="true"}'>{lang="hide_all_signatures"}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
|
|
<div class='ipsType_light ipsType_richText'>
|
|
{$member->signature|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="tabs" template_data="$tabNames, $activeId, $defaultContent, $url, $tabParam='tab'" template_location="admin" template_app="core"><![CDATA[<div class='acpBlock'>
|
|
<div class='ipsTabs ipsClearfix acpFormTabBar' id='elTabs_{expression="md5( $url )"}' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_{expression="md5( $url )"}' {{if \IPS\Request::i()->isAjax()}}data-ipsTabBar-updateURL='false'{{endif}}>
|
|
<a href='#elTabs_{expression="md5( $url )"}' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist'>
|
|
{{foreach $tabNames as $i => $name}}
|
|
<li>
|
|
<a href='{$url->setQueryString( $tabParam, $i )}' id='{expression="md5( $url )"}_tab_{$i}' class="ipsTabs_item {{if $i == $activeId}}ipsTabs_activeItem{{endif}}" title='{lang="{$name}"}' role="tab" aria-selected="{{if $i == $activeId}}true{{else}}false{{endif}}">
|
|
{lang="$name"}
|
|
{{if \IPS\IN_DEV}}{template="searchKeywords" app="core" group="global" params="$url->setQueryString( 'tab', $i )->acpQueryString(), $name"}{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<section id='ipsTabs_content_{expression="md5( $url )"}' class='acpFormTabContent'>
|
|
{{foreach $tabNames as $i => $name}}
|
|
{{if $i == $activeId}}
|
|
<div id='ipsTabs_elTabs_{expression="md5( $url )"}_{expression="md5( $url )"}_tab_{$i}_panel' class="ipsTabs_panel" aria-labelledby="{expression="md5( $url )"}_tab_{$i}" aria-hidden="false">
|
|
{$defaultContent|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</section>
|
|
</div>]]></template>
|
|
<template template_group="global" template_name="tabs" template_data="$tabNames, $activeId, $defaultContent, $url, $tabParam='tab', $parseNames=TRUE, $contained=FALSE" template_location="front" template_app="core"><![CDATA[<div class='ipsTabs ipsClearfix' id='elTabs_{expression="md5( $url )"}' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_{expression="md5( $url )"}' {{if \IPS\Request::i()->isAjax()}}data-ipsTabBar-updateURL='false'{{endif}}>
|
|
<a href='#elTabs_{expression="md5( $url )"}' {{if count ( $tabNames ) > 1}}data-action='expandTabs'><i class='fa fa-caret-down'></i>{{else}}>{{endif}}</a>
|
|
<ul role='tablist'>
|
|
{{foreach $tabNames as $i => $name}}
|
|
<li>
|
|
<a href='{$url->setQueryString( $tabParam, $i )}' id='{expression="md5( $url )"}_tab_{$i}' class="ipsTabs_item {{if $i == $activeId}}ipsTabs_activeItem{{endif}}" title='{{if $parseNames}}{striptags="\IPS\Member::loggedIn()->language()->get( $name )"}{{else}}{striptags="$name"}{{endif}}' role="tab" aria-selected="{{if $i == $activeId}}true{{else}}false{{endif}}">
|
|
{{if $parseNames}}{lang="$name"}{{else}}{$name|raw}{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<section id='ipsTabs_content_{expression="md5( $url )"}' class='ipsTabs_panels {{if $contained}}ipsTabs_contained{{endif}}'>
|
|
{{foreach $tabNames as $i => $name}}
|
|
{{if $i == $activeId}}
|
|
<div id='ipsTabs_elTabs_{expression="md5( $url )"}_{expression="md5( $url )"}_tab_{$i}_panel' class="ipsTabs_panel" aria-labelledby="{expression="md5( $url )"}_tab_{$i}" aria-hidden="false">
|
|
{$defaultContent|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</section>
|
|
]]></template>
|
|
<template template_group="global" template_name="tags" template_data="$tags, $showCondensed=FALSE, $hideResponsive=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
{{if count( $tags )}}
|
|
{{if $showCondensed}}
|
|
<ul class='ipsTags ipsTags_inline ipsList_inline {{if $hideResponsive}}ipsResponsive_hidePhone ipsResponsive_inline{{endif}}'>
|
|
{{foreach $tags as $idx => $tag}}
|
|
{{if $idx < 2}}
|
|
{{$urlEncodedTag = rawurlencode( $tag );}}
|
|
<li>
|
|
<a href="{url="app=core&module=search&controller=search&tags={$urlEncodedTag}" seoTemplate="search"}" title="{lang="find_tagged_content" sprintf="$tag"}"><span>{$tag}</span></a>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if count( $tags ) > 2}}
|
|
{{$id = uniqid();}}
|
|
<li class='ipsType_small'>
|
|
<span class='ipsType_light ipsCursor_pointer' data-ipsMenu id='elTags_{$id}'>{lang="and_x_more" sprintf="count( $tags ) - 2"} <i class='fa fa-caret-down ipsJS_show'></i></span>
|
|
<div class='ipsHide ipsMenu ipsMenu_normal ipsPad_half cTagPopup' id='elTags_{$id}_menu'>
|
|
<p class='ipsType_medium ipsType_reset ipsType_light'>{lang="tagged_with"}</p>
|
|
<ul class='ipsTags ipsList_inline'>
|
|
{{foreach $tags as $tag}}
|
|
{{$urlEncodedTag = rawurlencode( $tag );}}
|
|
<li>
|
|
<a href="{url="app=core&module=search&controller=search&tags={$urlEncodedTag}" seoTemplate="search"}" title="{lang="find_tagged_content" sprintf="$tag"}"><span>{$tag}</span></a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{else}}
|
|
<ul class='ipsTags ipsList_inline {{if $hideResponsive}}ipsResponsive_hidePhone ipsResponsive_inline{{endif}}'>
|
|
{{foreach $tags as $tag}}
|
|
{{$urlEncodedTag = rawurlencode( $tag );}}
|
|
<li>
|
|
<a href="{url="app=core&module=search&controller=search&tags={$urlEncodedTag}" seoTemplate="search"}" title="{lang="find_tagged_content" sprintf="$tag"}"><span>{$tag}</span></a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="textBlock" template_data="$message" template_location="global" template_app="core"><![CDATA[<div class='ipsType_normal'>
|
|
{$message|raw}
|
|
</div>
|
|
<br>
|
|
|
|
]]></template>
|
|
<template template_group="global" template_name="thumbImage" template_data="$image, $name, $size='medium', $classes='', $lang='view_this', $url='', $extension='core_Attachment'" template_location="front" template_app="core"><![CDATA[
|
|
{{if $image}}
|
|
{{$image = ( $image instanceof \IPS\File ) ? (string) $image->url : $image;}}
|
|
{{if $url}}<a href='{$url}' title='{lang="$lang" sprintf="$name"}'{{else}}<span{{endif}} style='background-image: url( "{file="$image" extension="$extension"}" )' class='{$classes} ipsThumb ipsThumb_{$size} ipsThumb_bg'>
|
|
<img src='{file="$image" extension="$extension"}' alt=''>
|
|
{{if $url}}</a>{{else}}</span>{{endif}}
|
|
{{else}}
|
|
{{if $url}}<a href='{$url}' title='{lang="$lang" sprintf="$name"}'{{else}}<span{{endif}} class='{$classes} ipsNoThumb ipsThumb ipsThumb_{$size}'>{{if $url}}</a>{{else}}</span>{{endif}}
|
|
{{endif}} ]]></template>
|
|
<template template_group="global" template_name="truncatedUrl" template_data="$url, $newWindow=TRUE, $length=50" template_location="global" template_app="core"><![CDATA[<a href='{$url}'{{if $newWindow === TRUE}} target='_blank'{{endif}}>{truncate="$url" length="$length"}</a>]]></template>
|
|
<template template_group="global" template_name="updatebadge" template_data="$version, $url, $released='', $blank=TRUE" template_location="admin" template_app="core"><![CDATA[<a href='{$url}' class="ipsType_blendLinks"{{if $blank}}target='_blank'{{endif}} data-ipstooltip title='{{if $released}}{lang="new_version_tip_date" sprintf="$version,$released"}{{else}}{lang="new_version_tip" sprintf="$version"}{{endif}}'>{lang="new_version_available"}</a>]]></template>
|
|
<template template_group="global" template_name="updateWarning" template_data="" template_location="front" template_app="core"><![CDATA[{{if $newVersion = \IPS\Application::load('core')->availableUpgrade( TRUE ) and member.hasAcpRestriction( 'core', 'system', 'upgrade_manage' )}}
|
|
{{if $newVersion['security']}}
|
|
<div class="ipsMessage ipsMessage_error" id='elLicenseKey'>
|
|
{lang="dashboard_version_info" sprintf="$newVersion['version']"}
|
|
{lang="this_is_a_security_update"}
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=upgrade&_new=1" base="admin"}' class='ipsButton ipsButton_verySmall ipsButton_veryLight'>{lang="upgrade_now"}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{elseif !isset( \IPS\Request::i()->cookie['updateBannerDismiss'] )}}
|
|
<div class="ipsMessage ipsMessage_general" id='elLicenseKey' data-controller='core.global.core.updateBanner'>
|
|
{lang="dashboard_version_info" sprintf="$newVersion['version']"}
|
|
<ul class='ipsList_inline'>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=upgrade&_new=1" base="admin"}' class='ipsButton ipsButton_verySmall ipsButton_veryLight'>{lang="upgrade_now"}</a>
|
|
</li>
|
|
</ul>
|
|
<a href='#' data-role='closeMessage' data-ipsTooltip title='{lang="license_dismiss"}'>×</a>
|
|
</div>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="userBar" template_data=" " template_location="front" template_app="core"><![CDATA[{{if \IPS\Member::loggedIn()->member_id }}
|
|
<ul id='elUserNav' class='ipsList_inline cSignedIn ipsClearfix ipsResponsive_showDesktop' data-controller='core.front.core.userbar{{if member.member_id && settings.auto_polling_enabled}},core.front.core.instantNotifications{{endif}}'>
|
|
{{if !\IPS\Member::loggedIn()->restrict_post and count( \IPS\Member::loggedIn()->createMenu() )}}
|
|
<li id='cCreate'>
|
|
<a href='#elCreateNew_menu' id='elCreateNew' data-ipsTooltip data-ipsMenu title='{lang="create_menu_title"}'>
|
|
<strong><i class='fa fa-plus'></i> {lang="create_menu"}</strong> <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
<div id='elCreateNew_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
<ul>
|
|
{{foreach \IPS\Member::loggedIn()->createMenu() as $k => $url}}
|
|
<li class="ipsMenu_item">
|
|
<a href="{$url['link']}"
|
|
{{if isset( $url['extraData'] )}}
|
|
{{foreach $url['extraData'] as $data => $v}}
|
|
{$data}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset($url['title']) AND $url['title']}} data-ipsDialog-title='{lang="$url['title']"}'{{endif}}
|
|
{{if isset($url['flashMessage'])}} data-ipsdialog-flashmessage="{lang="$url['flashMessage']"}"{{endif}}
|
|
>{lang="$k"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
<li class='elUserNav_sep'></li>
|
|
{{endif}}
|
|
<li class='cNotifications cUserNav_icon'>
|
|
<a href='{url="app=core&module=system&controller=notifications" seoTemplate="notifications"}' id='elFullNotifications' data-ipsTooltip title='{lang="userbar_notifications"}' data-ipsMenu data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-bell'></i> <span class='ipsNotificationCount {{if !member.notification_cnt}}ipsHide{{endif}}' data-notificationType='notify' data-currentCount='{member="notification_cnt"}'>{member="notification_cnt"}</span>
|
|
</a>
|
|
<div id='elFullNotifications_menu' class='ipsMenu ipsMenu_wide ipsHide'>
|
|
<div class='ipsMenu_headerBar'>
|
|
<a href="{url="app=core&module=system&controller=notifications&do=options" seoTemplate="notifications_options"}" class="ipsType_light ipsPos_right"><i class="fa fa-cog"></i> {lang="notification_options"}</a>
|
|
<h4 class='ipsType_sectionHead'>{lang="notifications"}</h4>
|
|
</div>
|
|
<div class='ipsMenu_innerContent'>
|
|
<ol class='ipsDataList ipsDataList_readStatus' data-role='notifyList' data-ipsKeyNav data-ipsKeyNav-observe='return' id='elNotifyContent'></ol>
|
|
</div>
|
|
<div class='ipsMenu_footerBar ipsType_center'>
|
|
<a href='{url="app=core&module=system&controller=notifications" seoTemplate="notifications"}'><i class='fa fa-bars'></i> {lang="see_all_notifications"}</a>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{if !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<li class='cInbox cUserNav_icon'>
|
|
<a href='{url="app=core&module=messaging&controller=messenger" seoTemplate="messaging"}' id='elFullInbox' data-ipsTooltip title='{lang="userbar_messages"}' data-ipsMenu data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-envelope'></i> <span class='ipsNotificationCount {{if !\IPS\Member::loggedIn()->msg_count_new}}ipsHide{{endif}}' data-notificationType='inbox' data-currentCount='{member="msg_count_new"}'>{member="msg_count_new"}</span>
|
|
</a>
|
|
<div id='elFullInbox_menu' class='ipsMenu ipsMenu_wide ipsHide'>
|
|
<div class='ipsMenu_headerBar'>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}" class='ipsPos_right ipsButton ipsButton_primary ipsButton_verySmall'>{lang="compose_new"}</a>
|
|
<h4 class='ipsType_sectionHead'>{lang="inbox"}</h4>
|
|
</div>
|
|
<div class='ipsMenu_innerContent'><ol class='ipsDataList' data-role='inboxList' data-ipsKeyNav data-ipsKeyNav-observe='return' id='elInboxContent'></ol></div>
|
|
<div class='ipsMenu_footerBar ipsType_center'>
|
|
<a href='{url="app=core&module=messaging&controller=messenger" seoTemplate="messaging"}'><i class='fa fa-bars'></i> {lang="go_to_inbox"}</a>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) and \IPS\Member::loggedIn()->modPermission('can_view_reports')}}
|
|
<li class='cReports cUserNav_icon'>
|
|
<a href='{url="app=core&module=modcp&controller=modcp&tab=reports" seoTemplate="modcp_reports"}' id='elFullReports' data-ipsTooltip title='{lang="userbar_reports"}' data-ipsMenu data-ipsMenu-closeOnClick='false'>
|
|
<i class='fa fa-warning'></i> {{if \IPS\Member::loggedIn()->reportCount()}}<span class='ipsNotificationCount' data-notificationType='reports'>{member="reportCount()"}</span>{{endif}}
|
|
</a>
|
|
<div id='elFullReports_menu' class='ipsMenu ipsMenu_wide ipsHide'>
|
|
<div class='ipsMenu_headerBar'><h4 class='ipsType_sectionHead'>{lang="report_center_header"}</h4></div>
|
|
<div class='ipsMenu_innerContent' data-role="reportsList"></div>
|
|
<div class='ipsMenu_footerBar ipsType_center'>
|
|
<a href='{url="app=core&module=modcp&controller=modcp&tab=reports" seoTemplate="modcp_reports"}'><i class='fa fa-bars'></i> {lang="report_center_link"}</a>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
<li class='elUserNav_sep'></li>
|
|
<li id='cUserLink'>
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::loggedIn(), 'tiny'"}
|
|
<a href='#elUserLink_menu' id='elUserLink' data-ipsMenu>
|
|
{{if isset( $_SESSION['logged_in_as_key'] )}}{lang="front_logged_in_as" sprintf="$_SESSION['logged_in_from']['name']"} {{endif}}{member="name"} <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
<ul id='elUserLink_menu' class='ipsMenu ipsMenu_normal ipsHide'>
|
|
<li class='ipsMenu_title'>{lang="menu_content"}</li>
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) )}}
|
|
<li class='ipsMenu_item' data-menuItem='profile'><a href='{member="url()"}' title='{lang="view_my_profile"}'>{lang="menu_profile"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) ) and \IPS\Member::loggedIn()->members_disable_pm AND \IPS\Member::loggedIn()->members_disable_pm != 2}}
|
|
<li class='ipsMenu_item' data-menuItem='messages'><a href='{url="app=core&module=messaging&controller=messenger&do=enableMessenger" seoTemplate="messaging"}' title='{lang="go_to_messenger"}' data-confirm data-confirmMessage='{lang="messenger_disabled_msg"}'>{lang="menu_messages"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->group['g_attach_max'] != 0}}
|
|
<li class='ipsMenu_item' data-menuItem='attachments'><a href='{url="app=core&module=system&controller=attachments" seoTemplate="attachments"}'>{lang="my_attachments"}</a></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_title'>{lang="menu_settings_title"}</li>
|
|
<li class='ipsMenu_item' data-menuItem='manageFollowed'><a href='{url="app=core&module=system&controller=followed" seoTemplate="followed_content"}'>{lang="menu_followed_content"}</a></li>
|
|
<li class='ipsMenu_item' id='elAccountSettingsLink' data-menuItem='settings'><a href='{url="app=core&module=system&controller=settings" seoTemplate="settings"}' title='{lang="edit_account_settings"}'>{lang="menu_settings"}</a></li>
|
|
<li class='ipsMenu_item' data-menuItem='ignoredUsers'><a href='{url="app=core&module=members&controller=ignore" seoTemplate="ignore"}'>{lang="menu_manage_ignore"}</a></li>
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{if ( \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) AND \IPS\Member::loggedIn()->modPermission() ) or \IPS\Member::loggedIn()->isAdmin()}}
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) AND \IPS\Member::loggedIn()->modPermission()}}
|
|
<li class='ipsMenu_item' data-menuItem='modcp'><a href='{url="app=core&module=modcp" seoTemplate="modcp"}'>{lang="menu_modcp"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->isAdmin() AND !\IPS\Settings::i()->security_remove_acp_link }}
|
|
<li class='ipsMenu_item' data-menuItem='admincp'><a href='{url="" base="admin"}' target='_blank'><i class='fa fa-lock'></i> {lang="menu_admincp"}</a></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item' data-menuItem='signout'>
|
|
<a href='{url="app=core&module=system&controller=login&do=logout" csrf="true" seoTemplate="logout"}'>
|
|
{{if isset( $_SESSION['logged_in_as_key'] )}}{lang="switch_to_account" sprintf="$_SESSION['logged_in_from']['name']"}{{else}}{lang="sign_out"}{{endif}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
{{else}}
|
|
<ul id='elUserNav' class='ipsList_inline cSignedOut ipsClearfix ipsResponsive_hidePhone ipsResponsive_block'>
|
|
<li id='elSignInLink'>
|
|
<a href='{url="app=core&module=system&controller=login" seoTemplate="login" protocol="\IPS\Settings::i()->logins_over_https"}' data-ipsMenu-closeOnClick="false" data-ipsMenu id='elUserSignIn'>
|
|
{lang="sign_in"} <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
{template="loginPopup" app="core" group="global" params="new \IPS\Login( \IPS\Http\Url::internal( 'app=core&module=system&controller=login', 'front', 'login', NULL, \IPS\Settings::i()->logins_over_https ) )"}
|
|
</li>
|
|
{{if \IPS\Settings::i()->allow_reg}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=register" seoTemplate="register"}' id='elRegisterButton' class='ipsButton ipsButton_normal ipsButton_primary'>
|
|
{lang="sign_up"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="userLink" template_data="$member" template_location="admin" template_app="core"><![CDATA[<a href="{$member->acpUrl()}">{$member->name}</a>]]></template>
|
|
<template template_group="global" template_name="userLink" template_data="$member, $warningRef=NULL, $groupFormatting=FALSE" template_location="front" template_app="core"><![CDATA[{{if $member->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) ) }}<a href='{{if $warningRef}}{$member->url()->setQueryString( 'wr', $warningRef )}{{else}}{$member->url()}{{endif}}' data-ipsHover data-ipsHover-target='{$member->url()->setQueryString( array( 'do' => 'hovercard', 'wr' => $warningRef, 'referrer' => urlencode( \IPS\Request::i()->url() ) ) )}' title="{lang="view_user_profile" sprintf="$member->name"}">{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}</a>{{else}}{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}{{endif}}]]></template>
|
|
<template template_group="global" template_name="userLinkFromData" template_data="$id, $name, $seoName, $groupIdForFormatting=NULL" template_location="front" template_app="core"><![CDATA[{{if $id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) ) }}<a href='{url="app=core&module=members&controller=profile&id={$id}" seoTemplate="profile" seoTitle="$seoName"}' data-ipsHover data-ipsHover-target='{url="app=core&module=members&controller=profile&id={$id}&do=hovercard" seoTemplate="profile" seoTitle="$seoName"}' title="{lang="view_user_profile" sprintf="$name"}">{{if $groupIdForFormatting}}{expression="\IPS\Member\Group::load( $groupIdForFormatting )->formatName( $name )" raw="true"}{{else}}{$name}{{endif}}</a>{{else}}{{if $groupIdForFormatting}}{expression="\IPS\Member\Group::load( $groupIdForFormatting )->formatName( $name )" raw="true"}{{else}}{$name}{{endif}}{{endif}}]]></template>
|
|
<template template_group="global" template_name="userPhoto" template_data="$member, $size='small'" template_location="admin" template_app="core"><![CDATA[<a href="{$member->url()}" class="ipsUserPhoto ipsUserPhoto_{$size}" target="_blank">
|
|
<img src='{$member->photo}' alt=''>
|
|
</a>]]></template>
|
|
<template template_group="global" template_name="userPhoto" template_data="$member, $size='small', $warningRef=NULL, $classes='', $hovercard=TRUE" template_location="front" template_app="core"><![CDATA[{{if $member->member_id and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) )}}
|
|
{{$memberURL = ( $warningRef ) ? $member->url()->setQueryString( 'wr', $warningRef ) : $member->url();}}
|
|
<a href="{$memberURL}" {{if $hovercard}}data-ipsHover data-ipsHover-target="{$memberURL->setQueryString( 'do', 'hovercard' )}"{{endif}} class="ipsUserPhoto ipsUserPhoto_{$size}{{if $classes}} {$classes}{{endif}}" title="{lang="view_user_profile" sprintf="$member->name"}">
|
|
<img src='{$member->photo}' alt='' itemprop="image">
|
|
</a>
|
|
{{else}}
|
|
<span class='ipsUserPhoto ipsUserPhoto_{$size} {{if $classes}}{$classes}{{endif}}'>
|
|
<img src='{$member->photo}' alt='' itemprop="image">
|
|
</span>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="userPhotoFromData" template_data="$id, $name, $seoName, $photoUrl, $size='small', $classes='', $hovercard=TRUE" template_location="front" template_app="core"><![CDATA[{{if $id and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) )}}
|
|
<a href="{url="app=core&module=members&controller=profile&id={$id}" seoTemplate="profile" seoTitle="$seoName"}" {{if $hovercard}}data-ipsHover data-ipsHover-target="{url="app=core&module=members&controller=profile&id={$id}&do=hovercard" seoTemplate="profile" seoTitle="$seoName"}"{{endif}} class="ipsUserPhoto ipsUserPhoto_{$size}{{if $classes}} {$classes}{{endif}}" title="{lang="view_user_profile" sprintf="$name"}">
|
|
<img src='{$photoUrl}' alt=''>
|
|
</a>
|
|
{{else}}
|
|
<span class='ipsUserPhoto ipsUserPhoto_{$size} {{if $classes}}{$classes}{{endif}}'>
|
|
<img src='{$photoUrl}' alt=''>
|
|
</span>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="viglink" template_data="" template_location="front" template_app="core"><![CDATA[<!--VIGLINK-->
|
|
{{if \IPS\Settings::i()->viglink_groups =='all' or \IPS\Member::loggedIn()->inGroup( explode( ',', \IPS\Settings::i()->viglink_groups ) )}}
|
|
<script type="text/javascript">
|
|
var vglnk = { api_url: '//api.viglink.com/api',
|
|
key: '{setting="viglink_api_key"}'{{if \IPS\Settings::i()->viglink_subid}},
|
|
sub_id: '{setting="viglink_subid"}'
|
|
{{endif}}
|
|
};
|
|
|
|
(function(d, t) {
|
|
var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;
|
|
s.src = ('https:' == document.location.protocol ? vglnk.api_url :
|
|
'//cdn.viglink.com/api') + '/vglnk.js';
|
|
var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);
|
|
}(document, 'script'));
|
|
</script>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="vineEmbed" template_data="$url" template_location="global" template_app="core"><![CDATA[<div class="ipsEmbeddedVideo {{if \IPS\Settings::i()->max_video_width > 0}}ipsEmbeddedVideo_limited{{endif}}" contenteditable="false"><div><iframe class="vine-embed" src="{$url}/embed/simple" width="600" height="600" frameborder="0"></iframe><script async src="//platform.vine.co/static/scripts/embed.js" charset="utf-8"></script></div></div>]]></template>
|
|
<template template_group="global" template_name="widgetContainer" template_data="$id, $orientation='horizontal'" template_location="front" template_app="core"><![CDATA[
|
|
{{if ( isset( \IPS\Output::i()->sidebar['widgets'][ $id ] ) && count( \IPS\Output::i()->sidebar['widgets'][ $id ] ) ) || ( \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canManageWidgets() )}}
|
|
<div class='cWidgetContainer {{if !isset( \IPS\Output::i()->sidebar['widgets'][ $id ] ) or !count( \IPS\Output::i()->sidebar['widgets'][ $id ] )}}ipsHide{{endif}}' {{if \IPS\Dispatcher::i()->application->canManageWidgets()}}data-controller='core.front.widgets.area'{{endif}} data-role='widgetReceiver' data-orientation='{$orientation}' data-widgetArea='{$id}'>
|
|
<ul class='ipsList_reset'>
|
|
{{if isset( \IPS\Output::i()->sidebar['widgets'][ $id ] )}}
|
|
{{foreach \IPS\Output::i()->sidebar['widgets'][ $id ] as $widget}}
|
|
<li class='ipsWidget ipsWidget_{$orientation} ipsBox{{if trim( (string) $widget ) === ''}} ipsWidgetHide ipsHide{{endif}}' data-blockID='{{if isset($widget->app) AND !empty($widget->app)}}app_{$widget->app}_{{else}}plugin_{$widget->plugin}_{{endif}}{$widget->key}_{$widget->uniqueKey}'{{if $widget->hasConfiguration()}} data-blockConfig="true"{{endif}} data-blockTitle="{lang="block_{$widget->key}"}" data-controller='core.front.widgets.block'>{$widget|raw}</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="global" template_name="wizard" template_data="$stepNames, $activeStep, $output, $baseUrl, $showSteps" template_location="global" template_app="core"><![CDATA[<div data-ipsWizard>
|
|
{{if $showSteps}}
|
|
<ul class="ipsStepBar ipsClearFix" data-role="wizardStepbar">
|
|
{{$doneSteps = TRUE;}}
|
|
{{foreach $stepNames as $step => $name}}
|
|
{{if $activeStep == $name}}{{$doneSteps = FALSE;}}{{endif}}
|
|
<li class='ipsStep {{if $activeStep == $name}}ipsStep_active{{endif}}'>
|
|
{{if $doneSteps}}
|
|
<a href="{$baseUrl->setQueryString( '_step', $name )}" data-action="wizardLink">
|
|
{{else}}
|
|
<span>
|
|
{{endif}}
|
|
<strong class='ipsStep_title'>{lang="step_number" sprintf="$step + 1"}</strong>
|
|
<span class='ipsStep_desc'>{lang="$name"}</span>
|
|
{{if $doneSteps}}
|
|
</a>
|
|
{{else}}
|
|
</span>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
<div data-role="wizardContent">
|
|
{$output|raw}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="licensekey" template_name="overview" template_data="$licenseData" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad ipsAreaBackground_light">
|
|
{{if $licenseData['expires']}}
|
|
<span class="ipsBadge ipsBadge_medium ipsBadge_{{if strtotime( $licenseData['expires'] ) > time()}}positive{{else}}negative{{endif}} ipsPos_right">
|
|
{lang="license_expires"}{datetime="strtotime( $licenseData['expires'] )"}
|
|
</span>
|
|
{{endif}}
|
|
|
|
<h3 class='ipsType_sectionHead'>
|
|
{{if $licenseData['cloud']}}
|
|
{lang="license_name_cloud"}
|
|
{{else}}
|
|
{lang="license_name_license"}
|
|
{{endif}}
|
|
<br>
|
|
{expression="substr_replace( $licenseData['key'], '**********', -10 )"}
|
|
</h3>
|
|
|
|
<p class='ipsType_light'>
|
|
{lang="license_url" sprintf="$licenseData['url']"}
|
|
{{if $licenseData['test_url']}}
|
|
<br>
|
|
{lang="license_test_url" sprintf="$licenseData['test_url']"}
|
|
{{endif}}
|
|
</p>
|
|
</div>
|
|
<br>
|
|
<div class="ipsPad ipsAreaBackground_light">
|
|
<h3 class="ipsType_sectionHead">{lang="licensekey_benefits_head"}</h3><br>
|
|
<br>
|
|
<ul class="ipsDataList ipsDataList_reducedSpacing">
|
|
{{foreach array( 'forums', 'calendar', 'blog', 'gallery', 'downloads', 'cms', 'nexus', 'spam', 'copyright' ) as $k}}
|
|
{{if $k !== 'copyright' or ( isset( $licenseData['products'][ $k ] ) and $licenseData['products'][ $k ] )}}
|
|
<li class="ipsDataItem">
|
|
<div class="ipsDataItem_icon">
|
|
{{if isset( $licenseData['products'][ $k ] ) and $licenseData['products'][ $k ]}}
|
|
{{if $k == 'spam' and strtotime( $licenseData['expires'] ) < time()}}
|
|
<i class="ipsType_large fa fa-exclamation-triangle"></i>
|
|
{{else}}
|
|
<i class="ipsType_large fa fa-check"></i>
|
|
{{endif}}
|
|
{{else}}
|
|
<i class="ipsType_large fa fa-times"></i>
|
|
{{endif}}
|
|
</div>
|
|
<div class="ipsDataItem_main">
|
|
<h4 class="ipsDataItem_title">{lang="license_benefit_$k"}</h4>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<li class="ipsDataItem">
|
|
<div class="ipsDataItem_icon">
|
|
{{if strtotime( $licenseData['expires'] ) > time()}}
|
|
<i class="ipsType_large fa fa-check"></i>
|
|
{{else}}
|
|
<i class="ipsType_large fa fa-exclamation-triangle"></i>
|
|
{{endif}}
|
|
</div>
|
|
<div class="ipsDataItem_main">
|
|
<h4 class="ipsDataItem_title">{lang="license_benefit_chat" sprintf="$licenseData['chat_limit']"}</h4>
|
|
</div>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<div class="ipsDataItem_icon">
|
|
{{if strtotime( $licenseData['expires'] ) > time()}}
|
|
<i class="ipsType_large fa fa-check"></i>
|
|
{{else}}
|
|
<i class="ipsType_large fa fa-exclamation-triangle"></i>
|
|
{{endif}}
|
|
</div>
|
|
<div class="ipsDataItem_main">
|
|
<h4 class="ipsDataItem_title">{lang="license_benefit_support" sprintf="$licenseData['support']"}</h4>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="livesearch" template_name="generic" template_data="$url, $lang" template_location="admin" template_app="core"><![CDATA[<li class='ipsPad_half ipsClearfix' data-role='result'>
|
|
<a href='{$url}' class='ipsPos_left'>{lang="$lang"}</a>
|
|
</li>
|
|
|
|
]]></template>
|
|
<template template_group="livesearch" template_name="group" template_data="$group" template_location="admin" template_app="core"><![CDATA[<li class='ipsPad_half ipsClearfix' data-role='result'>
|
|
<a href='{url="app=core&module=members&controller=groups&do=form&id="}{$group->g_id}' class='ipsPos_left'>{$group->name}</a>
|
|
</li>
|
|
|
|
]]></template>
|
|
<template template_group="livesearch" template_name="member" template_data="$member" template_location="admin" template_app="core"><![CDATA[<li class='ipsPhotoPanel ipsPhotoPanel_mini ipsPad_half ipsClearfix' data-role='result'>
|
|
<a href='{url="app=core&module=members&controller=members&do=edit&id="}{$member->member_id}' class='ipsPos_left'>{template="userPhoto" app="core" group="global" params="$member, 'mini'"}</a>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'><strong><a href='{url="app=core&module=members&controller=members&do=edit&id="}{$member->member_id}'>{$member->name}</a></strong></h2><br>
|
|
{expression="$member->groupName" raw="true"} · <span class='ipsType_light'>{$member->email}</span>
|
|
</div>
|
|
</li>
|
|
|
|
]]></template>
|
|
<template template_group="login" template_name="facebook" template_data="$url" template_location="global" template_app="core"><![CDATA[
|
|
<a href='{$url}' class='ipsButton ipsButton_verySmall ipsButton_fullWidth ipsSocial ipsSocial_facebook'>
|
|
<span class='ipsSocial_icon'><i class='fa fa-facebook'></i></span>
|
|
<span class='ipsSocial_text'>{lang="login_facebook"}</span>
|
|
</a>]]></template>
|
|
<template template_group="login" template_name="google" template_data="$url" template_location="global" template_app="core"><![CDATA[<a href='{$url}' class='ipsButton ipsButton_verySmall ipsButton_fullWidth ipsSocial ipsSocial_google'>
|
|
<span class='ipsSocial_icon'><i class='fa fa-google-plus'></i></span>
|
|
<span class='ipsSocial_text'>{lang="login_google"}</span>
|
|
</a>]]></template>
|
|
<template template_group="login" template_name="linkedin" template_data="$url" template_location="global" template_app="core"><![CDATA[<a href='{$url}' class='ipsButton ipsButton_verySmall ipsButton_fullWidth ipsSocial ipsSocial_linkedIn'>
|
|
<span class='ipsSocial_icon'><i class='fa fa-linkedin'></i></span>
|
|
<span class='ipsSocial_text'>{lang="login_linkedin"}</span>
|
|
</a>]]></template>
|
|
<template template_group="login" template_name="live" template_data="$url" template_location="global" template_app="core"><![CDATA[
|
|
<a href='{$url}' class='ipsButton ipsButton_verySmall ipsButton_fullWidth ipsSocial ipsSocial_microsoft'>
|
|
<span class='ipsSocial_icon'><i class='fa fa-windows'></i></span>
|
|
<span class='ipsSocial_text'>{lang="login_live"}</span>
|
|
</a>]]></template>
|
|
<template template_group="login" template_name="twitter" template_data="$url" template_location="global" template_app="core"><![CDATA[<a href='{expression="str_replace( '&', '&', $url )"}' class='ipsButton ipsButton_verySmall ipsButton_fullWidth ipsSocial ipsSocial_twitter'>
|
|
<span class='ipsSocial_icon'><i class='fa fa-twitter'></i></span>
|
|
<span class='ipsSocial_text'>{lang="login_twitter"}</span>
|
|
</a>]]></template>
|
|
<template template_group="logs" template_name="adminLogin" template_data="$log, $request" template_location="admin" template_app="core"><![CDATA[ <div class="ipsAreaBackground_light ipsPad">
|
|
<h3 class="ipsType_sectionHead ipsPad">{lang="adminloginlogs_general"}</h3>
|
|
{template="definitionTable" app="core" group="global" params="$log"}
|
|
<h3 class="ipsType_sectionHead ipsPad">{lang="adminloginlogs_request"}</h3>
|
|
{template="definitionTable" app="core" group="global" params="$request"}
|
|
</div>
|
|
|
|
]]></template>
|
|
<template template_group="logs" template_name="emailErrorBody" template_data="$log" template_location="admin" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad'>
|
|
<div>
|
|
<label>{lang="emailerrorlogs_mlog_from"}</label>
|
|
<strong>{$log['mlog_from']}</strong>
|
|
</div>
|
|
<pre>{$log['mlog_content']}</pre>
|
|
</div>]]></template>
|
|
<template template_group="logs" template_name="emailErrorLog" template_data="$value, $log" template_location="admin" template_app="core"><![CDATA[{$value|raw}
|
|
{{if !empty($log['mlog_smtp_log']) }}
|
|
<a data-ipsDialog data-ipsDialog-content="#errorLog-{$log['mlog_id']}" data-ipsDialog-title="{lang="emailerrorlog_logtitle"}" href='#errorLog-{$log['mlog_id']}'>{lang="view_full_smtp_log"}</a>
|
|
<div class='ipsHide ipsAreaBackground ipsPad' id='errorLog-{$log['mlog_id']}'><pre>{$log['mlog_smtp_log']}</pre></div>
|
|
{{endif}}]]></template>
|
|
<template template_group="members" template_name="acpRestrictions" template_data="$current, $restrictions, $row" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm_horizontal" action="{url="app=core&module=staff&controller=admin&do=save&id={$row['row_id']}&type={$row['row_id_type']}"}" method="post">
|
|
<div class='ipsTabs ipsClearfix ipsJS_show acpFormTabBar' id='elRestrictions_tab' data-ipsTabBar data-ipsTabBar-contentArea="#elRestrictions_content">
|
|
<a href='#elRestrictions_tab' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role="tablist">
|
|
{{foreach $restrictions['applications'] as $appKey => $appId}}
|
|
<li><a class="ipsTabs_item {{if $appKey === 'core'}}ipsTabs_activeItem{{endif}}" id='{$appId}_tab_{$appKey}' href='#ipsTabs_elRestrictions_tab_{$appId}_tab_{$appKey}_panel' role="tab" aria-selected="{{if $appKey == 'core'}}true{{else}}false{{endif}}">{lang="__app_$appKey"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class='acpFormTabContent' id='elRestrictions_content'>
|
|
{{foreach $restrictions['applications'] as $appKey => $appId}}
|
|
<div id='ipsTabs_elRestrictions_tab_{$appId}_tab_{$appKey}_panel' class='ipsTabs_panel' aria-labelledby="{$appId}_tab_{$appKey}" aria-hidden="{{if $appKey === 'core'}}false{{else}}true{{endif}}">
|
|
<div class='ipsPad' data-controller='core.admin.members.restrictions'>
|
|
<div class='ipsAreaBackground ipsPad acpAppRestrictions_header'>
|
|
<input type="checkbox" data-ipsToggle name="r[applications][]" id='elRestrict_{$appKey}' value="{$appKey}" {{if $current === '*' or ( isset( $current['applications'] ) and in_array( $appKey, $current['applications'] ) )}}checked="checked"{{endif}}> <label for='elRestrict_{$appKey}'><span class='ipsType_sectionHead'>{lang="acprestrictions_app" sprintf="\IPS\Member::loggedIn()->language()->addToStack('__app_' . $appKey )"}</span></label>
|
|
</div>
|
|
<br><br>
|
|
|
|
<ul id='elRestrictions_root_{$appId}_tab_{$appKey}' class='acpAppRestrictions_panel'>
|
|
{{if isset( $restrictions['modules'] ) AND isset( $restrictions['modules'][ $appId ] ) }}
|
|
{{foreach $restrictions['modules'][ $appId ] as $moduleKey => $moduleId}}
|
|
<li class='ipsPad'>
|
|
<div class="acpRestrictions_header">
|
|
<input type="checkbox" data-ipsToggle name="r[modules][]" id='elRestrict_{$appKey}_{$moduleKey}' value="{$moduleKey}" {{if $current === '*' or ( isset( $current['modules'] ) and in_array( $moduleKey, $current['modules'] ) )}}checked="checked"{{endif}}> <h2><label for='elRestrict_{$appKey}_{$moduleKey}'><strong>{lang="menu__{$appKey}_{$moduleKey}"}</strong></h2> <span data-role='toggle' class='ipsJS_show'><a href='#' data-action='expandAll'><strong>{lang="expand"}</strong></a> / <a href='#' data-action='collapseAll'><strong>{lang="collapse"}</strong></a></span></label>
|
|
</div>
|
|
{{if isset( $restrictions['items'][ $moduleId ] )}}
|
|
<ul class="acpRestrictions_panel">
|
|
{{foreach $restrictions['items'][ $moduleId ] as $title => $items}}
|
|
<li>
|
|
<div class="acpRestrictions_subHeader acpRestrictions_open ipsType_light">
|
|
<h3>{lang="r__{$title}"}</h3> <span data-role='massToggle' class='ipsJS_show'><a href='#' data-action='checkAll'>{lang="all"}</a> / <a href='#' data-action='checkNone'>{lang="none"}</a></a>
|
|
</div>
|
|
<ul>
|
|
{{foreach $items as $k => $v}}
|
|
<li>
|
|
<div>
|
|
<input type="checkbox" id='elRestrict_{$appKey}_{$moduleKey}_{$k}' data-ipsToggle name="r[items][{$appKey}][{$moduleKey}][]" value="{$k}" {{if $current === '*' or ( isset( $current['items'] ) and array_key_exists( $appKey, $current['items'] ) and array_key_exists( $moduleKey, $current['items'][ $appKey ] ) and in_array( $k, $current['items'][ $appKey ][ $moduleKey ] ) )}}checked="checked"{{endif}}> <label for='elRestrict_{$appKey}_{$moduleKey}_{$k}'>{lang="r__{$v}"}</label>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<button class="ipsButton ipsButton_primary" role="button" type="submit">{lang="save"}</button>
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="members" template_name="adminDetails" template_data="$details" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsColumns ipsPad'>
|
|
<div class='ipsColumn ipsColumn_narrow ipsResponsive_hidePhone'>
|
|
<div class='ipsPad ipsType_center'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::loggedIn(), 'medium'"}
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
<ul class='ipsDataList'>
|
|
<li class='ipsDataItem ipsClearfix '>
|
|
<div class='ipsDataItem_main'>
|
|
<strong class='ipsDataItem_title'>{lang="username"}</strong>
|
|
<p class='ipsType_reset'>
|
|
{$details['username']}
|
|
</p>
|
|
</div>
|
|
</li>
|
|
<li class='ipsDataItem ipsClearfix '>
|
|
<div class='ipsDataItem_main'>
|
|
<strong class='ipsDataItem_title'>{lang="email_address"}</strong>
|
|
<p class='ipsType_reset'>
|
|
{$details['email_address']}
|
|
</p>
|
|
</div>
|
|
<p class='ipsDataItem_generic ipsDataItem_size3'>
|
|
<a href='{url="app=core&module=members&controller=members&do=adminEmail"}' title='{lang="change_email_button"}' class='ipsButton ipsButton_small ipsButton_normal' data-ipsDialog data-ipsDialog-title='{lang="change_email_button"}'>{lang="change"}</a>
|
|
</p>
|
|
</li>
|
|
<li class='ipsDataItem ipsClearfix '>
|
|
<div class='ipsDataItem_main'>
|
|
<strong class='ipsDataItem_title'>{lang="password"}</strong>
|
|
<p class='ipsType_reset'>
|
|
<span class='ipsType_light'>{$details['password']}</span>
|
|
</p>
|
|
</div>
|
|
<p class='ipsDataItem_generic ipsDataItem_size3'>
|
|
<a href='{url="app=core&module=members&controller=members&do=adminPassword"}' title='{lang="change_password"}' class='ipsButton ipsButton_small ipsButton_normal' data-ipsDialog data-ipsDialog-title='{lang="change_password"}'>{lang="change"}</a>
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="attachmentLocations" template_data="$locations, $truncateLinks=TRUE" template_location="global" template_app="core"><![CDATA[{{if count( $locations )}}
|
|
<ul class="ipsList_reset">
|
|
{{foreach $locations as $location}}
|
|
<li>
|
|
{{if $location instanceof \IPS\Content or $location instanceof \IPS\Node\Model}}
|
|
<a href="{{if \IPS\Dispatcher::i()->controllerLocation == 'admin'}}{{if method_exists( $location, 'acpUrl' )}}{$location->acpUrl()}{{else}}{$location->url()->makeSafeForAcp()}{{endif}}{{else}}{$location->url()}{{endif}}" target="_blank" class="ipsType_blendLinks">
|
|
{{if isset( $location::$icon )}}<i class="fa fa-{$location::$icon}" {{if isset( $location::$title )}}title="{lang="$location::$title"}" data-ipsTooltip{{endif}}></i> {{endif}}
|
|
{{if $location instanceof \IPS\Content\Item}}
|
|
{$location->mapped('title')}
|
|
{{elseif $location instanceof \IPS\Node\Model}}
|
|
{$location->_title}
|
|
{{else}}
|
|
{$location->item()->mapped('title')}
|
|
{{endif}}
|
|
</a>
|
|
{{elseif $location instanceof \IPS\Http\Url}}
|
|
<a href="{{if \IPS\Dispatcher::i()->controllerLocation == 'admin'}}{$location->makeSafeForAcp()}{{else}}{$location}{{endif}}" class="ipsType_blendLinks" target="_blank"{{if $truncateLinks}} title="{$location}"{{endif}}>
|
|
{{if $truncateLinks}}
|
|
{truncate="$location" length="60"}
|
|
{{else}}
|
|
{$location}
|
|
{{endif}}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<p class="">{lang="attach_locations_empty"}</p>
|
|
{{endif}}]]></template>
|
|
<template template_group="members" template_name="bdayForm_day" template_data="$name, $value, $error=''" template_location="global" template_app="core"><![CDATA[
|
|
<select name="bday[day]">
|
|
<option value='0' {{if $value['day'] == 0 }}selected{{endif}}></option>
|
|
{{foreach range( 1, 31 ) as $day}}
|
|
<option value='{$day}' {{if $value['day'] == $day }}selected{{endif}}>{$day}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
]]></template>
|
|
<template template_group="members" template_name="bdayForm_month" template_data="$name, $value, $error=''" template_location="global" template_app="core"><![CDATA[
|
|
<select name="bday[month]">
|
|
<option value='0' {{if $value['month'] == 0 }}selected{{endif}}></option>
|
|
{{foreach range( 1, 12 ) as $month}}
|
|
<option value='{$month}' {{if $value['month'] == $month }}selected{{endif}}>{expression="\IPS\DateTime::create()->setDate( 2000, $month, 15 )->strFormat('%B')"}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
|
|
]]></template>
|
|
<template template_group="members" template_name="bdayForm_year" template_data="$name, $value, $error=''" template_location="global" template_app="core"><![CDATA[
|
|
<select name="bday[year]">
|
|
<option value='0'>{lang="not_telling"}</option>
|
|
{{foreach array_reverse( range( date('Y') - 150, date('Y') ) ) as $year}}
|
|
<option value='{$year}' {{if $value['year'] == $year }}selected{{endif}}>{$year}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
]]></template>
|
|
<template template_group="members" template_name="bulkMailPreview" template_data="$mail, $members, $count" template_location="admin" template_app="core"><![CDATA[<div class='acpBlock'>
|
|
<div class='ipsTabs ipsClearfix ipsJS_show acpFormTabBar' id='tabs_bulkmail' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_bulkmail'>
|
|
<a href='#tabs_bulkmail' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist'>
|
|
<li>
|
|
<a href='#ipsTabs_tabs_bulkmail_bulkmail_tab_overview_panel' id='bulkmail_tab_overview' class="ipsTabs_item ipsTabs_activeItem" role="tab" aria-selected="true">
|
|
{lang="bm_send_overview"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href='#ipsTabs_tabs_bulkmail_bulkmail_tab_memberlist_panel' id='bulkmail_tab_memberlist' class="ipsTabs_item" role="tab" aria-selected="false">
|
|
{lang="bm_send_recipients" sprintf="$count"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id='ipsTabs_content_bulkmail' class='acpFormTabContent'>
|
|
<div id='ipsTabs_tabs_bulkmail_bulkmail_tab_overview_panel' class="ipsTabs_panel" aria-labelledby="bulkmail_tab_overview" aria-hidden="false">
|
|
<ul class='ipsForm ipsForm_horizontal'>
|
|
<li class='ipsJS_hide'>{lang="bm_send_overview"}</li>
|
|
<li class='ipsFieldRow ipsPad_half ipsClearfix'>
|
|
<div class='ipsFieldRow_title'>
|
|
{lang="mail_subject"}
|
|
</div>
|
|
<div class='ipsFieldRow_content'>
|
|
{$mail->subject}
|
|
</div>
|
|
</li>
|
|
<li class='ipsFieldRow ipsPad_half ipsClearfix'>
|
|
<div class='ipsFieldRow_title'>
|
|
{lang="mail_body"}
|
|
</div>
|
|
<div class='ipsFieldRow_content'>
|
|
<iframe seamless src='{url="app=core&module=bulkmail&controller=bulkmail&do=iframePreview&id=" base="admin"}{$mail->id}' style="width:100%" height='350'></iframe>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id='ipsTabs_tabs_bulkmail_bulkmail_tab_memberlist_panel' class="ipsTabs_panel" aria-labelledby="bulkmail_tab_memberlist" aria-hidden="false">
|
|
<div class='ipsJS_hide'>{lang="bm_send_recipients" sprintf="$count"}</div>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
{{foreach $members as $_index => $member}}
|
|
<div class='ipsGrid_span3 ipsPad'>
|
|
<a href='{url="app=core&module=members&controller=profile&id={$member['member_id']}" base="front" seoTitles="$member['members_seo_name']" seoTemplate="profile"}'>{$member['name']}</a>
|
|
<span class='ipsType_light'>({$member['email']})</span>
|
|
</div>
|
|
{{if $_index > 0 AND ( $_index + 1 ) % 4 == 0}}</div><div class='ipsGrid ipsGrid_collapsePhone'>{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ipsAreaBackground ipsClearfix ipsPad ipsType_center">
|
|
<a href='{url="app=core&module=bulkmail&controller=bulkmail&do=send&id="}{$mail->id}' class='ipsButton ipsButton_primary'>{lang="proceed"}</a>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="changePassword" template_data="$name, $memberId" template_location="admin" template_app="core"><![CDATA[<div class="ipsJS_hide">
|
|
<input name="{$name}" autocomplete="off"><br>
|
|
<span class="ipsType_light">{lang="members_pass_change"}</span>
|
|
</div>
|
|
<div class="ipsJS_show">
|
|
<span class='ipsType_light'>{lang="password_hidden"}</span><br>
|
|
<a href="{url="app=core&module=members&controller=members&do=password&id={$memberId}"}" data-ipsDialog data-ipsDialog-title="{lang="change_password"}">{lang="change_password"}</a>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="confirmMassAction" template_data="$count, $action, $group=NULL" template_location="admin" template_app="core"><![CDATA[<div class='ipsMessage ipsMessage_warning'>
|
|
{{if $action === 'prune'}}
|
|
{lang="member_prune_confirm_msg" sprintf="$count"}
|
|
{{else}}
|
|
{lang="member_move_confirm_msg" sprintf="$count, $group->name"}
|
|
{{endif}}
|
|
</div>
|
|
{{if $action === 'prune'}}
|
|
<div class='ipsPos_center'><a class='ipsButton ipsButton_primary' href='{url="app=core&module=members&controller=members&do=doPrune"}'>{lang="continue"}</a></div>
|
|
{{else}}
|
|
<div class='ipsPos_center'><a class='ipsButton ipsButton_primary' href='{url="app=core&module=members&controller=members&do=doMove"}'>{lang="continue"}</a></div>
|
|
{{endif}}]]></template>
|
|
<template template_group="members" template_name="editMember" template_data="$member, $form, $canEdit, $canSeeIps" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsAreaBackground ipsPad ipsPhotoPanel ipsPhotoPanel_large ipsClearfix' id='elEditMemberHeader'>
|
|
<a href="{$member->url()}" class='ipsPos_left'><img src='{$member->photo}' class='ipsUserPhoto ipsUserPhoto_large'></a>
|
|
<div>
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing ipsType_normal'>
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3'><strong>{lang="members_joined"}</strong></span>
|
|
<span class='ipsDataItem_generic'>{$member->joined->localeDate()} {{if $member->members_bitoptions['validating']}}<i class="fa fa-warning"></i> <span class="ipsType_light ipsType_small">{$member->validatingDescription()}</span>{{endif}}</span>
|
|
</li>
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3'><strong>{lang="members_ip_address"}</strong></span>
|
|
<span class='ipsDataItem_generic'>
|
|
{{if $canSeeIps}}
|
|
<a href="{url="app=core&module=members&controller=ip&ip={$member->ip_address}"}">{$member->ip_address}</a> <a href="{url="app=core&module=members&controller=members&do=ip&id={$member->member_id}"}" class="ipsType_light">({lang="see_all"})</a>
|
|
{{else}}
|
|
{$member->ip_address}
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{if $canEdit}}
|
|
<ul class="ipsControlStrip ipsType_noBreak ipsList_reset ipsPos_left" id='elEditPhoto'>
|
|
<li class='ipsControlStrip_button'>
|
|
<a href="{url="app=core&module=members&controller=members&do=photo&id={$member->member_id}"}" data-ipsDialog data-ipsDialog-title='{lang="edit"}' title="{lang="edit"}" data-ipsTooltip><i class='ipsControlStrip_icon fa fa-pencil'></i></a>
|
|
</li>
|
|
{{if $member->pp_photo_type === 'custom'}}
|
|
<li class='ipsControlStrip_button'>
|
|
<a href="{url="app=core&module=members&controller=members&do=photoResize&id={$member->member_id}"}" data-ipsDialog data-ipsDialog-title='{lang="member_photo_resize"}' title="{lang="member_photo_resize"}" data-ipsTooltip><i class='ipsControlStrip_icon fa fa-arrows-alt'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
<br>
|
|
|
|
{$form|raw}]]></template>
|
|
<template template_group="members" template_name="groupCell" template_data="$group, $secondaryGroups" template_location="admin" template_app="core"><![CDATA[{$group}
|
|
{{if count( $secondaryGroups )}}
|
|
<br>
|
|
<span class='ipsType_light ipsType_small'>{lang="secondary_groups"}: {expression="\IPS\Member::loggedIn()->language()->formatList( $secondaryGroups )"}</span>
|
|
{{endif}} ]]></template>
|
|
<template template_group="members" template_name="groupPromotion" template_data="$name, $value, $groups" template_location="admin" template_app="core"><![CDATA[<div>
|
|
{lang="move_members_to"}
|
|
<select name="{$name}[0][0]" data-control="selectDisable">
|
|
<option value="-1" {{if $value[0][0] === -1}}selected="selected"{{endif}} data-disable="#group_promote_unit,#group_promote_type">{lang="group_promotion_dont"}</option>
|
|
{{foreach $groups as $id => $_group}}
|
|
<option value="{$id}" {{if $value[0][0] == $id}}selected="selected"{{endif}}>{$_group->name}</option>
|
|
{{endforeach}}
|
|
</select>
|
|
{lang="when_they_reach"}
|
|
<input type="number" id="group_promote_unit" name="{$name}[0][1]" value="{{if $value[0][1] != -1}}{$value[0][1]}{{endif}}" min="0" class="ipsField_tiny">
|
|
<select name="{$name}[1]" id="group_promote_type" class="ipsField_short">
|
|
<option value="0" {{if !$value[1]}}selected="selected"{{endif}}>{lang="approved_posts_comments"}</option>
|
|
<option value="1" {{if $value[1]}}selected="selected"{{endif}}>{lang="days_since_joining"}</option>
|
|
</select>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="ipLookup" template_data="$url, $geolocation, $map, $counts" template_location="global" template_app="core"><![CDATA[
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{lang="ip_address_info"}</h2>
|
|
<div class='ipsPad ipsAreaBackground_light cIPInfo'>
|
|
{{if $geolocation}}
|
|
<div class='ipsColumns ipsColumns_noSpacing ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_wide ipsAreaBackground_light'>
|
|
<div class='ipsPad cIPInfo_map'>
|
|
{{if $geolocation}}
|
|
{{if $map}}
|
|
{$map|raw}
|
|
<br>
|
|
{{endif}}
|
|
<p>{$geolocation|raw}</p>
|
|
<p class="ipsType_light ipsType_small"><i class="fa fa-info-circle"></i> {lang="ip_geolocation_info"}</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
{{endif}}
|
|
<div class="ipsGrid ipsGrid_collapsePhone ipsAreaBackground_reset">
|
|
{{foreach array_slice( $counts, 0, ceil( count( $counts ) / 2 ) ) as $key => $value}}
|
|
{{if $value}}
|
|
<div class='ipsGrid_span4 ipsPad ipsType_center'>
|
|
<a href="{$url->setQueryString( 'area', $key )}" class="ipsType_blendLinks">
|
|
<span class='ipsType_veryLarge cIPInfo_value'>{$value}</span><br>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line ipsType_minorHeading'>{lang="ipAddresses__{$key}"}</p>
|
|
</a>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{foreach array_slice( $counts, 0, ceil( count( $counts ) / 2 ) ) as $key => $value}}
|
|
{{if !$value}}
|
|
<div class='ipsGrid_span4 ipsPad ipsType_center ipsType_light ipsFaded'>
|
|
<span class='ipsType_veryLarge cIPInfo_value'>{$value}</span><br>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line ipsType_minorHeading'>{lang="ipAddresses__{$key}"}</p>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
{{if $geolocation}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="memberEmailCell" template_data="$content" template_location="admin" template_app="core"><![CDATA[<div class='ipsType_break'>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="memberSearchResult" template_data="$member" template_location="admin" template_app="core"><![CDATA[<div class="clearfix clickable">
|
|
<div class="left">
|
|
{template="userPhoto" app="core" group="global" params="$member, 'medium'"}
|
|
</div>
|
|
<div class="left ipsMemberData">
|
|
{$member->group['prefix']|raw}{$member->name}{$member->group['suffix']|raw}<br>
|
|
<span class="ipsType_light">{$member->email}</span>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="memberValidatingCell" template_data="$email, $message" template_location="admin" template_app="core"><![CDATA[<span class="ipsType_warning"><i class="fa fa-warning"></i> {$email}</span><br>
|
|
<span class="ipsType_light ipsType_small">{$message}</span>]]></template>
|
|
<template template_group="members" template_name="moderationLimits" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[{lang="after"}
|
|
<input type="number" name="{$name}[0]" value="{{if isset( $value[0] )}}{$value[0]}{{endif}}">
|
|
<select name="{$name}[1]">
|
|
<option value="0" {{if isset( $value[1] ) and !$value[1]}}selected="selected"{{endif}}>{lang="approved_posts_comments"}</option>
|
|
<option value="1" {{if isset( $value[1] ) and $value[1]}}selected="selected"{{endif}}>{lang="days_since_joining"}</option>
|
|
</select>
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" data-control="unlimited" id='el{$name}_unlimited' {{if !isset( $value[0] ) or !$value[0]}}checked="checked"{{endif}} name="{$name}[2]">
|
|
<span></span>
|
|
</span>
|
|
<label for='el{$name}_unlimited' class='ipsField_unlimited'>{lang="never"}</label>]]></template>
|
|
<template template_group="members" template_name="moderatorPermissions" template_data="$title, $content" template_location="admin" template_app="core"><![CDATA[<div data-controller='core.admin.members.moderatorPermissions'>
|
|
<div class="ipsClearfix">
|
|
<div class="ipsJS_show ipsSpacer_bottom ipsSpacer_half">
|
|
<ul class="ipsList_inline">
|
|
<li><a href="#" class="ipsButton ipsButton_light ipsButton_verySmall" data-role="checkAll">{lang="check_all"}</a></li>
|
|
<li><a href="#" class="ipsButton ipsButton_light ipsButton_verySmall" data-role="uncheckAll">{lang="uncheck_all"}</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="notificationLabel" template_data="$key, $data" template_location="global" template_app="core"><![CDATA[{{if $data['icon']}}
|
|
<i class="fa fa-{$data['icon']}"></i>
|
|
{{endif}}
|
|
{lang="$key"}]]></template>
|
|
<template template_group="members" template_name="postingLimits" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[{lang="after"}
|
|
<input type="number" name="{$name}[0]" value="{$value[0]}" class="ipsField_short">
|
|
<select name="{$name}[1]" class="ipsField_short">
|
|
<option value="0" {{if !$value[1]}}selected="selected"{{endif}}>{lang="approved_posts_comments"}</option>
|
|
<option value="1" {{if $value[1]}}selected="selected"{{endif}}>{lang="days_since_joining"}</option>
|
|
</select>
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" data-control="unlimited" id='el{$name}_unlimited' {{if !$value[0]}}checked="checked"{{endif}}>
|
|
<span></span>
|
|
</span> <label for='el{$name}_unlimited' class='ipsField_unlimited'>{lang="never"}</label>]]></template>
|
|
<template template_group="members" template_name="prefixSuffix" template_data="$name, $color, $prefix, $suffix" template_location="admin" template_app="core"><![CDATA[<span id="{$name}_color" class="{{if $prefix or $suffix}}ipsHide{{else}}ipsJS_show{{endif}}">
|
|
<input type="text" name="{$name}[color]" id="{$name}_color" value="{$color}" data-control='color' class='ipsField_short'> {lang="or"} <a href="#" data-clickshow="{$name}_html" data-clickhide="{$name}_color">{lang="use_html"}</a>
|
|
</span>
|
|
<span id="{$name}_html" class="{{if !$prefix and !$suffix}}ipsJS_hide{{endif}}">
|
|
<input type="text" name="{$name}[prefix]" id="{$name}_prefix" placeholder="<strong>" value="{$prefix}" class="ipsField_short"> {lang="g_title"} <input type="text" name="{$name}[suffix]" id="{$name}_suffix" placeholder="</strong>" value="{$suffix}" class="ipsField_short">
|
|
<span class="no_js_hide"> {lang="or"} <a href="#" data-clickshow="{$name}_color" data-clickhide="{$name}_html" data-clickempty="{$name}_prefix,{$name}_suffix">{lang="use_color"}</a></span>
|
|
</span>]]></template>
|
|
<template template_group="members" template_name="signatureLimits" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[{lang="after"}
|
|
<input type="number" name="{$name}[0]" value="{$value[0]}" min="0" class="ipsField_short">
|
|
<select name="{$name}[1]" class="ipsField_short">
|
|
<option value="0" {{if !$value[1]}}selected="selected"{{endif}}>{lang="approved_posts_comments"}</option>
|
|
<option value="1" {{if $value[1]}}selected="selected"{{endif}}>{lang="days_since_joining"}</option>
|
|
</select>
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="{$name}[3]" id='el{$name}_3' data-control="unlimited" {{if !$value[0]}}checked="checked"{{endif}}>
|
|
<span></span>
|
|
</span> <label for='el{$name}_3' class='ipsField_unlimited'>{lang="always"}</label>]]></template>
|
|
<template template_group="members" template_name="usernameChanges" template_data="$name, $value" template_location="admin" template_app="core"><![CDATA[<div>
|
|
<label><input type='checkbox' name="{$name}[canchange]" value="1" data-control="toggle" data-toggles="group_un_perms" {{if $value[0]}}checked="checked"{{endif}}> {lang="group_allow_username_changes"}</label>
|
|
</div>
|
|
<br>
|
|
<div id="group_un_perms">
|
|
<div data-role="unlimitedCatch">
|
|
{lang="after"} <input type="number" class="ipsField_tiny" value="{$value[1]}" name="{$name}[1]" min="0"> <select name="{$name}[2]" class="ipsField_short"><option value="0" {{if !$value[2]}}selected="selected"{{endif}}>{lang="approved_posts_comments"}</option><option value="1" {{if $value[2]}}selected="selected"{{endif}}>{lang="days_since_joining"}</option></select> {lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' name="{$name}[always]" id='el{$name}_always' data-control="unlimited" {{if !$value[1]}}checked="checked"{{endif}}>
|
|
<span></span>
|
|
</span> <label for='el{$name}_always' class='ipsField_unlimited'>{lang="always"}</label>
|
|
</div>
|
|
<br>
|
|
<div data-role="unlimitedCatch">
|
|
{lang="can_change_username"} <input type="number" class="ipsField_tiny" value="{$value[0]}" name="{$name}[0]"> {lang="times_every"} <input type="number" name="{$name}[3]" class="ipsField_tiny" value="{$value[3]}" min="1"> {lang="days"} {lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' name="{$name}[unlimited]" id='el{$name}_unlimited' value="1" data-control="unlimited" {{if $value[0] == -1}}checked="checked"{{endif}}>
|
|
<span></span>
|
|
</span> <label for='el{$name}_unlimited' class='ipsField_unlimited'>{lang="unlimited"}</label>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="members" template_name="viewDnameHistory" template_data="$table,$member" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<a class='ipsButton ipsButton_veryLight' href='{url="app=core&module=members&controller=members&do=clearDnameHistory&id={$member->member_id}"}'><i class='fa fa_magic'></i>{lang="clear_dname_history"}</a>
|
|
</div>
|
|
<br>
|
|
{$table|raw}]]></template>
|
|
<template template_group="members" template_name="warningTime" template_data="$name, $value, $prefixLang='after', $unlimitedLang='never'" template_location="admin" template_app="core"><![CDATA[{lang="$prefixLang"}
|
|
<input type="number" name="{$name}[0]" {{if $value[0] != -1}}value="{$value[0]}"{{endif}} min="0" class="ipsField_short">
|
|
<select name="{$name}[1]">
|
|
<option value="h" {{if $value[1] == 'h'}}selected="selected"{{endif}}>{lang="hours"}</option>
|
|
<option value="d" {{if $value[1] == 'd'}}selected="selected"{{endif}}>{lang="days"}</option>
|
|
</select>
|
|
{lang="or"}
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" data-control="unlimited" id='el{$name}_unlimited' {{if $value[0] == -1}}checked="checked"{{endif}} name="{$name}[3]">
|
|
<span></span>
|
|
</span> <label for='el{$name}_unlimited' class='ipsField_unlimited'>{lang="$unlimitedLang"}</label>]]></template>
|
|
<template template_group="messaging" template_name="conversation" template_data="$conversation, $folders" template_location="front" template_app="core"><![CDATA[<div class=''>
|
|
<p class='ipsResponsive_hideDesktop ipsResponsive_block ipsPos_left ipsType_reset'>
|
|
<a href='#' data-action='filterBarSwitch' data-switchTo='filterBar' class='ipsButton ipsButton_verySmall ipsButton_light'><i class='fa fa-caret-left'></i> <i class='fa fa-navicon'></i> {lang="messenger_list"}</a>
|
|
</p>
|
|
<a href='#' id='elConvoActions' data-ipsMenu class='ipsPos_right ipsButton ipsButton_verySmall ipsButton_light'>{lang="message"} <i class='fa fa-caret-down'></i></a>
|
|
|
|
<ul id='elConvoActions_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{if count( $folders ) > 1}}
|
|
<li class='ipsMenu_item ipsMenu_subItems'>
|
|
<a href='#' id='elConvoMove'><i class='fa fa-folder'></i> {lang="move_message_to"}</a>
|
|
|
|
<ul id='elConvoMove_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{foreach $folders as $id => $name}}
|
|
{{if (string) $id !== $conversation->map['map_folder_id']}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='{$id}'><a href='{$conversation->url('move')->setQueryString( 'to', $id )}'>{$name}</a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item'>
|
|
{{if $conversation->map['map_ignore_notification']}}
|
|
<a href='{$conversation->url('notifications')->setQueryString( 'status', 1 )}' data-action="stopNotifications">
|
|
<i class='fa fa-bell'></i> {lang="messenger_notifications_on"}
|
|
</a>
|
|
{{else}}
|
|
<a href='{$conversation->url('notifications')->setQueryString( 'status', 0 )}' data-action="stopNotifications">
|
|
<i class='fa fa-bell-slash-o'></i> {lang="messenger_notifications_off"}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
</ul>
|
|
|
|
<br class='ipsResponsive ipsResponsive_hideDesktop'>
|
|
<h1 class='ipsType_pageTitle ipsType_break'>{$conversation->title} </h1>
|
|
<div class='cMessage_members ipsBox ipsBox_transparent ipsAreaBackground_light ipsPad' id='elConvoMembers_{$conversation->id}'>
|
|
<a href="{$conversation->url('leaveConversation')}" data-action="deleteConversation" class='ipsPos_right ipsType_negative'><i class='fa fa-trash'></i> {lang="messenger_leave"}</a>
|
|
<span class='ipsType_light'><i class='fa fa-user'></i> {lang="members_in_convo" pluralize="$conversation->to_count"}</span>
|
|
<ol class='ipsList_inline ipsClearfix ipsSpacer_top ipsSpacer_half'>
|
|
{{foreach $conversation->maps() as $map}}
|
|
{template="participant" group="messaging" params="$map, $conversation"}
|
|
{{endforeach}}
|
|
<li data-role='addUserItem'>
|
|
<a href='#elInviteMember{$conversation->id}_menu' id='elInviteMember{$conversation->id}' data-action='inviteUsers' title='{lang="invite_a_member"}' data-ipsMenu data-ipsMenu-appendTo="#elConvoMembers_{$conversation->id}" data-ipsMenu-closeOnClick='false' data-ipsTooltip class='ipsButton ipsButton_light ipsButton_narrow ipsButton_large'><i class='fa fa-plus'></i> <i class='fa fa-user'></i></a>
|
|
<div class='ipsMenu ipsMenu_wide ipsPad ipsHide' id='elInviteMember{$conversation->id}_menu'>
|
|
<form accept-charset='utf-8' action="{$conversation->url('addParticipant')}" method="post" data-role='addUser' data-conversation="{$conversation->id}">
|
|
<input type='text' class='ipsField_fullWidth' placeholder='{lang="messenger_invite_placeholder"}' name="member_names" data-ipsAutocomplete data-ipsAutocomplete-unique data-ipsAutocomplete-dataSource="{url="app=core&module=system&controller=ajax&do=findMember"}" data-ipsAutocomplete-queryParam='input' data-ipsAutocomplete-resultItemTemplate="core.autocomplete.memberItem" data-ipsAutocomplete-minLength="3"><br>
|
|
<button class='ipsButton ipsButton_primary ipsButton_fullWidth'>{lang="invite"}</button>
|
|
</form>
|
|
</div>
|
|
</li>
|
|
</ol>
|
|
</div>
|
|
<br>
|
|
<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{lang="personal_conversation"}</h2>
|
|
<div data-controller='core.front.core.commentFeed' {{if settings.auto_polling_enabled}}data-autoPoll{{endif}} data-baseURL='{$conversation->url()}' {{if $conversation->isLastPage()}}data-lastPage{{endif}} data-feedID='messages-{$conversation->id}'>
|
|
<div class=''>
|
|
{{if $conversation->commentPageCount() > 1}}
|
|
{template="pagination" group="global" location="global" params="$conversation->url(), $conversation->commentPageCount(), \IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1, \IPS\core\Messenger\Conversation::getCommentsPerPage(), TRUE"}
|
|
<br><br>
|
|
{{endif}}
|
|
<div data-role='commentFeed'>
|
|
{{foreach $conversation->comments() as $comment}}
|
|
{$comment->html()|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
{{if $conversation->commentPageCount() > 1}}
|
|
<hr class='ipsHr'>
|
|
{template="pagination" group="global" location="global" params="$conversation->url(), $conversation->commentPageCount(), \IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1, \IPS\core\Messenger\Conversation::getCommentsPerPage(), TRUE"}
|
|
{{endif}}
|
|
<div data-role='replyArea' class='ipsAreaBackground ipsPad ipsSpacer_top'>
|
|
{$conversation->commentForm()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="messaging" template_name="folderForm" template_data="$action, $formHtml" template_location="front" template_app="core"><![CDATA[
|
|
<div data-controller="core.front.messages.folderDialog" data-action='{$action}'>
|
|
{$formHtml|raw}
|
|
</div>]]></template>
|
|
<template template_group="messaging" template_name="messageList" template_data="$baseUrl, $langPrefix, $headers, $mainColumn, $rootButtons, $rows, $sortBy, $sortDirection, $filters, $currentFilter, $pages, $currentPage, $noSort, $quickSearch, $advancedSearch, $classes, $widths" template_location="front" template_app="core"><![CDATA[<div id='elMessageSidebar' data-controller='core.front.messages.list, core.genericTable' data-baseurl="{url="{$baseUrl}"}">
|
|
<div class='ipsButtonBar ipsPad_half ipsClearfix'>
|
|
<span class='ipsType_sectionHead'>{lang="menu_messages"}</span>
|
|
<ul class='ipsButtonRow ipsClearfix ipsPos_right'>
|
|
<li class='ipsPos_left'>
|
|
<a class="ipsJS_show" href="#elCheck_menu" id="elCheck" title='{lang="select_rows_tooltip"}' data-ipsTooltip data-ipsAutoCheck data-ipsAutoCheck-context="#elMessageList" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active">
|
|
<span class="cAutoCheckIcon ipsType_medium"><i class="fa fa-square-o"></i></span> <i class="fa fa-caret-down"></i>
|
|
<span class='ipsNotificationCount' data-role='autoCheckCount'>0</span>
|
|
</a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide" id="elCheck_menu">
|
|
<li class="ipsMenu_title">{lang="select_rows"}</li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="all"><a href="#">{lang="all"}</a></li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="none"><a href="#">{lang="none"}</a></li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href='#elSortByMenu_menu' id='elSortByMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="sort_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elSortByMenu_menu'>
|
|
{{foreach $headers as $k => $header}}
|
|
{{if in_array( $k, array( 'mt_last_post_time', 'mt_start_time', 'mt_replies' ) )}}
|
|
<li class='ipsMenu_item {{if $k == $sortBy}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='recent'><a href='#'>{lang="{$langPrefix}{$header}"}</a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href='#elFilterMenu_menu' id='elFilterMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="filter_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterMenu_menu'>
|
|
<li class='ipsMenu_item {{if !array_key_exists( $currentFilter, $filters )}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='all'><a href='{url="{$baseUrl}&sortby={$sortBy}&sortdirection={$sortDirection}&page=1"}'>{lang="messenger_filter_all"}</a></li>
|
|
{{foreach $filters as $k => $q}}
|
|
<li class='ipsMenu_item {{if $k === $currentFilter}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='others'><a href='{url="{$baseUrl}&filter={$k}&sortby={$sortBy}&sortdirection={$sortDirection}&page=1"}'>{lang="$k"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id='elMessageList' class='ipsClear ipsAreaBackground_light'>
|
|
<div>
|
|
<ol class='ipsDataList' data-role='messageList'>
|
|
{template="messageListRows" app="core" group="messaging" params="$rows, $mainColumn, $rootButtons, $headers, $langPrefix"}
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="messaging" template_name="messageListRow" template_data="$row, $overview" template_location="front" template_app="core"><![CDATA[ <li class='ipsDataItem ipsClearfix {{if $row['map_has_unread']}}ipsDataItem_unread{{endif}} cMessage {{if !\IPS\Request::i()->overview}}ipsCursor_pointer{{endif}} {{if $row['mt_id'] == \IPS\Request::i()->id}}cMessage_active ipsDataItem_selected{{endif}}' data-messageid='{$row['map_topic_id']}' data-keyNavBlock data-keyAction='return'>
|
|
<div class='ipsDataItem_icon ipsType_center ipsPos_top'>
|
|
<div class='ipsSpacer_bottom ipsSpacer_half'>
|
|
{{if $row['last_message']}}{template="userPhoto" app="core" group="global" params="$row['last_message']->author(), 'tiny'"}{{endif}}
|
|
</div>
|
|
{{if !isset( \IPS\Request::i()->overview )}}
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row['map_topic_id']}]" data-actions='delete' data-state>
|
|
<span></span>
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title ipsType_normal ipsType_break'>
|
|
{{if $overview}}
|
|
<a href='{url="app=core&module=messaging&controller=messenger&id={$row['mt_id']}&latest=1" seoTemplate="messenger_convo"}' class='cMessageTitle' data-role="messageURL" data-ipsTruncate data-ipsTruncate-type="remove" data-ipsTruncate-size="2 lines">{{if $row['map_has_unread']}}{template="itemIcon" params="array('type' => 'unread', 'size' => 'tiny')" group="global" app="core"} {{endif}}{$row['mt_title']}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=messaging&controller=messenger&id={$row['mt_id']}" seoTemplate="messenger_convo"}' class='cMessageTitle' data-role="messageURL" data-ipsTruncate data-ipsTruncate-type="remove" data-ipsTruncate-size="2 lines">{{if $row['map_has_unread']}}{template="itemIcon" params="array('type' => 'unread', 'size' => 'tiny')" group="global" app="core"} {{endif}}{$row['mt_title']}</a>
|
|
{{endif}}
|
|
</h4>
|
|
<div class='ipsDataItem_meta ipsType_break' data-ipsTruncate data-ipsTruncate-type="remove" data-ipsTruncate-size="1 lines">
|
|
{{if $row['last_message']}}{$row['last_message']->truncated( TRUE )|raw}{{endif}}
|
|
</div>
|
|
<span class='ipsType_light ipsType_medium ipsType_blendLinks'>{$row['participants']}</span>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size2 ipsPos_top ipsType_right'>
|
|
<div class='ipsCommentCount ipsSpacer_top ipsSpacer_half' title="{lang="messenger_message_count" pluralize="$row['mt_replies']"}" data-ipsTooltip>{number="$row['mt_replies']"}</div>
|
|
<p class='ipsType_reset ipsType_medium ipsType_light ipsType_right'>
|
|
<span data-ipsTooltip data-ipsTooltip-safe title="{lang="messenger_started_by" sprintf="\IPS\Member::load( $row['mt_starter_id'] )->name"}, {datetime="$row['mt_start_time']" lowercase="true"}{{if $row['mt_start_time'] !== $row['mt_last_post_time'] AND $row['last_message']}} · {lang="messenger_last_reply" sprintf="$row['last_message']->author()->name"}, {datetime="$row['mt_last_post_time']" lowercase="true"}{{endif}}">
|
|
{datetime="$row['mt_last_post_time']" short="true" }
|
|
</span>
|
|
</p>
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="messaging" template_name="messageListRows" template_data="$conversations, $pagination=NULL, $overview=FALSE" template_location="front" template_app="core"><![CDATA[{{if empty( $conversations )}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsPad ipsType_light ipsType_center ipsType_normal'>{lang="no_results_messages"}</div>
|
|
</li>
|
|
{{else}}
|
|
{{foreach $conversations as $row}}
|
|
{template="messageListRow" group="messaging" params="$row, $overview"}
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="messaging" template_name="nomessage" template_data="" template_location="front" template_app="core"><![CDATA[<div class="ipsType_center ipsType_large ipsEmpty">
|
|
<i class="fa fa-envelope"></i>
|
|
<br>
|
|
{lang="no_message_selected"}
|
|
</div>]]></template>
|
|
<template template_group="messaging" template_name="participant" template_data="$map, $conversation" template_location="front" template_app="core"><![CDATA[<li class='ipsPhotoPanel ipsPhotoPanel_tiny {{if !$map['map_user_active'] or $map['map_user_banned']}}cMessage_leftConvo{{endif}}' data-participant="{$map['map_user_id']}">
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $map['map_user_id'] ), 'tiny'"}
|
|
<div>
|
|
{{if $map['map_user_id'] == \IPS\Member::loggedIn()->member_id}}
|
|
<strong>{member="name" id="$map['map_user_id']"}</strong><br>
|
|
{{elseif !\IPS\Member::load( $map['map_user_id'] )->member_id}}
|
|
{lang="messenger_deleted_member"}<br>
|
|
{{else}}
|
|
<a href='#' id='elMessage{$conversation->id}_user{$map['map_user_id']}' class="cMessage_name" data-role='userActions' data-username='{member="name" id="$map['map_user_id']"}' data-ipsMenu><strong>{member="name" id="$map['map_user_id']"} <i class='fa fa-caret-down'></i></strong></a><br>
|
|
{{endif}}
|
|
<span class='ipsType_light ipsType_small' data-role='userReadInfo'>
|
|
{{if $map['map_user_banned']}}
|
|
<span class="ipsType_warning"><i class="fa fa-ban"></i> {lang="messenger_map_removed"}</span>
|
|
{{elseif !$map['map_user_active']}}
|
|
{{if $map['map_left_time']}}{lang="messenger_map_left"}{datetime="$map['map_left_time']"}{{else}}{lang="messenger_map_left_notime"}{{endif}}
|
|
{{else}}
|
|
{{if $map['map_read_time']}}{lang="messenger_map_read"}{datetime="$map['map_read_time']"}{{else}}{lang="messenger_map_not_read"}{{endif}}
|
|
{{endif}}
|
|
</span>
|
|
</div>
|
|
{{if $map['map_user_id'] != \IPS\Member::loggedIn()->member_id and \IPS\Member::load( $map['map_user_id'] )->member_id}}
|
|
<ul id='elMessage{$conversation->id}_user{$map['map_user_id']}_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{if $conversation->starter_id == \IPS\Member::loggedIn()->member_id and ( $map['map_user_active'] or $map['map_user_banned'] )}}
|
|
{{if $map['map_user_banned']}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='unblock'><a href='{$conversation->url('addParticipant')->setQueryString( 'member', $map['map_user_id'] )}'>{lang="messenger_map_unremove"}</a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='block'><a href='{$conversation->url('blockParticipant')->setQueryString( 'member', $map['map_user_id'] )}'>{lang="messenger_map_remove"}</a></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='msg'><a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$map['map_user_id']}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}'>{lang="messenger_map_message"}</a></li>
|
|
</ul>
|
|
{{endif}}
|
|
</li>]]></template>
|
|
<template template_group="messaging" template_name="template" template_data="$folder, $folders, $counts, $conversations, $pagination, $conversation, $baseUrl, $baseUrlTemplate, $sortBy, $filter" template_location="front" template_app="core"><![CDATA[
|
|
<div data-controller='core.front.messages.main, core.front.messages.responsive'>
|
|
<div class='ipsPageHeader ipsClearfix ipsPad_half ipsSpacer_bottom' id='elMessageHeader'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<h1 class='ipsType_pageTitle ipsGrid_span6'>
|
|
<a href='#elMessageFolders_menu' id='elMessageFolders' data-ipsMenu data-ipsMenu-appendTo="#elMessageHeader" class='ipsType_blendLinks'><span data-role='currentFolder'>{$folders[ $folder ]}</span> <i class='fa fa-caret-down'></i></a>
|
|
<a href='#elFolderSettings_menu' id='elFolderSettings' data-ipsMenu data-ipsMenu-appendTo="#elMessageHeader" class='ipsType_blendLinks'><i class='fa fa-cog'></i></a>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-url='{url="app=core&module=messaging&controller=messenger&do=compose" seoTemplate="messenger_compose"}' data-ipsDialog-title='{lang="compose_new"}' class='ipsButton ipsButton_important ipsResponsive_hidePhone'>{lang="compose_new"}</a>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose" seoTemplate="messenger_compose"}' data-action="composeNew" data-ipsDialog data-ipsDialog-url='{url="app=core&module=messaging&controller=messenger&do=compose" seoTemplate="messenger_compose"}' data-ipsDialog-title='{lang="compose_new"}' class='ipsButton ipsButton_primary ipsButton_verySmall ipsButton_narrow ipsPos_right ipsResponsive_showPhone ipsResponsive_block'>{lang="new"}</a>
|
|
<span data-role="loadingFolderAction" class='ipsType_light ipsType_normal' style='display: none'><i class='icon-spinner2 ipsLoading_tinyIcon'></i> {lang="loading"}</span>
|
|
</h1>
|
|
{{if \IPS\Member::loggedIn()->group['g_max_messages']}}
|
|
<div class='ipsGrid_span6 ipsResponsive_hidePhone'>
|
|
<div class='ipsPos_right ipsType_right' data-role="quotaTooltip" data-ipsTooltip data-ipsTooltip-label="{lang="messenger_quota" sprintf="\IPS\Member::loggedIn()->group['g_max_messages']" pluralize="array_sum( $counts )"}">
|
|
{{$percent = floor( 100 / \IPS\Member::loggedIn()->group['g_max_messages'] * array_sum( $counts ) );}}
|
|
<span class="ipsAttachment_progress"><span data-role='quotaWidth' style='width: {expression="$percent > 100 ? 100 : $percent"}%'></span></span><br>
|
|
<span class='ipsType_light ipsResponsive_hidePhone'>{lang="messenger_quota_short" sprintf="$percent"}</span>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elMessageFolders_menu'>
|
|
{{foreach $folders as $id => $name}}
|
|
{{if $id === 'myconvo'}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='{$id}'><a href='{url="app=core&module=messaging&controller=messenger" seoTemplate="messaging"}'><span class='ipsMenu_itemCount'>{{if isset( $counts[ $id ] )}}{$counts[ $id ]}{{else}}0{{endif}}</span> <span data-role='folderName'>{$name}</span></a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='{$id}'><a href='{url="app=core&module=messaging&controller=messenger&folder={$id}" seoTemplate="messaging"}'><span class='ipsMenu_itemCount'>{{if isset( $counts[ $id ] )}}{$counts[ $id ]}{{else}}0{{endif}}</span> <span data-role='folderName'>{$name}</span></a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<li class='ipsPad_half'><a class='ipsButton ipsButton_fullWidth ipsButton_light ipsButton_small' href="{url="app=core&module=messaging&controller=messenger&do=addFolder"}" data-action="addFolder" id='elAddFolder'>{lang="messenger_add_folder"}</a></li>
|
|
</ul>
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elFolderSettings_menu'>
|
|
<li class='ipsMenu_title'>{lang="messenger_action_with" sprintf="$folders[ $folder ]"}</li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='markRead'><a href='{url="app=core&module=messaging&controller=messenger&do=readFolder&folder={$folder}" csrf="true"}'>{lang="messenger_action_read"}</a></li>
|
|
<li class='ipsMenu_item {{if $folder == 'myconvo'}}ipsMenu_itemDisabled ipsHide{{endif}}' data-ipsMenuValue='rename' id='elFolderRename'><a href='{url="app=core&module=messaging&controller=messenger&do=renameFolder&folder={$folder}" csrf="true"}'>{lang="messenger_action_rename"}</a></li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='empty'><a href='{url="app=core&module=messaging&controller=messenger&do=emptyFolder&folder={$folder}" csrf="true"}'>{lang="messenger_action_empty"}</a></li>
|
|
<li class='ipsMenu_item {{if $folder == 'myconvo'}}ipsMenu_itemDisabled ipsHide{{endif}}' data-ipsMenuValue='delete'><a href='{url="app=core&module=messaging&controller=messenger&do=deleteFolder&folder={$folder}" csrf="true"}'>{lang="messenger_action_delete_folder"}</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsColumns ipsColumns_collapseTablet' data-ipsFilterBar data-ipsFilterBar-on='phone,tablet' data-ipsFilterBar-viewDefault='{{if \IPS\Request::i()->id && !isset( \IPS\Request::i()->_list)}}filterContent{{else}}filterBar{{endif}}'>
|
|
<div class='ipsColumn ipsColumn_veryWide' data-role='filterBar'>
|
|
<div id='elMessageSidebar' class='ipsBox' data-controller='core.front.messages.list' data-folderID='{$folder}'
|
|
data-ipsInfScroll
|
|
data-ipsInfScroll-scrollScope='#elMessageList'
|
|
data-ipsInfScroll-container='#elMessageList [data-role="messageList"]'
|
|
data-ipsInfScroll-url='{$baseUrl->setQueryString( array( 'sortBy' => $sortBy, 'filter' => $filter ) )->stripQueryString( 'id' )}'
|
|
data-ipsInfScroll-pageParam='listPage'
|
|
>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{lang="menu_messages"}</h2>
|
|
{{if request.q}}
|
|
<p class='ipsMessage ipsMessage_info ipsType_reset'>{lang="messenger_filtering" sprintf="\IPS\Request::i()->q"}</p>
|
|
{{endif}}
|
|
<div class='ipsButtonBar ipsPad_half ipsClearfix' data-role="messageListFilters">
|
|
<ul class='ipsButtonRow ipsClearfix'>
|
|
<li>
|
|
<a class="ipsJS_show" href="#elCheck_menu" id="elCheck" title='{lang="select_rows_tooltip"}' data-ipsTooltip data-ipsAutoCheck data-ipsAutoCheck-context="#elMessageList" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active">
|
|
<span class="cAutoCheckIcon ipsType_medium"><i class="fa fa-square-o"></i></span> <i class="fa fa-caret-down"></i>
|
|
<span class='ipsNotificationCount' data-role='autoCheckCount'>0</span>
|
|
</a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide" id="elCheck_menu">
|
|
<li class="ipsMenu_title">{lang="select_rows"}</li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="all"><a href="#">{lang="all"}</a></li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="none"><a href="#">{lang="none"}</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<ul class='ipsButtonRow ipsPos_right ipsClearfix'>
|
|
<li>
|
|
<a href='#elSortByMenu_menu' id='elSortByMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="sort_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elSortByMenu_menu'>
|
|
{{foreach array( 'mt_last_post_time', 'mt_start_time', 'mt_replies' ) as $k}}
|
|
<li class='ipsMenu_item {{if $k == \IPS\Request::i()->sortBy or ( !\IPS\Request::i()->sortBy and $k === 'mt_last_post_time')}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$k}'><a href='{$baseUrl->setQueryString( array( 'sortBy' => $k, 'filter' => $filter ) )}'>{lang="$k"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href='#elFilterMenu_menu' id='elFilterMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="filter_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterMenu_menu'>
|
|
<li class='ipsMenu_item {{if !\IPS\Request::i()->filter}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='all'><a href='{$baseUrl->setQueryString( array( 'sortBy' => $sortBy ) )}'>{lang="messenger_filter_all"}</a></li>
|
|
{{foreach array( 'mine', 'not_mine' ) as $k}}
|
|
<li class='ipsMenu_item {{if $k === \IPS\Request::i()->filter or ( !\IPS\Request::i()->filter and $k === 'all' )}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$k}'><a href='{$baseUrl->setQueryString( array( 'sortBy' => $sortBy, 'filter' => $k ) )}'>{lang="messenger_filter_{$k}"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id='elMessageList' class='ipsClear ipsScrollbar ipsAreaBackground_light'>
|
|
<form action="{url="app=core&module=messaging&controller=messenger" seoTemplate="messenger"}" method="post" data-role='moderationTools' data-ipsPageAction>
|
|
<ol class='ipsDataList' data-role='messageList' data-ipsKeyNav data-ipsKeyNav-observe='return'>
|
|
{template="messageListRows" app="core" group="messaging" params="$conversations"}
|
|
</ol>
|
|
<noscript><div class="ipsPad">{$pagination|raw}</div></noscript>
|
|
<div class="ipsAreaBackground ipsPad ipsClearfix" data-role="pageActionOptions">
|
|
<div class="ipsPos_right">
|
|
<select name="modaction" data-role="moderationAction">
|
|
<option value='delete' data-icon='trash'>{lang="messenger_leave"}</option>
|
|
</select>
|
|
<button type="submit" class="ipsButton ipsButton_alternate ipsButton_verySmall">{lang="submit"}</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
<div class='ipsResponsive_showPhone ipsResponsive_block ipsAreaBackground_light ipsPad'>
|
|
{$pagination|raw}
|
|
</div>
|
|
<div class='ipsAreaBackground ipsPad' id='elMessageSearch'>
|
|
<form accept-charset='utf-8' method='post' action="{url="app=core&module=messaging&controller=messenger" seoTemplate="messenger"}" data-role='messageSearch'>
|
|
<a href='#' data-action='messageSearchCancel' class='ipsHide'><i class='fa fa-times'></i></a>
|
|
<input type='text' data-role='messageSearchText' class='ipsField_fullWidth' name='q' placeholder='{lang="messenger_search"}' value="{request="q"}">
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<p class='ipsType_right ipsType_medium'>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=disableMessenger" seoTemplate="messenger" csrf="true"}' data-confirm>{lang="disable_messenger"}</a>
|
|
</p>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid' data-role='filterContent'>
|
|
<div id='elMessageViewer' data-controller='core.front.messages.view' {{if $conversation !== NULL}}data-current-id="{$conversation->id}"{{endif}}>
|
|
{{if $conversation === NULL}}
|
|
{template="nomessage" group="messaging"}
|
|
{{else}}
|
|
{template="conversation" group="messaging" params="$conversation, $folders"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{if \IPS\Member::loggedIn()->group['g_max_messages']}}
|
|
<div class='ipsResponsive_showPhone ipsResponsive_block'>
|
|
<div class='ipsType_center' data-role="quotaTooltip">
|
|
<span class="ipsAttachment_progress"><span data-role='quotaWidth' style='width: {expression="100 / \IPS\Member::loggedIn()->group['g_max_messages'] * array_sum( $counts )"}%'></span></span><br>
|
|
<span class='ipsType_light ipsResponsive_showPhone ipsResponsive_inline'>{lang="messenger_quota_short" sprintf="100 / \IPS\Member::loggedIn()->group['g_max_messages'] * array_sum( $counts )"}</span>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
<div id='elFolderRename_content' style='display: none' data-controller="core.front.messages.folderDialog" data-type='rename'>
|
|
<form action='#' method='get'>
|
|
<div class='ipsPad'>
|
|
<input type='text' class='ipsField_primary ipsField_fullWidth' data-role="folderName">
|
|
</div>
|
|
<div class='ipsAreaBackground ipsPad ipsType_right'>
|
|
<button type='submit' class='ipsButton ipsButton_primary' data-action='saveFolderName'>{lang="save"}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<div id='elAddFolder_content' style='display: none' data-controller="core.front.messages.folderDialog" data-type='add'>
|
|
<form action='#' method='get'>
|
|
<div class='ipsPad'>
|
|
<input type='text' class='ipsField_primary ipsField_fullWidth' data-role="folderName" placeholder="{lang="messenger_add_folder_name"}">
|
|
</div>
|
|
<div class='ipsAreaBackground ipsPad ipsType_right'>
|
|
<button type='submit' class='ipsButton ipsButton_primary' data-action='saveFolderName'>{lang="messenger_add_folder"}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="modcp" template_name="announcementRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
<li class="ipsDataItem {{if $row->active !== 1}}ipsFaded ipsFaded_withHover{{endif}} ipsDataItem_unread {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}} {{if !$row->active}}ipsModerated{{endif}} cModCPAnnouncementRow">
|
|
<div class='ipsDataItem_icon ipsPos_top ipsResponsive_hidePhone'>
|
|
{template="userPhoto" app="core" group="global" params="$row->author(), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'>
|
|
<a href='{$row->url()}' title='{lang="view_announcement"}'>
|
|
{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}
|
|
</a>
|
|
|
|
{{if $row->active}}
|
|
<span class='ipsBadge ipsBadge_new'>{lang="active"}</span>
|
|
{{else}}
|
|
<span class='ipsBadge ipsBadge_style5'>{lang="inactive"}</span>
|
|
{{endif}}
|
|
</h4>
|
|
<p class='ipsType_reset ipsType_light'>{lang="byline" sprintf="$row->author()->name"}{datetime="$row->__get( $row::$databaseColumnMap['date'] )" dateonly="true"}</p>
|
|
<div class='ipsDataItem_meta'>
|
|
<br>
|
|
<div class='ipsType_richText ipsType_medium' data-ipsTruncate data-ipsTruncate-size='4 lines' data-ipsTruncate-type='remove'>
|
|
{$row->content|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck ipsType_noBreak ipsPos_center'>
|
|
<a href='#elAnnouncement{$row->id}_menu' id='elAnnouncement{$row->id}' class='ipsType_large ipsPos_middle ipsType_blendLinks' data-ipsMenu>
|
|
<i class='fa fa-cog'></i> <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{$row->tableStates()}'>
|
|
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide' id='elAnnouncement{$row->id}_menu'>
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$row->url('status')->csrf()}' title='{lang="announce_toggle"}'>
|
|
<span data-role="ipsMenu_selectedText">{{if $row->active}}{lang="announce_mark_inactive"}{{else}}{lang="announce_mark_active"}{{endif}}</span>
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$row->url('create')}' title='{lang="edit_announcement"}' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="edit_announcement"}'>
|
|
<span data-role="ipsMenu_selectedText">{lang="edit"}</span>
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_sep'></li>
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$row->url('delete')->csrf()}' data-confirm title='{lang="announce_delete"}'>
|
|
{lang="delete"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="modcp" template_name="announcements" template_data="$table" template_location="front" template_app="core"><![CDATA[<div class='ipsPad'>
|
|
<a href='{url="app=core&module=modcp&tab=announcements&action=create" seoTemplate="modcp_announcements"}' id='elAdd_Announcement' class='ipsButton ipsButton_primary ipsPos_right' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="add_announcement"}'><i class='fa fa-add'></i> <span class='ipsResponsive_inline'>{lang="add_announcement"}</span></a>
|
|
<br><br><br>
|
|
<div class='ipsClear ipsBox'>
|
|
{$table|raw}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="approvalQueue" template_data="$output" template_location="front" template_app="core"><![CDATA[<div class="ipsPad" data-controller="core.front.modcp.approveQueue" data-url="{url="app=core&module=modcp&controller=modcp&tab=approval" seoTemplate="modcp_approval"}">
|
|
{$output|raw}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="approvalQueueEmpty" template_data="" template_location="front" template_app="core"><![CDATA[<div class="ipsType_center ipsType_large ipsEmpty">
|
|
<i class="fa fa-check"></i>
|
|
<br>
|
|
{lang="approval_queue_empty"}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="approvalQueueHeader" template_data="$item, $approveUrl, $skipUrl, $deleteUrl" template_location="front" template_app="core"><![CDATA[<div class="ipsBox ipsPad ipsClearfix ipsClear" data-ipsSticky>
|
|
<ul class="ipsToolList ipsToolList_horizontal ipsClearfix ipsPos_right" id="elApprovalToolbar">
|
|
<li>
|
|
{{if $approveUrl}}
|
|
<a href="{$approveUrl}" class="ipsButton ipsButton_medium ipsButton_fullWidth ipsButton_positive" data-action="approvalQueueNext">
|
|
<i class="fa fa-check"></i> {lang="approve"}
|
|
</a>
|
|
{{else}}
|
|
<a href="#" class="ipsButton ipsButton_medium ipsButton_fullWidth ipsButton_positive ipsButton_disabled" data-action="approvalQueueNext">
|
|
<i class="fa fa-check"></i> {lang="approve"}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
<li>
|
|
<a href="{$skipUrl}" class="ipsButton ipsButton_medium ipsButton_light ipsType_center ipsButton_fullWidth" data-action="approvalQueueNext">
|
|
{lang="skip_this_item"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
{{if $deleteUrl}}
|
|
<a href="{$deleteUrl}" class="ipsButton ipsButton_medium ipsButton_fullWidth ipsButton_negative" data-action="approvalQueueNext">
|
|
<i class="fa fa-times"></i> {lang="delete"}
|
|
</a>
|
|
{{else}}
|
|
<a href="#" class="ipsButton ipsButton_medium ipsButton_fullWidth ipsButton_negative ipsButton_disabled" data-action="approvalQueueNext">
|
|
<i class="fa fa-times"></i> {lang="delete"}
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<br>]]></template>
|
|
<template template_group="modcp" template_name="approvalQueueItem" template_data="$item, $ref, $container, $title" template_location="front" template_app="core"><![CDATA[<div id="elApprovePanel" class='ipsBox'>
|
|
<article itemscope="" itemtype="http://schema.org/Comment" class="ipsClearfix ipsClear">
|
|
<div class='ipsPad'>
|
|
<p class="ipsPos_right ipsPad_half">
|
|
<a href='{$item->url()}' class='ipsType_normal ipsType_light'>
|
|
<i class='fa fa-{$item::$icon}'></i> {lang="$item::$title"}
|
|
</a>
|
|
</p>
|
|
<div class="ipsPhotoPanel ipsPhotoPanel_small ipsClearfix">
|
|
{template="userPhoto" group="global" params="$item->author()"}
|
|
<div>
|
|
<a href="#user{$item->author()->member_id}_menu" id="user{$item->author()->member_id}" class="ipsType_sectionHead" data-ipsmenu="">{$item->author()->name} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide" id="user{$item->author()->member_id}_menu">
|
|
{{if \IPS\Member::loggedIn()->modPermission('mod_can_warn')}}
|
|
<li class='ipsMenu_item'><a href='{url="app=core&module=system&controller=warnings&do=warn&id={$item->author()->member_id}&ref={$ref}" seoTemplate="warn_add" seoTitle="$item->author()->members_seo_name"}' data-ipsDialog data-ipsDialog-title="{lang="warn_member" sprintf="$item->author()->name"}" data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="warning_issued"}" data-role="warnUserDialog">{lang="warn_user"}</a></li>
|
|
{{endif}}
|
|
{{if $item->author()->member_id != \IPS\Member::loggedIn()->member_id}}
|
|
{{if $item->author()->members_bitoptions['bw_is_spammer']}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='spamFlagButton'><a href='{url="app=core&module=system&controller=moderation&id={$item->author()->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$item->author()->members_seo_name" csrf="true"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='spamFlagButton'><a href='{url="app=core&module=system&controller=moderation&id={$item->author()->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$item->author()->members_seo_name" csrf="true"}' data-confirm>{lang="spam_flag"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
<li class="ipsMenu_item"><a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$item->author()->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}">{lang="message_send"}</a></li>
|
|
</ul>
|
|
{{if $container}}
|
|
<p class='ipsType_reset'>{lang="posted_in_container"} <a href="{$container->url()}">{$container->_title}</a></p>
|
|
{{endif}}
|
|
<p class="ipsType_light ipsType_reset">{lang="date_replied" htmlsprintf="\IPS\DateTime::ts( $item->mapped('date') )->html(FALSE)"}</p>
|
|
</p></div>
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<div class='ipsBox'>
|
|
<h2 class="ipsType_sectionTitle ipsType_blendLinks"><a href="{$item->url()}">{$title}</a></h2>
|
|
<div class="ipsType_richText ipsPost ipsType_normal ipsPad">
|
|
{$item->content()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</article>
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="approvalQueueSplash" template_data="$skipNextTime" template_location="front" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<div class="ipsType_center ipsType_large ipsPos_center">
|
|
<div id='elModCPApprovalSplash'>
|
|
{lang="approval_queue_splash"}
|
|
</div>
|
|
<br><br>
|
|
<form action="{url="app=core&module=modcp&controller=modcp&tab=approval&go=1" seoTemplate="modcp_approval"}" method="post">
|
|
<button type="submit" class="ipsButton ipsButton_large ipsButton_primary">{lang="approval_queue_start"}</button><br><br>
|
|
<span class="ipsType_normal ipsType_light"><input name="skipnext" value='1' type="checkbox" {{if $skipNextTime}}checked{{endif}}> {lang="approval_queue_skip"}</span>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="modcp" template_name="commentsList" template_data="$comments, $url, $totalCount, $perPage" template_location="front" template_app="core"><![CDATA[{template="pagination" group="global" app="core" location="global" params="$url, $totalCount, isset( \IPS\Request::i()->page ) ? intval( \IPS\Request::i()->page ) : 1, $perPage"}
|
|
{{if count( $comments ) }}
|
|
{{foreach $comments as $comment}}
|
|
{$comment->html()|raw}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{template="pagination" group="global" app="core" location="global" params="$url, $totalCount, isset( \IPS\Request::i()->page ) ? intval( \IPS\Request::i()->page ) : 1, $perPage"}]]></template>
|
|
<template template_group="modcp" template_name="hiddenContent" template_data="$content, $tabs, $activeTab" template_location="front" template_app="core"><![CDATA[<div class='ipsLayout_contentSection'>
|
|
<div class='ipsTabs ipsClearfix' id='elmodCPTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elModCPHiddenTabContent'>
|
|
<a href='#elmodCPTabs' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist' class='ipsList_reset'>
|
|
{{foreach $tabs as $key => $tab}}
|
|
<li>
|
|
<a href='{url="app=core&module=modcp&tab=hidden&area=$key"}' id='modcp_{$key}' class='ipsTabs_item {{if $activeTab === $key}}ipsTabs_activeItem{{endif}}' role="tab" aria-selected="{{if $activeTab == $key}}true{{else}}false{{endif}}">
|
|
{lang="$tab"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<section id='elModCPHiddenTabContent' class='ipsPad'>
|
|
<div id="ipsTabs_elmodCPTabs_modcp_{$activeTab}_panel" class="ipsTabs_panel" aria-labelledby="modcp_{$activeTab}" aria-hidden="false">
|
|
{$content|raw}
|
|
</div>
|
|
</section>
|
|
]]></template>
|
|
<template template_group="modcp" template_name="iptools" template_data="$form" template_location="front" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad ipsFieldRow ipsFieldRow_primary ipsBox ipsBox_transparent' id='elModCPIPTools'>
|
|
{$form|raw}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="memberManagementRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
<li class='ipsDataItem ipsGrid_span6 ipsFaded_withHover ipsClearfix' id='elUserRow_{expression="md5( $row['name'] )"}'>
|
|
<p class="ipsType_reset ipsDataItem_icon">
|
|
{$row['photo']|raw}
|
|
</p>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><strong>{$row['name']|raw}</strong></h4>
|
|
<ul class='ipsList_inline ipsType_noBreak ipsList_reset'>
|
|
{{foreach $row['_buttons'] as $button}}
|
|
{{if $button['title'] == 'modcp_view_warnings'}}
|
|
<li><a href='{$button['link']}' title='{lang="$button['title']"}'>{lang="$button['title']"}</a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<li class="ipsFaded">
|
|
<a href="#elUserMod{$row['member_id']}_menu" id="elUserMod{$row['member_id']}" class="ipsType_large ipsPos_middle ipsType_blendLinks" data-ipsMenu>
|
|
<i class="fa fa-cog"></i> <i class="fa fa-caret-down"></i>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<ul class='ipsMenu ipsHide' id='elUserMod{$row['member_id']}_menu'>
|
|
{{foreach $row['_buttons'] as $button}}
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$button['link']}' title='{lang="$button['title']"}'>
|
|
{lang="$button['title']"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
]]></template>
|
|
<template template_group="modcp" template_name="members" template_data="$content, $tabs, $activeTab, $form" template_location="front" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad ipsFieldRow ipsFieldRow_primary ipsBox ipsBox_transparent' id='elModCPMemberSearch'>
|
|
{$form|raw}
|
|
</div>
|
|
<div class='ipsBox'>
|
|
<div class='ipsTabs ipsClearfix' id='elmodCPTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elModCPMemberTabContent'>
|
|
<a href='#elmodCPTabs' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist' class='ipsList_reset'>
|
|
{{foreach $tabs as $key => $tab}}
|
|
<li>
|
|
<a href='{url="app=core&module=modcp&tab=members&area=$key" seoTemplate="modcp_members"}' id='modcp_{$key}' class='ipsTabs_item {{if $activeTab === $key}}ipsTabs_activeItem{{endif}}' role="tab" aria-selected="{{if $activeTab == $tab}}true{{else}}false{{endif}}">
|
|
{lang="modcp_members_{$key}"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<section id='elModCPMemberTabContent' class='ipsPad'>
|
|
<div id="ipsTabs_elmodCPTabs_modcp_{$activeTab}_panel" class="ipsTabs_panel" aria-labelledby="modcp_{$activeTab}" aria-hidden="false">
|
|
{$content|raw}
|
|
</div>
|
|
</section>
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="recentWarningsRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if empty( $rows )}}
|
|
<tr>
|
|
<td colspan="4">
|
|
<div class='ipsPad_double ipsType_light'>
|
|
{lang="no_results"}
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
{{else}}
|
|
{{foreach $rows as $warning}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $warning->member ), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h3 class='ipsType_sectionHead'>
|
|
<a href="{$warning->url()}" data-ipsDialog data-ipsDialog-size='narrow' class="ipsPos_left ipsType_blendLinks" data-ipsTooltip title='{lang="wan_action_points" pluralize="$warning->points"}'>
|
|
<span class="ipsPoints ipsPoints_small">{$warning->points}</span> {lang="core_warn_reason_{$warning->reason}"}
|
|
</a>
|
|
</h3>
|
|
<p class='ipsType_medium ipsType_reset'><strong>{lang="user_warned_by" htmlsprintf="\IPS\Member::load( $warning->member )->link(), \IPS\Member::load( $warning->moderator )->link()"}</strong> <span class='ipsType_light ipsType_noBreak'>{datetime="$warning->date"}</span></p>
|
|
|
|
{{if \IPS\Settings::i()->warnings_acknowledge}}
|
|
<span class='ipsType_medium ipsType_noBreak'>
|
|
{{if $warning->acknowledged}}
|
|
<strong class='ipsType_success'><i class='fa fa-check-circle'></i> {lang="warning_acknowledged"}</strong>
|
|
{{else}}
|
|
<span class='ipsType_light'>{lang="warning_not_acknowledged"}</span>
|
|
{{endif}}
|
|
</span>
|
|
{{endif}}
|
|
{{if $warning->note_mods}}
|
|
<div class='ipsSpacer_top ipsType_richText ipsType_medium ipsContained ipsType_break' data-ipsTruncate data-ipsTruncate-size='4 lines' data-ipsTruncate-type='remove'>
|
|
{$warning->note_mods|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="modcp" template_name="recentWarningsTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{lang="modcp_recent_warnings"}</h2>
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
|
|
<ul class='ipsDataList ipsDataList_large'>
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ul>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="report" template_data="$report,$comment,$item,$ref,$prevReport,$prevItem,$nextReport,$nextItem" template_location="front" template_app="core"><![CDATA[{{if $comment}}
|
|
{{$idField = $comment::$databaseColumnId;}}
|
|
{{$quoteData = json_encode( array( 'userid' => $comment->author()->member_id, 'username' => $comment->author()->name, 'timestamp' => $comment->mapped('date'), 'contentapp' => $item::$application, 'contenttype' => $item::$module, 'contentclass' => str_replace( '\\', '_', mb_substr( $comment::$itemClass, 4 ) ) ) );}}
|
|
{{else}}
|
|
{{if $item}}
|
|
{{$class = get_class( $item );}}
|
|
{{$quoteData = json_encode( array( 'userid' => $item->author()->member_id, 'username' => $item->author()->name, 'timestamp' => $item->mapped('date'), 'contentapp' => $item::$application, 'contenttype' => $item::$module, 'contentclass' => str_replace( '\\', '_', mb_substr( get_class( $item ), 4 ) ) ) );}}
|
|
{{else}}
|
|
{{$quoteData = json_encode( array() );}}
|
|
{{endif}}
|
|
{{endif}}
|
|
<article class='ipsColumns ipsColumns_collapseTablet ipsClear ipsClearfix' data-controller="core.front.modcp.report">
|
|
<div class='ipsColumn ipsColumn_fluid' data-controller='core.front.core.comment' data-quoteData='{$quoteData}'>
|
|
{{if $comment}}
|
|
<div class="ipsClearfix" id='elReportComment'>
|
|
<h2 class="ipsType_sectionHead">
|
|
<a href='{$report->url()->setQueryString( 'action', 'find' )}' class='ipsType_blendLinks'>{$comment->item()->mapped('title')}</a>
|
|
</h2>
|
|
<br>
|
|
<a href='{$report->url()->setQueryString( array( 'action' => 'find', 'parent' => 1 ) )}' class='ipsType_normal ipsType_light'>
|
|
<i class='fa fa-{$comment::$icon}'></i> {lang="$comment::$title"}
|
|
</a>
|
|
<br><br>
|
|
<div class='ipsPost' data-role='commentContent'>
|
|
<div data-ipsTruncate data-ipsTruncate-type="hide" data-ipsTruncate-size="#elReportPanel">
|
|
<div class='ipsType_richText ipsType_normal ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{$comment->content()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr class='ipsHr'>
|
|
<ul class='ipsList_inline' data-role="commentControls">
|
|
{{if $comment->canEdit( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$comment->url('edit')}&_report={$report->id}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->canHide( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$comment->url('hide')->csrf()}&_report={$report->id}' data-action='hideComment' data-ipsDialog data-ipsDialog-title="{lang="hide"}">{lang="hide"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->canDelete( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$comment->url('delete')->csrf()}&_report={$report->id}' data-action='deleteComment' data-showOnDelete="#elReportCommentDeleted" data-hideOnDelete="#elReportComment">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
{{if $comment->item()->canDelete( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$item->url('moderate')->setQueryString( 'action', 'delete' )->csrf()}&_report={$report->id}' data-action='deleteComment' data-showOnDelete="#elReportCommentDeleted" data-hideOnDelete="#elReportComment">{lang="delete_thing" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $item::$title )"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
{{elseif $item}}
|
|
<div class="ipsClearfix" id='elReportComment'>
|
|
<h2 class="ipsType_sectionHead">
|
|
<a href='{$report->url()->setQueryString( 'action', 'find' )}' class='ipsType_blendLinks'>{$item->mapped('title')}</a>
|
|
</h2>
|
|
<br>
|
|
<a href='{$report->url()->setQueryString( array( 'action' => 'find' ) )}' class='ipsType_normal ipsType_light'>
|
|
<i class='fa fa-{$item::$icon}'></i> {lang="$item::$title"}
|
|
</a>
|
|
<br><br>
|
|
<div class='ipsPost' data-role='commentContent'>
|
|
<div data-ipsTruncate data-ipsTruncate-type="hide" data-ipsTruncate-size="#elReportPanel">
|
|
<div class='ipsType_richText ipsType_normal ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{$item->content()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr class='ipsHr'>
|
|
<ul class='ipsList_inline' data-role="commentControls">
|
|
{{if $item->canEdit( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$item->url('edit')}&_report={$report->id}' data-action='editComment'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{if $item->canHide( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$item->url('moderate')->setQueryString( 'action', 'hide' )->csrf()}&_report={$report->id}' data-action='hideComment' data-ipsDialog data-ipsDialog-title="{lang="hide"}">{lang="hide"}</a></li>
|
|
{{endif}}
|
|
{{if $item->canDelete( \IPS\Member::loggedIn() )}}
|
|
<li><a href='{$item->url('moderate')->setQueryString( 'action', 'delete' )->csrf()}&_report={$report->id}' data-action='deleteComment' data-showOnDelete="#elReportCommentDeleted" data-hideOnDelete="#elReportComment">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<div class="ipsType_center ipsType_large ipsEmpty {{if $comment or $item}}ipsHide{{endif}}" id='elReportCommentDeleted'>
|
|
<i class="fa fa-trash-o"></i>
|
|
<br>
|
|
{lang="content_deleted"}
|
|
</div>
|
|
</div>
|
|
<aside class='ipsColumn ipsColumn_veryWide'>
|
|
<div id="elReportSidebar">
|
|
<div class='ipsAreaBackground ipsPad_half' id='elReportSidebar_toggle' data-controller='core.front.modcp.reportToggle'>
|
|
<div class='ipsPad_half ipsType_center ipsType_normal'>
|
|
<p class='ipsType_reset ipsType_large cReportSidebar_icon ipsSpacer_bottom ipsSpacer_half'><i class='{{if $report->status == 1}}fa fa-flag{{elseif $report->status == 2}}fa fa-exclamation-triangle{{else}}fa fa-check-circle{{endif}}' data-role='reportIcon'></i></p>
|
|
<strong>{lang="status"}:</strong> <span data-role="reportStatus">{lang="report_status_{$report->status}"}</span>
|
|
</div>
|
|
|
|
<a href='#elReportItem{$report->id}_menu' id='elReportItem{$report->id}' class='ipsButton ipsButton_primary ipsButton_small ipsButton_fullWidth' data-ipsMenu data-ipsMenu-closeOnClick data-ipsMenu-appendTo='#elReportSidebar_toggle' data-ipsMenu-selectable>
|
|
{lang="mark_report_as"} <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
{template="reportToggle" group="modcp" params="$report, '', FALSE"}
|
|
</div>
|
|
<br>
|
|
<div id='elReportPanel' class='ipsBox'>
|
|
{template="reportPanel" group="modcp" params="$report,$comment,$ref"}
|
|
</div>
|
|
</div>
|
|
</aside>
|
|
</article>
|
|
<br>
|
|
<nav class='ipsPager ipsGrid ipsClearFix ipsList_inline'>
|
|
<div class='ipsGrid_span6 ipsPager_prev'>
|
|
{{if $prevReport}}
|
|
<a href="{url="app=core&module=modcp&controller=modcp&tab=reports&action=view&id={$prevReport['id']}" seoTemplate="modcp_report"}" title='{lang="previous_report"}' rel='prev'>
|
|
<span class='ipsPager_type'>{lang="previous_report"}</span>
|
|
{{if $prevItem}}
|
|
<span class='ipsPager_title ipsType_break'>{wordbreak="$prevItem->mapped('title')"}</span>
|
|
{{else}}
|
|
<span class='ipsPager_title'><em class="ipsType_light">{lang="content_deleted"}</em></span>
|
|
{{endif}}
|
|
</a>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsGrid_span6 ipsType_right ipsPager_next'>
|
|
{{if $nextReport}}
|
|
<a href="{url="app=core&module=modcp&controller=modcp&tab=reports&action=view&id={$nextReport['id']}" seoTemplate="modcp_report"}" title='{lang="next_report"}' rel='next'>
|
|
<span class='ipsPager_type'>{lang="next_report"}</span>
|
|
{{if $nextItem}}
|
|
<span class='ipsPager_title ipsType_break'>{wordbreak="$nextItem->mapped('title')"}</span>
|
|
{{else}}
|
|
<span class='ipsPager_title'><em class="ipsType_light">{lang="content_deleted"}</em></span>
|
|
{{endif}}
|
|
</a>
|
|
{{endif}}
|
|
</div>
|
|
</nav>
|
|
<section class='ipsBox'>
|
|
<h2 class="ipsType_sectionTitle ipsType_reset">{lang="responses_to_report"}</h2>
|
|
<div data-controller="core.front.core.commentsWrapper" data-tabsId='elTabsReport'>
|
|
<div class="ipsTabs ipsTabs_contained ipsClearfix" id="elTabsReport" data-ipsTabBar data-ipstabbar-contentarea="#elReportComments">
|
|
<a href="#elTabs_report" data-action="expandTabs"><i class="fa fa-caret-down"></i></a>
|
|
<ul role="tablist">
|
|
<li>
|
|
<a href="#" id="elUserReports" class="ipsTabs_item ipsTabs_activeItem" title="" role="tab" aria-selected="true">
|
|
{lang="report_user_reports" pluralize="count( $report->reports() )"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="#" id="elTabsReport_tab_mod_comments" class="ipsTabs_item" title="" role="tab" aria-selected="false">
|
|
{lang="report_mod_comments" pluralize="count( $report->comments() )"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="elReportComments" class="ipsTabs_contained ipsTabs_panels">
|
|
<div id="ipsTabs_elTabsReport_elUserReports_panel" class="ipsTabs_panel" aria-labelledby="elUserReports" aria-hidden="false">
|
|
<div data-role="commentFeed">
|
|
{{foreach $report->reports() as $r}}
|
|
<article itemscope itemtype="http://schema.org/Comment" id="elCommentMod_{$r['rid']}" class="ipsComment ipsComment_parent ipsClearfix ipsClear ">
|
|
<div class='ipsComment_content ipsType_medium'>
|
|
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $r['report_by'] ), 'mini'"}
|
|
<div>
|
|
<h3 class='ipsComment_author ipsType_normal ipsType_blendLinks'>{member="link()" id="$r['report_by']" raw="true"}</h3>
|
|
<p class="ipsComment_meta ipsType_light ipsType_medium">
|
|
{lang="report_date_submitted"} {datetime="$r['date_reported']"}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class='ipsPad'>
|
|
<div class="ipsType_normal ipsType_richText ipsType_break ipsContained" data-controller='core.front.core.lightboxedImages'>
|
|
{{if $r['report']}}
|
|
{$r['report']|raw}
|
|
{{else}}
|
|
<p><em class="ipsType_light">{lang="report_no_message"}</em></p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</article>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
<div id="ipsTabs_elTabsReport_elTabsReport_tab_mod_comments_panel" class="ipsTabs_panel" aria-labelledby="elTabsReport_tab_mod_comments" aria-hidden="false">
|
|
<div data-controller='core.front.core.commentFeed' {{if settings.auto_polling_enabled}}data-autoPoll{{endif}} data-commentsType='mod_comments' data-baseURL='{$report->url()}' {{if $report->isLastPage()}}data-lastPage{{endif}} data-feedID='report-{$report->id}'>
|
|
<div data-role='commentFeed' data-controller='core.front.core.moderation'>
|
|
<form action="{$report->url()->csrf()->setQueryString( 'action', 'multimodComment' )}" method="post" data-ipsPageAction data-role='moderationTools'>
|
|
{{foreach $report->comments() as $modcomment}}
|
|
{$modcomment->html()|raw}
|
|
{{endforeach}}
|
|
{template="commentMultimod" app="core" group="global" params="$report"}
|
|
</form>
|
|
</div>
|
|
<div data-role='replyArea' class='ipsAreaBackground ipsPad'>
|
|
{$report->commentForm()|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="modcp" template_name="reportList" template_data="$table" template_location="front" template_app="core"><![CDATA[<div class='ipsBox' data-controller='core.front.modcp.reportList'>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="reportListOverview" template_data="$table, $headers, $rows, $quickSearch, $advancedSearch" template_location="front" template_app="core"><![CDATA[<ol class='ipsDataList'>
|
|
{{if count($rows)}}
|
|
{{foreach $rows as $row}}
|
|
<li class="ipsDataItem {{if $row->unread()}}ipsDataItem_unread{{endif}}">
|
|
<div class='ipsDataItem_icon ipsPos_top ipsType_center'>
|
|
<i class='ipsType_large {{if $row->status == 1}}fa fa-flag{{elseif $row->status == 2}}fa fa-exclamation-triangle{{else}}fa fa-check-circle{{endif}}' data-role="ipsMenu_selectedIcon" title="{{if $row->status == 1}}{lang="report_status_1"}{{elseif $row->status == 2}}{lang="report_status_2"}{{else}}{lang="report_status_3"}{{endif}}" data-ipsTooltip></i>
|
|
</div>
|
|
<div class="ipsDataItem_main">
|
|
<h4 class="ipsDataItem_title"><a href='{$row->url()}'>{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}</a></h4>
|
|
<ul class="ipsDataItem_meta ipsList_inline">
|
|
<li class='ipsType_light'>
|
|
{{if $row->last_updated}}{datetime="$row->last_updated"}{{else}}{datetime="$row->first_report_date"}{{endif}}
|
|
</li>
|
|
{{foreach $row->stats() as $k => $v}}
|
|
<li>
|
|
<span class='ipsDataItem_stats_number'>{number="$v"}</span>
|
|
<span class='ipsDataItem_stats_type'>{lang="$k" pluralize="$v"}</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsResponsive_hidePhone ipsType_center'>
|
|
{{if $lastComment = $row->comments( 1, 0, 'date', 'desc' )}}
|
|
{template="userPhoto" app="core" group="global" params="$lastComment->author(), 'tiny'"}
|
|
{{else}}
|
|
{template="userPhoto" app="core" group="global" params="$row->author(), 'tiny'"}
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsPad ipsType_light ipsType_center ipsType_normal'>{lang="no_results_reports"}</div>
|
|
</div>
|
|
{{endif}}
|
|
</ol>]]></template>
|
|
<template template_group="modcp" template_name="reportPanel" template_data="$report,$comment,$ref" template_location="front" template_app="core"><![CDATA[<div data-role="authorPanel">
|
|
{{if $report->author}}
|
|
<div class="ipsPhotoPanel ipsPhotoPanel_small ipsPad ipsAreaBackground ipsClear ipsClearfix">
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $report->author ), 'small'"}
|
|
<div>
|
|
<a href="#user{$report->author}_menu" id="user{$report->author}" class="ipsType_sectionHead" data-ipsMenu>{member="name" id="$report->author"} <i class="fa fa-caret-down"></i></a>
|
|
<br>
|
|
{{if \IPS\Member::load( $report->author )->mod_posts}}
|
|
<p class="ipsBadge ipsBadge_warning" data-ipsTooltip title="{{if \IPS\Member::load( $report->author )->mod_posts == -1}}{lang="moderation_modq_perm"}{{else}}{lang="moderation_modq_temp" sprintf="\IPS\DateTime::ts( \IPS\Member::load( $report->author )->mod_posts )"}{{endif}}">
|
|
{lang="moderation_modq"}
|
|
</p>
|
|
{{endif}}
|
|
{{if \IPS\Member::load( $report->author )->restrict_post}}
|
|
<p class="ipsBadge ipsBadge_warning" data-ipsTooltip title="{{if \IPS\Member::load( $report->author )->restrict_post == -1}}{lang="moderation_nopost_perm"}{{else}}{lang="moderation_nopost_temp" sprintf="\IPS\DateTime::ts( \IPS\Member::load( $report->author )->restrict_post )"}{{endif}}">
|
|
{lang="moderation_nopost"}
|
|
</p>
|
|
{{endif}}
|
|
{{if \IPS\Member::load( $report->author )->temp_ban}}
|
|
<p class="ipsBadge ipsBadge_warning" data-ipsTooltip title="{{if \IPS\Member::load( $report->author )->temp_ban == -1}}{lang="moderation_banned_perm"}{{else}}{lang="moderation_banned_temp" sprintf="\IPS\DateTime::ts( \IPS\Member::load( $report->author )->temp_ban )"}{{endif}}">
|
|
{lang="moderation_banned"}
|
|
</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide' id='user{$report->author}_menu'>
|
|
{{if \IPS\Member::loggedIn()->modPermission('mod_can_warn')}}
|
|
<li class='ipsMenu_item'><a href='{url="app=core&module=system&controller=warnings&do=warn&id={$report->author}&ref={$ref}" seoTemplate="warn_add" seoTitle="\IPS\Member::load( $report->author )->members_seo_name"}' data-ipsDialog data-ipsDialog-title="{lang="warn_member" sprintf="\IPS\Member::load( $report->author )->name"}" data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="warning_issued"}" data-role="warnUserDialog">{lang="warn_user"}</a></li>
|
|
{{endif}}
|
|
{{if $report->author != \IPS\Member::loggedIn()->member_id}}
|
|
{{if \IPS\Member::load( $report->author )->members_bitoptions['bw_is_spammer']}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='spamUnFlagButton'><a href='{url="app=core&module=system&controller=moderation&id={$report->author}&s=0" seoTemplate="flag_as_spammer" seoTitle="\IPS\Member::load( $report->author )->members_seo_name" csrf="true"}'>{lang="spam_unflag"}</a></li>
|
|
{{else}}
|
|
<li class='ipsMenu_item' data-ipsMenuValue='spamFlagButton'><a href='{url="app=core&module=system&controller=moderation&id={$report->author}&s=1" seoTemplate="flag_as_spammer" seoTitle="\IPS\Member::load( $report->author )->members_seo_name" csrf="true"}'>{lang="spam_flag"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
<li class="ipsMenu_item"><a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$report->author}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}">{lang="message_send"}</a></li>
|
|
</ul>
|
|
{{if \IPS\Member::loggedIn()->modPermission('mod_see_warn')}}
|
|
<div class='ipsPad'>
|
|
<strong>{lang="previous_warnings"}</strong>
|
|
{{if count(\IPS\Member::load( $report->author )->warnings( 1 ))}}
|
|
<ol class='ipsDataList'>
|
|
{{foreach \IPS\Member::load( $report->author )->warnings( 2 ) as $warning}}
|
|
<li class="ipsDataItem">
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center'>
|
|
<a href="{url="app=core&module=system&controller=warnings&id={$report->author}&w={$warning->id}" seoTemplate="warn_view" seoTitle="\IPS\Member::load( $report->author )->members_seo_name"}" data-ipsHover class="ipsType_blendLinks">
|
|
<span class="ipsPoints">{$warning->points}</span>
|
|
</a>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<a href="{url="app=core&module=system&controller=warnings&id={$report->author}&w={$warning->id}" seoTemplate="warn_view" seoTitle="\IPS\Member::load( $report->author )->members_seo_name"}" data-ipsHover class="ipsType_blendLinks">
|
|
<h4 class="ipsDataItem_title">{lang="core_warn_reason_{$warning->reason}"}</h4>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{lang="byline" sprintf="\IPS\Member::load( $warning->moderator )->name"}{datetime="$warning->date"}
|
|
</p>
|
|
</a>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
<br>
|
|
<div class='ipsType_center'>
|
|
<a href='{url="app=core&module=system&controller=warnings&id={$report->author}" seoTemplate="warn_list" seoTitle="\IPS\Member::load( $report->author )->members_seo_name"}' class=''><i class='fa fa-bars'></i> {lang="see_all_c"}</a>
|
|
</div>
|
|
{{else}}
|
|
<p class='ipsType_reset ipsType_light ipsType_medium'>
|
|
{lang="no_previous_warnings"}
|
|
</p>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
<div class="ipsPhotoPanel ipsPhotoPanel_small ipsClearfix">
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( 0 ), 'small'"}
|
|
<div>
|
|
<span class="ipsType_sectionHead" data-ipsMenu>{member="name" id="0"}</span>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="reportToggle" template_data="$report, $ref='list', $showIcon=TRUE" template_location="front" template_app="core"><![CDATA[{{if $showIcon}}
|
|
<a href='#elReportItem{$report->id}_menu' id='elReportItem{$report->id}' data-action="changeStatus" class='ipsType_blendLinks' data-ipsMenu data-ipsMenu-closeOnClick>
|
|
<span class="cReportIcon ipsType_large"><i class='{{if $report->status == 1}}fa fa-flag{{elseif $report->status == 2}}fa fa-exclamation-triangle{{else}}fa fa-check-circle{{endif}}' data-role="ipsMenu_selectedIcon"></i></span> <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
{{endif}}
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide' id='elReportItem{$report->id}_menu'>
|
|
<li class='ipsMenu_title'>{lang="mark_as"}</li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='3'>
|
|
<a href='{url="app=core&module=modcp&tab=reports&id={$report->id}&action=view&setStatus=3&ref={$ref}" csrf="true" seoTemplate="modcp_report"}' data-action='ipsMenu_ping'>
|
|
<i class='fa fa-check-circle' data-role="ipsMenu_selectedIcon"></i> <span data-role="ipsMenu_selectedText">{lang="report_status_3"}</span>
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='2'>
|
|
<a href='{url="app=core&module=modcp&tab=reports&id={$report->id}&action=view&setStatus=2&ref={$ref}" csrf="true" seoTemplate="modcp_report"}' data-action='ipsMenu_ping'>
|
|
<i class='fa fa-exclamation-triangle' data-role="ipsMenu_selectedIcon"></i> <span data-role="ipsMenu_selectedText">{lang="report_status_2"}</span>
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='1'>
|
|
<a href='{url="app=core&module=modcp&tab=reports&id={$report->id}&action=view&setStatus=1&ref={$ref}" csrf="true" seoTemplate="modcp_report"}' data-action='ipsMenu_ping'>
|
|
<i class='fa fa-flag' data-role="ipsMenu_selectedIcon"></i> <span data-role="ipsMenu_selectedText">{lang="report_status_1"}</span>
|
|
</a>
|
|
</li>
|
|
{{if !$showIcon and $report->canDelete( \IPS\Member::loggedIn() )}}
|
|
<li class='ipsMenu_sep'></li>
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$report->url()->csrf()->setQueryString('_action', 'delete')}' data-action='ipsMenu_ping'>
|
|
<i class='fa fa-times'></i> {lang="delete"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>]]></template>
|
|
<template template_group="modcp" template_name="tableWrapper" template_data="$table, $title=''" template_location="front" template_app="core"><![CDATA[<div class='ipsBox' data-controller='core.front.modcp.reportList'>
|
|
{{if $title}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsClear'>{lang="$title"}</h2>
|
|
{{endif}}
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="template" template_data="$content, $tabs, $activeTab, $contentTypes, $approvalCount" template_location="front" template_app="core"><![CDATA[<div class='ipsPageHeader ipsClearfix ipsSpacer_bottom'>
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_view_reports')}}
|
|
<div class='ipsPos_right ipsResponsive_hidePhone'>
|
|
<ul class='ipsList_inline ipsPad_half'>
|
|
<li {{if !$approvalCount}}class='ipsType_light'{{endif}}><span id='elModCPApprovalCount' class='ipsBadge {{if !$approvalCount}}ipsBadge_style6{{else}} ipsBadge_style1{{endif}} ipsBadge_medium'>{$approvalCount}</span> {lang="modcp_approval"}</li>
|
|
<li {{if !\IPS\Member::loggedIn()->reportCount()}}class='ipsType_light'{{endif}}><span class='ipsBadge {{if !\IPS\Member::loggedIn()->reportCount()}}ipsBadge_style6{{else}} ipsBadge_style1{{endif}} ipsBadge_medium'>{member="reportCount()"}</span> {lang="active_reports"}</li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<h1 class='ipsType_pageTitle'><i class='fa fa-lock'></i> {lang="modcp"}</h1>
|
|
</div>
|
|
<br>
|
|
|
|
<section>
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_medium'>
|
|
<div class='ipsSideMenu' id='modcp_menu' data-ipsSideMenu>
|
|
<h3 class='ipsSideMenu_mainTitle ipsAreaBackground_light ipsType_medium'>
|
|
<a href='#modcp_menu' class='ipsPad_double' data-action='openSideMenu'><i class='fa fa-bars'></i> {lang="modcp_sections"} <i class='fa fa-caret-down'></i></a>
|
|
</h3>
|
|
<h4 class='ipsSideMenu_title'>{lang="modcp_tools"}</h4>
|
|
<ul class='ipsSideMenu_list'>
|
|
{{foreach $tabs as $key => $tab}}
|
|
{{if $key !== 'hidden'}}
|
|
<li class='ipsSideMenu_item {{if $activeTab == $key}}ipsSideMenu_itemActive{{endif}}'><a href='{url="app=core&module=modcp&controller=modcp&tab=$key" seoTemplate="modcp_{$key}"}'>{lang="modcp_{$key}"}</a></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
<h4 class='ipsSideMenu_title'>{lang="modcp_hidden"}</h4>
|
|
<ul class='ipsSideMenu_list'>
|
|
<li class="ipsSideMenu_item {{if $activeTab === 'hidden' and !request.type}}ipsSideMenu_itemActive{{endif}}"><a href="{url="app=core&module=modcp&controller=modcp&tab=content" seoTemplate="modcp_content"}">{lang="search_everything"}</a></li>
|
|
</ul>
|
|
{{foreach $contentTypes as $app => $type }}
|
|
<h5 class='ipsSideMenu_subTitle'>{lang="module__{$app}"}</h5>
|
|
<ul class='ipsSideMenu_list'>
|
|
{{foreach $type as $key => $class}}
|
|
<li class="ipsSideMenu_item {{if $activeTab === 'hidden' and request.type == $key}}ipsSideMenu_itemActive{{endif}}"><a href="{url="app=core&module=modcp&controller=modcp&tab=content&type={$key}" seoTemplate="modcp_content"}">{lang="{$class::$title}_pl"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid' id='elModCPContent'>
|
|
{$content|raw}
|
|
</div>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="modcp" template_name="unapprovedContent" template_data="$content, $tabs, $activeTab" template_location="front" template_app="core"><![CDATA[<div class='ipsLayout_contentSection'>
|
|
<div class='ipsTabs ipsClearfix' id='elmodCPTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elModCPHiddenTabContent'>
|
|
<a href='#elmodCPTabs' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist' class='ipsList_reset'>
|
|
{{foreach $tabs as $key => $tab}}
|
|
<li>
|
|
<a href='{url="app=core&module=modcp&tab=approval&area=$key"}' id='modcp_{$key}' class='ipsTabs_item {{if $activeTab === $key}}ipsTabs_activeItem{{endif}}' role="tab" aria-selected="{{if $activeTab == $tab}}true{{else}}false{{endif}}">
|
|
{lang="$tab"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<section id='elModCPHiddenTabContent' class='ipsPad'>
|
|
<div id="ipsTabs_elmodCPTabs_modcp_{$activeTab}_panel" class="ipsTabs_panel" aria-labelledby="modcp_{$activeTab}" aria-hidden="false">
|
|
{$content|raw}
|
|
</div>
|
|
</section>
|
|
]]></template>
|
|
<template template_group="modcp" template_name="warnActions" template_data="$actions, $member, $min" template_location="front" template_app="core"><![CDATA[<div class="ipsAreaBackground ipsPad">
|
|
<h3 class='ipsType_sectionHead'>{lang="assigned_point_levels"}</h3>
|
|
<p class='ipsType_medium'>{lang="warn_points_blurb"}</p>
|
|
<ol class='ipsDataList ipsDataList_reducedSpacing'>
|
|
{{if $min}}
|
|
<li class="ipsDataItem">
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsPos_top'>
|
|
<span class="ipsPoints"><i class='fa fa-angle-left'></i> {$min}</span>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<p class="ipsType_light ipsType_reset">{lang="no_punishment"}</p>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{foreach $actions as $action}}
|
|
<li class="ipsDataItem">
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsPos_top'>
|
|
<span class="ipsPoints">{$action['wa_points']}</span>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
{{if $action['wa_mq'] or $action['wa_rpa'] or $action['wa_suspend']}}
|
|
<ul class='ipsList_reset ipsType_medium'>
|
|
{{if $action['wa_mq']}}
|
|
<li>
|
|
<strong>{lang="warn_mq"}</strong>
|
|
<br>
|
|
<span class="ipsType_light">
|
|
<i class='fa fa-clock-o'></i>
|
|
{{if $action['wa_mq'] != -1}}
|
|
{{if $action['wa_mq_unit'] == 'h'}}
|
|
{lang="f_hours" pluralize="$action['wa_mq']"}
|
|
{{else}}
|
|
{lang="f_days" pluralize="$action['wa_mq']"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="indefinitely"}
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if $action['wa_rpa']}}
|
|
<li>
|
|
<strong>{lang="warn_rpa"}</strong>
|
|
<br>
|
|
<span class="ipsType_light">
|
|
<i class='fa fa-clock-o'></i>
|
|
{{if $action['wa_rpa'] != -1}}
|
|
{{if $action['wa_rpa_unit'] == 'h'}}
|
|
{lang="f_hours" pluralize="$action['wa_rpa']"}
|
|
{{else}}
|
|
{lang="f_days" pluralize="$action['wa_rpa']"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="indefinitely"}
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if $action['wa_suspend']}}
|
|
<li>
|
|
<strong>{lang="warn_suspend"}</strong>
|
|
<br>
|
|
<span class="ipsType_light">
|
|
<i class='fa fa-clock-o'></i>
|
|
{{if $action['wa_suspend'] != -1}}
|
|
{{if $action['wa_suspend_unit'] == 'h'}}
|
|
{lang="f_hours" pluralize="$action['wa_suspend']"}
|
|
{{else}}
|
|
{lang="f_days" pluralize="$action['wa_suspend']"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="indefinitely"}
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{else}}
|
|
<p class='ipsType_light ipsType_reset'>{lang="no_punishment"}</p>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="warnHovercard" template_data="$warning" template_location="front" template_app="core"><![CDATA[<div class="ipsPad" id="warnhovercard_{$warning->id}" data-controller="core.front.modcp.warnPopup">
|
|
<h2 class="ipsType_pageTitle">
|
|
{{if $warning->canViewDetails()}}
|
|
<span class='ipsPoints'>{$warning->points}</span>
|
|
{lang="core_warn_reason_{$warning->reason}"}
|
|
{{else}}
|
|
{lang="warning"}
|
|
{{endif}}
|
|
</h2>
|
|
{{if \IPS\Settings::i()->warnings_acknowledge}}
|
|
<p class='ipsType_medium'>
|
|
{{if $warning->acknowledged}}
|
|
<strong class='ipsType_success'><i class='fa fa-check-circle'></i> {lang="warning_acknowledged"}</strong>
|
|
{{else}}
|
|
{{if $warning->canAcknowledge()}}
|
|
<div class='ipsAreaBackground_light ipsPad ipsType_center'>
|
|
<a href="{$warning->url('acknowledge')}" class="ipsButton ipsButton_important ipsButton_medium ipsButton_fullWidth"><i class='fa fa-check'></i> {lang="acknowledge"}</a>
|
|
<p class='ipsType_light ipsType_small'>{lang="acknowledge_message"}</p>
|
|
</div>
|
|
{{else}}
|
|
<strong class='ipsType_light'><i class='fa fa-circle-o'></i> {lang="warning_not_acknowledged"}</strong>
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{endif}}
|
|
{{if $content = $warning->content()}}
|
|
<a href='{$content->url()->setQueryString( '_warn', $warning->id )}' class='ipsType_light ipsType_blendLinks' title='{lang="warning_go_to_content"}'><i class='fa fa-{$content::$icon}'></i> {{if $content instanceof \IPS\Content\Comment}}{$content->item()->mapped('title')}{{else}}{$content->mapped('title')}{{endif}}</a>
|
|
{{endif}}
|
|
{{if $warning->canViewDetails()}}
|
|
<hr class='ipsHr'>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_tiny'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $warning->moderator ), 'tiny'"}
|
|
<div>
|
|
{{if $warning->canDelete()}}
|
|
<a href="{$warning->url('delete')->csrf()}" title='{lang="revoke_this_warning"}' data-action="revoke" class='ipsPos_right ipsButton ipsButton_verySmall ipsButton_primary'><i class="fa fa-undo"></i> {lang="revoke"}</a></li>
|
|
{{endif}}
|
|
<p class="ipsType_reset">{lang="warning_byline" sprintf="\IPS\Member::load( $warning->moderator )->name"}</p>
|
|
<p class='ipsType_reset ipsType_light'>{datetime="$warning->date"}</p>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{if $warning->canViewDetails() or $warning->mq or $warning->rpa or $warning->suspend}}
|
|
<hr class='ipsHr'>
|
|
<h3 class='ipsType_sectionHead'>{lang="warn_punishment"}</h3>
|
|
<br>
|
|
<ul class='ipsList_bullets ipsType_medium'>
|
|
{{if $warning->canViewDetails()}}
|
|
<li>
|
|
{{if $warning->expire_date}}
|
|
{{if $warning->expire_date < time()}}
|
|
{{if $warning->expire_date == -1}}
|
|
{lang="warn_action_points_never_expire" sprintf="$warning->points"}
|
|
{{else}}
|
|
{lang="warn_action_points_expired" sprintf="$warning->points, \IPS\DateTime::ts( $warning->expire_date )"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="warn_action_points_expire" sprintf="$warning->points, \IPS\DateTime::ts( $warning->expire_date )"}
|
|
{{endif}}
|
|
{{else}}
|
|
{lang="warn_action_points" sprintf="$warning->points"}
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if $warning->mq}}
|
|
<li>
|
|
{lang="moderation_modq"} -
|
|
{{if $warning->mq == -1}}
|
|
{lang="indefinitely"}
|
|
{{else}}
|
|
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2 )"}
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if $warning->rpa}}
|
|
<li>
|
|
{lang="moderation_nopost"} -
|
|
{{if $warning->rpa == -1}}
|
|
{lang="indefinitely"}
|
|
{{else}}
|
|
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2 )"}
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if $warning->suspend}}
|
|
<li>
|
|
{lang="moderation_banned"} -
|
|
{{if $warning->suspend == -1}}
|
|
{lang="indefinitely"}
|
|
{{else}}
|
|
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2 )"}
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if $warning->note_member}}
|
|
<hr class='ipsHr'>
|
|
<h3 class='ipsType_sectionHead'>{lang="warn_member_note"}</h3>
|
|
<div class='ipsType_richText ipsType_medium'>
|
|
{$warning->note_member|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{if $warning->note_mods and member.modPermission('mod_see_warn')}}
|
|
<hr class='ipsHr'>
|
|
<h3 class='ipsType_sectionHead'>{lang="warn_mod_note"}</h3>
|
|
<div class='ipsType_richText ipsType_medium'>
|
|
{$warning->note_mods|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="warningRevoke" template_data="$warning" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_large'>
|
|
{lang="warning_revoke_blurb"}
|
|
</p>
|
|
</div>
|
|
<div class='ipsAreaBackground_light ipsType_right ipsPad'>
|
|
<ul class='ipsList_inline'>
|
|
<li><a href='{$warning->url('delete')->setQueryString('undo', 1)->csrf()}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="warning_revoke_undo"}</a></li>
|
|
<li><a href='{$warning->url('delete')->setQueryString('undo', 0)->csrf()}' class='ipsButton ipsButton_primary ipsButton_small'>{lang="delete"}</a></li>
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="modcp" template_name="warningRowPoints" template_data="$points" template_location="front" template_app="core"><![CDATA[<span class="ipsType_large">{$points}</span>
|
|
<br>
|
|
{lang="wan_action_points" pluralize="$points"}]]></template>
|
|
<template template_group="moderationLog" template_name="rows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
{{foreach $rows as $row}}
|
|
<li class="ipsDataItem">
|
|
<div class='ipsDataItem_icon'>
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( $row['member_id'] ), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title ipsType_break'>
|
|
{$row['action']}
|
|
</h4>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{expression="\IPS\Member::load( $row['member_id'] )->name"}, {datetime="$row['ctime']"}
|
|
</p>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="moderationLog" template_name="table" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[<div data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table' {{if $table->getPaginationKey() != 'page'}}data-pageParam='{$table->getPaginationKey()}'{{endif}}>
|
|
{{if ( $table->showAdvancedSearch AND ( (isset( $table->sortOptions ) and !empty( $table->sortOptions )) OR $table->advancedSearch ) ) OR !empty( $table->filters ) OR $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
{{if $table->showAdvancedSearch AND ( ( isset( $table->sortOptions ) and count( $table->sortOptions ) > 1 ) OR $table->advancedSearch )}}
|
|
<li>
|
|
{{if isset($table->sortOptions) }}
|
|
<a href="#elSortByMenu_menu" id="elSortByMenu_{$table->uniqueId}" data-role="sortButton" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="sort_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide" id="elSortByMenu_{$table->uniqueId}_menu">
|
|
{{$custom = TRUE;}}
|
|
{{foreach $table->sortOptions as $k => $col}}
|
|
<li class="ipsMenu_item {{if $col === $table->sortBy}}{{$custom = FALSE;}}ipsMenu_itemChecked{{endif}}" data-ipsMenuValue="{$col}" data-sortDirection='{{if $col == 'title'}}asc{{else}}desc{{endif}}'><a href="{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $col, 'sortdirection' => ( $col == 'title' ) ? 'asc' : 'desc', 'page' => '1' ) )}">{lang="{$table->langPrefix}sort_{$k}"}</a></li>
|
|
{{endforeach}}
|
|
{{if $table->advancedSearch}}
|
|
<li class="ipsMenu_item {{if $custom}}ipsMenu_itemChecked{{endif}}" data-noSelect="true">
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{elseif $table->advancedSearch}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if !empty( $table->filters )}}
|
|
<li>
|
|
<a href="#elFilterByMenu_{$table->uniqueId}_menu" data-role="tableFilterMenu" id="elFilterByMenu_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="filter_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterByMenu_{$table->uniqueId}_menu'>
|
|
<li data-action="tableFilter" data-ipsMenuValue='' class='ipsMenu_item {{if !$table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => '', 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-action="tableFilter" data-ipsMenuValue='{$k}' class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if count( $rows )}}
|
|
<ol class='ipsDataList ipsClear {{foreach $table->classes as $class}}{$class} {{endforeach}}' id='elTable_{$table->uniqueId}' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
{template="rows" app="core" group="moderationLog" params="$table, $headers, $rows"}
|
|
</ol>
|
|
{{else}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<p class='ipsType_large ipsType_light'>{lang="no_rows_in_table"}</p>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="myAttachments" template_name="rows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $attachment}}
|
|
<div class='ipsDataItem ipsAttach ipsAttach_done'>
|
|
<div class='ipsDataItem_generic ipsDataItem_size3 ipsResponsive_hidePhone ipsResponsive_block ipsType_center'>
|
|
<a href="{setting="base_url"}applications/core/interface/file/attachment.php?id={$attachment['attach_id']}">
|
|
{{if $attachment['attach_is_image']}}
|
|
<img src="{file="$attachment['attach_location']" extension="core_Attachment"}" alt='' class='ipsImage ipsThumb_small' data-ipsLightbox data-ipsLightbox-group="myAttachments">
|
|
{{else}}
|
|
<i class='fa fa-file ipsType_large'></i>
|
|
{{endif}}
|
|
</a>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h2 class='ipsDataItem_title ipsType_reset ipsType_medium ipsAttach_title ipsTruncate ipsTruncate_line ipsType_blendLinks'><a href="{setting="base_url"}applications/core/interface/file/attachment.php?id={$attachment['attach_id']}">{$attachment['attach_file']}</a></h2>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{filesize="$attachment['attach_filesize']"} · {lang="my_attachment_uploaded" htmlsprintf="\IPS\DateTime::ts( $attachment['attach_date'] )->html()"}
|
|
</p>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size9 ipsType_light'>
|
|
{$attachment['attach_content']|raw}
|
|
</div>
|
|
<div class='ipsDataItem_stats ipsType_light'>
|
|
{{if !$attachment['attach_is_image']}}{lang="attach_hits_count" pluralize="$attachment['attach_hits']"}{{endif}}
|
|
</div>
|
|
{{if \IPS\Member::loggedIn()->group['gbw_delete_attachments'] or !count( \IPS\core\extensions\core\EditorMedia\Attachment::$locations[ $attachment['attach_id'] ] )}}
|
|
<div class='ipsDataItem_generic ipsDataItem_size3 ipsType_right ipsResponsive_noFloat'>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=attachments&do=delete&id={$attachment['attach_id']}" seoTemplate="attachments" csrf="true"}{{if count($rows) > 1}}&page={expression="\IPS\Request::i()->page"}{{elseif isset( \IPS\Request::i()->page ) AND \IPS\Request::i()->page > 1}}&page={expression="\IPS\Request::i()->page-1"}{{endif}}' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="delete"}' data-action="deleteAttachment"><i class='fa fa-trash-o'></i></a>
|
|
</li>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endforeach}}
|
|
]]></template>
|
|
<template template_group="myAttachments" template_name="template" template_data="$table, $used, $count" template_location="front" template_app="core"><![CDATA[<h1 class="ipsType_pageTitle">{lang="my_attachments"}</h1>
|
|
<br>
|
|
|
|
{{if member.group['g_attach_max'] > 0}}
|
|
{{$percentage = round( ( $used / ( \IPS\Member::loggedIn()->group['g_attach_max'] * 1024 ) ) * 100 );}}
|
|
<div class='ipsBox ipsPad'>
|
|
<h2 class='ipsType_minorHeading'>{lang="my_attachment_quota"}</h2>
|
|
<div class='ipsProgressBar ipsProgressBar_fullWidth ipsClear {{if $percentage >= 90}}ipsProgressBar_warning{{endif}}' >
|
|
<div class='ipsProgressBar_progress' style="width: {$percentage}%">
|
|
<span data-role="percentage">{$percentage}</span>%
|
|
</div>
|
|
</div>
|
|
<br>
|
|
<p class='ipsType_reset ipsType_center'>
|
|
{lang="my_attachments_blurb" sprintf="\IPS\Output\Plugin\Filesize::humanReadableFilesize( $used ), \IPS\Output\Plugin\Filesize::humanReadableFilesize( \IPS\Member::loggedIn()->group['g_attach_max'] * 1024 )"}
|
|
</p>
|
|
</div>
|
|
{{endif}}
|
|
<br>
|
|
|
|
<div class='ipsBox' data-controller="core.front.attachments.list">
|
|
<h2 class='ipsType_sectionTitle ipsType_medium ipsType_reset'>{lang="my_attachments_count" pluralize="$count"}</h2>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="online" template_name="onlineUsersList" template_data="$table, $totalCount" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('online_users')"}
|
|
<br>
|
|
<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsType_medium'>{lang="online_user_count" pluralize="$totalCount"}</h2>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="online" template_name="onlineUsersRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if !empty($rows) }}
|
|
{{foreach $rows as $row}}
|
|
<li class='ipsGrid_span4 ipsPhotoPanel ipsPhotoPanel_small ipsClearfix cOnlineUser {{if $row['login_type'] == \IPS\Session\Front::LOGIN_TYPE_ANONYMOUS}}ipsFaded{{endif}}'>
|
|
{$row['photo']|raw}
|
|
<div>
|
|
<div class='ipsContained'>
|
|
<h3 class='ipsType_reset ipsType_normal'>
|
|
{{if $row['login_type'] == \IPS\Session\Front::LOGIN_TYPE_ANONYMOUS}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_style6" title='{lang="signed_in_anoymously"}' data-ipsTooltip><i class='fa fa-eye'></i></span>
|
|
{{endif}}
|
|
{$row['member_name']|raw}
|
|
</h3>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line ipsType_break'>{$row['location_lang']|raw}</p>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line ipsType_light'>
|
|
{$row['running_time']}
|
|
{{if \IPS\Member::loggedIn()->hasAcpRestriction( 'core', 'members', 'membertools_ip' )}}
|
|
· {$row['ip_address']}</span>
|
|
{{endif}}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li>{lang="online_users_no_results"}</li>
|
|
{{endif}}]]></template>
|
|
<template template_group="online" template_name="onlineUsersTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[<div data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table{{if $table->canModerate()}},core.front.core.moderation{{endif}}'>
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
<li>
|
|
<a href="#elSortByMenu_menu" id="elSortByMenu" data-role="sortButton" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="sort_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide" id="elSortByMenu_menu">
|
|
<li class="ipsMenu_item {{if $table->sortBy == 'running_time'}}ipsMenu_itemChecked{{endif}}" data-ipsMenuValue="running_time"><a href="{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => 'running_time', 'sortdirection' => 'desc', 'page' => '1', 'group' => \IPS\Request::i()->group ) )}">{lang="{$table->langPrefix}running_time"}</a></li>
|
|
<li class="ipsMenu_item {{if $table->sortBy == 'member_name'}}ipsMenu_itemChecked{{endif}}" data-ipsMenuValue="member_name"><a href="{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => 'member_name', 'sortdirection' => 'asc', 'page' => '1', 'group' => \IPS\Request::i()->group ) )}">{lang="{$table->langPrefix}member_name"}</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
{{if !empty( $table->filters )}}
|
|
<li>
|
|
<a href="#elFilterByMenu_{$table->uniqueId}_menu" data-role="tableFilterMenu" id="elFilterByMenu_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="filter_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterByMenu_{$table->uniqueId}_menu'>
|
|
<li data-action="tableFilter" data-ipsMenuValue='' class='ipsMenu_item {{if !$table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1', 'filter' => '', 'group' => \IPS\Request::i()->group ) )}' class='{{if !array_key_exists( $table->filter, $table->filters )}}ipsButtonRow_active{{endif}}'>{lang="all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-action="tableFilter" data-ipsMenuValue='{$k}' class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1', 'group' => \IPS\Request::i()->group ) )}'>{lang="{$table->langPrefix}{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<ol class='ipsList_reset ipsPad ipsGrid ipsGrid_collapsePhone ipsClear' data-ipsGrid data-role='tableRows'>
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear" data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="overview" template_name="security" template_data="$content" template_location="admin" template_app="core"><![CDATA[<br>
|
|
|
|
<section id='elSecurityCenter'>
|
|
<h2 class='acpBlock_title'>{lang="security_recommendations"}</h2>
|
|
{{if !empty( $content )}}
|
|
<br>
|
|
{{foreach $content as $key => $data}}
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<span class='ipsBadge ipsBadge_large ipsBadge_{{if $data['risk'] == 'high'}}negative{{elseif $data['risk'] == 'medium'}}intermediary{{else}}positive{{endif}}'>{lang="$data['risk']"}</span> <h3 class='ipsType_sectionHead'><strong>{lang="$data['title']"}</strong></h3>
|
|
{{if $data['description']}}
|
|
<p class='ipsType_medium'>
|
|
{lang="$data['description']"}
|
|
</p>
|
|
{{endif}}
|
|
{{if isset( $data['button'] )}}
|
|
<br>
|
|
<a href='{url="{$data['button']['action']}"}' class='ipsButton ipsButton_small ipsButton_normal'>{$data['button']['title']}</a>
|
|
{{endif}}
|
|
</div>
|
|
<br>
|
|
{{endforeach}}
|
|
{{else}}
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<p class='ipsType_medium'>
|
|
{lang="security_no_recommendations"}
|
|
</p>
|
|
</div>
|
|
{{endif}}
|
|
</section>]]></template>
|
|
<template template_group="overview" template_name="securityRenameAdmin" template_data="" template_location="admin" template_app="core"><![CDATA[
|
|
<div>
|
|
<p>{lang="security_admin_intro"}</p>
|
|
<br>
|
|
<h3 class='ipsType_sectionHead'>{lang="step_1"}</h3>
|
|
<p>{lang="security_admin_step_1"}</p>
|
|
<br>
|
|
<h3 class='ipsType_sectionHead'>{lang="step_2"}</h3>
|
|
<p>{lang="security_admin_step_2"}</p>
|
|
|
|
<pre>
|
|
<?php
|
|
define( 'CP_DIRECTORY', 'admin' );
|
|
</pre>
|
|
|
|
{lang="security_admin_outro"}
|
|
</div>]]></template>
|
|
<template template_group="plugins" template_name="details" template_data="$plugin" template_location="admin" template_app="core"><![CDATA[<table class='ipsTable'>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="plugin_name"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$plugin->name}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="plugin_details_version"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{lang="plugin_version" sprintf="$plugin->version_human, $plugin->version_long"}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="field_title">
|
|
<strong class="title">{lang="plugin_author_details"}</strong>
|
|
</td>
|
|
<td class="field_field">
|
|
{$plugin->author}{{if $plugin->website}} <a href='{$plugin->website}' target='_blank'><i class="fa fa-external-link-square" title='{$plugin->website}'></i></a>{{endif}}
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
]]></template>
|
|
<template template_group="profile" template_name="allFollowers" template_data="$member, $followers" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<h3 class='ipsType_sectionHead'>{lang="members_followers" sprintf="$member->name"}</h3>
|
|
<br>
|
|
{{endif}}
|
|
{{if $followers !== NULL AND $followers->count( TRUE ) > 50}}
|
|
{{$url = \IPS\Http\Url::internal( "app=core&module=members&controller=profile&do=followers&id={$member->member_id}", 'front', 'profile_followers', $member->members_seo_name );}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$url, ceil( $followers->count( TRUE ) / 50 ), \IPS\Request::i()->page ?: 1, 50"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<br>
|
|
<ul class='ipsDataList'>
|
|
{{if count( $followers )}}
|
|
{{foreach $followers AS $follower}}
|
|
<li class='ipsDataItem ipsClearfix {{if $follower['follow_is_anon']}}ipsFaded{{endif}}'>
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load($follower['follow_member_id']), 'tiny', NULL, '', FALSE"}<br>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
{{if \IPS\Member::loggedIn()->member_id != $follower['follow_member_id'] and ( !\IPS\Member::load($follower['follow_member_id'])->members_bitoptions['pp_setting_moderate_followers'] or \IPS\Member::loggedIn()->following( 'core', 'member', $follower['follow_member_id'] ) )}}
|
|
{{$thisFollowers = \IPS\Member::load( $follower['follow_member_id'] )->followers();}}
|
|
<div class='ipsPos_right'>{template="memberFollow" app="core" group="profile" params="'core', 'member', $follower['follow_member_id'], ( $thisFollowers === NULL ) ? 0 : $thisFollowers->count( TRUE ), TRUE"}</div>
|
|
{{endif}}
|
|
<strong class='ipsDataItem_title'>{expression="\IPS\Member::load($follower['follow_member_id'])->link()" raw="true"}</strong> {{if $follower['follow_is_anon']}} {lang="anon_follower"}{{endif}}<br>
|
|
{expression="\IPS\Member\Group::load( \IPS\Member::load($follower['follow_member_id'])->member_group_id )->formattedName" raw="true"}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
{{if $followers !== NULL AND $followers->count( TRUE ) > 50}}
|
|
<br>
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$url, ceil( $followers->count( TRUE ) / 50 ), \IPS\Request::i()->page ?: 1, 50"}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="fieldTab" template_data="$field, $value" template_location="front" template_app="core"><![CDATA[<h2 class='ipsType_pageTitle ipsSpacer_top'>{lang="$field"}</h2>
|
|
<div class='ipsType_richText ipsType_normal ipsSpacer_top' data-controller='core.front.core.lightboxedImages'>
|
|
{$value|raw}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="profile" template_name="followers" template_data="$member, $followers" template_location="front" template_app="core"><![CDATA[
|
|
<h2 class='ipsWidget_title ipsType_reset'>
|
|
{{if \IPS\Member::loggedIn()->member_id === $member->member_id}}
|
|
<a href='#elFollowPref_menu' data-role='followOption' data-ipsMenu data-ipsMenu-selectable='radio' data-ipsMenu-appendTo='#elFollowers' id='elFollowPref' class='ipsType_blendLinks ipsType_small ipsPos_right'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elFollowPref_menu' class='ipsMenu ipsMenu_selectable ipsMenu_normal ipsHide'>
|
|
<li data-ipsMenuValue='enable' class='ipsMenu_item {{if !$member->members_bitoptions['pp_setting_moderate_followers']}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=changeFollow&enabled=1" seoTemplate="profile" seoTitle="$member->members_seo_name" csrf="true"}'>{lang="allow_follow"}</a>
|
|
</li>
|
|
<li data-ipsMenuValue='disable' class='ipsMenu_item {{if $member->members_bitoptions['pp_setting_moderate_followers']}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=changeFollow&enabled=0" seoTemplate="profile" seoTitle="$member->members_seo_name" csrf="true"}'>{lang="disallow_follow"}</a>
|
|
</li>
|
|
<li class='ipsMenu_sep'><hr></li>
|
|
<li class='ipsPad_half ipsType_center ipsType_light ipsType_medium'>
|
|
{lang="follow_setting_desc"}
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
{lang="x_followers" pluralize="($followers !== NULL) ? $followers->count( TRUE ) : 0"}
|
|
</h2>
|
|
<div class='ipsWidget_inner'>
|
|
{{if count( $followers )}}
|
|
<ul class='ipsGrid ipsSpacer_top'>
|
|
{{foreach $followers as $idx => $follower}}
|
|
{{if $idx <= 11}}
|
|
<li class='ipsGrid_span3 ipsType_center {{if $follower['follow_is_anon']}}ipsFaded{{endif}}' data-ipsTooltip title='{expression="\IPS\Member::load( $follower['follow_member_id'] )->name"}{{if $follower['follow_is_anon']}} {lang="anon_follower"}{{endif}}'>{template="userPhoto" app="core" group="global" params="\IPS\Member::load($follower['follow_member_id']), 'mini', NULL, '', FALSE"}</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<p class='ipsType_center ipsPad_half ipsType_light'>{lang="no_followers_yet"}</p>
|
|
{{endif}}
|
|
</div>
|
|
{{if $followers !== NULL and $followers->count( TRUE ) > 12}}
|
|
<p class='ipsType_right ipsType_reset ipsPad_half ipsType_small ipsType_light ipsAreaBackground_light'>
|
|
<a href='{url="app=core&module=members&controller=profile&do=followers&id={$member->member_id}" seoTemplate="profile_followers" seoTitle="$member->members_seo_name"}' class='ipsType_blendLinks'>{lang="see_all_followers"} <i class='fa fa-caret-right'></i></a>
|
|
</p>
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="hovercard" template_data="$member, $addWarningUrl" template_location="front" template_app="core"><![CDATA[{{$rnd = uniqid();}}
|
|
{{$referrer = \IPS\Request::i()->referrer;}}
|
|
{{$coverPhoto = $member->coverPhoto();}}
|
|
<!-- When altering this template be sure to also check for similar in main profile view -->
|
|
<div class="ipsPad_half cUserHovercard" id="elUserHovercard_{$member->member_id}{$rnd}">
|
|
<div class='ipsPageHead_special' id='elProfileHeader_{$rnd}' data-controller='core.front.core.coverPhoto' data-url="{$member->url()->csrf()}" data-coverOffset='{$coverPhoto->offset}'>
|
|
{{if $coverPhoto->file}}
|
|
<div class='ipsCoverPhoto_container'>
|
|
<img src='{$coverPhoto->file->url}' class='ipsCoverPhoto_photo' alt=''>
|
|
</div>
|
|
{{endif}}
|
|
<a href='{$member->url()}'><img src='{$member->photo}' class="ipsUserPhoto ipsUserPhoto_medium"></a>
|
|
<h2 class="ipsType_reset ipsType_sectionHead ipsTruncate ipsTruncate_line ipsType_blendLinks"><a href='{$member->url()}'>{$member->name}</a></h2>
|
|
<p class='ipsType_reset ipsType_normal'>{expression="\IPS\Member\Group::load( $member->member_group_id )->formattedName" raw="true"}</p>
|
|
</div>
|
|
<br>
|
|
{template="reputationBadge" group="global" app="core" params="$member"}
|
|
<div class='cUserHovercard_data'>
|
|
<ul class="ipsDataList ipsDataList_reducedSpacing">
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="members_member_posts"}</strong></span>
|
|
<span class="ipsDataItem_main">{number="$member->member_posts"}</span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="members_joined"}</strong></span>
|
|
<span class="ipsDataItem_main">{datetime="$member->joined"}</span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="members_last_visit"}</strong></span>
|
|
<span class="ipsDataItem_main">
|
|
{{if $member->isOnline()}}<i class="fa fa-circle ipsOnlineStatus_online" data-ipsTooltip title="{lang="online_now" sprintf="$member->name"}"></i>{{endif}}
|
|
{{if $member->last_activity}}{datetime="$member->last_activity"}{{else}}{lang="never"}{{endif}}
|
|
</span>
|
|
</li>
|
|
{{if $member->isOnline() AND $member->location}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="online_users_location_lang"}</strong></span>
|
|
<span class="ipsDataItem_main">{$member->location()|raw}</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_see_emails')}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="email"}</strong></span>
|
|
<span class="ipsDataItem_main">{$member->email}</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if \IPS\Settings::i()->warn_on and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and ( \IPS\Member::loggedIn()->modPermission('mod_see_warn') or ( \IPS\Settings::i()->warn_show_own and \IPS\Member::loggedIn()->member_id == $member->member_id ) )}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3"><strong>{lang="member_warnings"}</strong></span>
|
|
<span class="ipsDataItem_main">{$member->warn_level}</span>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<br>
|
|
<div class="ipsAreaBackground ipsPad ipsClearfix">
|
|
<ul class="ipsList_inline ipsType_blendLinks">
|
|
{{if !$member->members_disable_pm and !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<li><a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$member->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}" data-ipsDialog-forceReload><i class='fa fa-envelope'></i> {lang="message_send"}</a></li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->member_id && $member->member_id != \IPS\Member::loggedIn()->member_id}}
|
|
<li><a href="{url="app=core&module=members&controller=ignore&id={$member->member_id}" csrf="true" seoTemplate="ignore"}"><i class='fa fa-times-circle'></i> {lang="add_ignore"}</a></li>
|
|
{{endif}}
|
|
<li><a href="{url="app=core&module=members&controller=profile&do=edit&id={$member->member_id}" base="front" seoTemplate="profile_content" seoTitle="$member->members_seo_name"}"><i class='fa fa-search'></i> {lang="find_content"}</a></li>
|
|
{{if ( member.canWarn( $member ) || ( member.modPermission('can_flag_as_spammer') and !$member->modPermission() and !$member->isAdmin() ) ) and $member->member_id != member.member_id }}
|
|
<li class="ipsPos_right">
|
|
<a href="#elUserHovercard_{$member->member_id}_more_menu" id="elUserHovercard_{$member->member_id}{$rnd}_more" title='{lang="more_options"}' data-ipsTooltip data-ipsMenu data-ipsMenu-appendTo="#elUserHovercard_{$member->member_id}{$rnd}">
|
|
<i class="fa fa-cog ipsType_large"></i> <i class="fa fa-caret-down"></i>
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if ( \IPS\Member::loggedIn()->modPermission('can_flag_as_spammer') AND $member->member_id != \IPS\Member::loggedIn()->member_id ) || member.canWarn( $member )}}
|
|
<ul class="ipsMenu ipsMenu_narrow ipsHide" id="elUserHovercard_{$member->member_id}{$rnd}_more_menu">
|
|
{{if member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}}
|
|
{{if $member->members_bitoptions['bw_is_spammer']}}
|
|
<li class="ipsMenu_item"><a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=0&referrer={$referrer}" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}"><i class="fa fa-flag"></i> {lang="spam_unflag"}</a></li>
|
|
{{else}}
|
|
<li class="ipsMenu_item"><a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=1&referrer={$referrer}" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' data-confirm><i class="fa fa-flag"></i> {lang="spam_flag"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if member.canWarn( $member )}}
|
|
<li class="ipsMenu_item"><a href="{$addWarningUrl}" title='{lang="warn_user_title"}' data-ipsDialog data-ipsDialog-title='{lang="warn_user"}'><i class="fa fa-exclamation-triangle"></i> {lang="warn_user"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="memberFollow" template_data="$app, $area, $id, $count, $search=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<div data-followApp='{$app}' data-followArea='{$area}' data-followID='{$id}' {{if $search}}data-buttonType='search'{{endif}} data-controller='core.front.core.followButton'>
|
|
{{if $search}}
|
|
{template="memberSearchFollowButton" group="profile" app="core" params="$app, $area, $id, $count"}
|
|
{{else}}
|
|
{template="memberFollowButton" group="profile" app="core" params="$app, $area, $id, $count"}
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="memberFollowButton" template_data="$app, $area, $id, $count" template_location="front" template_app="core"><![CDATA[{{if member.member_id}}
|
|
<div class="ipsResponsive_hidePhone ipsResponsive_block">
|
|
{{if member.following( $app, $area, $id )}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="following_this_member"}" data-ipsTooltip class="ipsButton ipsButton_positive" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick><i class='fa fa-check'></i><i class='fa fa-user'></i> {lang="following_member"} <i class='fa fa-caret-down'></i></a>
|
|
{{else}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="follow_this_member"}" data-ipsTooltip class="ipsButton ipsButton_primary" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick><i class='fa fa-plus'></i><i class='fa fa-user'></i> {lang="follow_member"}</a>
|
|
{{endif}}
|
|
</div>
|
|
<div class="ipsResponsive_showPhone ipsResponsive_block">
|
|
{{if member.following( $app, $area, $id )}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="following_this_member"}" data-ipsTooltip class="ipsButton ipsButton_positive ipsButton_fullWidth ipsButton_small" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick><i class='fa fa-check'></i><i class='fa fa-user'></i> <i class='fa fa-caret-down'></i></a>
|
|
{{else}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="follow_this_member"}" data-ipsTooltip class="ipsButton ipsButton_fullWidth ipsButton_small ipsButton_alternate" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick><i class='fa fa-plus'></i><i class='fa fa-user'></i></a>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="memberSearchFollowButton" template_data="$app, $area, $id, $count" template_location="front" template_app="core"><![CDATA[{{if member.member_id}}
|
|
{{if member.following( $app, $area, $id )}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}&from_search=1"}" title="{lang="following_this_member"}" class="ipsButton ipsButton_small ipsButton_positive ipsButton_fullWidth" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick>{lang="following_member"} <i class='fa fa-caret-down'></i></a>
|
|
{{else}}
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}&from_search=1"}" title="{lang="follow_this_member"}" class="ipsButton ipsButton_small ipsButton_primary ipsButton_fullWidth" data-role="followButton" data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick>{lang="follow_member"}</a>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="photoCrop" template_data="$name, $value, $photo" template_location="front" template_app="core"><![CDATA[
|
|
<div data-controller='core.front.profile.cropper' id='elPhotoCropper' class='ipsAreaBackground_light ipsType_center ipsPad'>
|
|
<h3 class='ipsType_sectionHead'>{lang="photo_crop_title"}</h3>
|
|
<p class='ipsType_light ipsType_reset'>{lang="photo_crop_instructions"}</p>
|
|
<br>
|
|
|
|
<div data-role='cropper'>
|
|
<img src="{$photo}" data-role='profilePhoto'>
|
|
</div>
|
|
|
|
<input type='hidden' name='{$name}[0]' value='{$value[0]}' data-role='topLeftX'>
|
|
<input type='hidden' name='{$name}[1]' value='{$value[1]}' data-role='topLeftY'>
|
|
<input type='hidden' name='{$name}[2]' value='{$value[2]}' data-role='bottomRightX'>
|
|
<input type='hidden' name='{$name}[3]' value='{$value[3]}' data-role='bottomRightY'>
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="profile" template_data="$member, $mainContent, $visitors, $sidebarFields, $followers, $addWarningUrl" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<!-- When altering this template be sure to also check for similar in the hovercard -->
|
|
<div data-controller='core.front.profile.main'>
|
|
{template="profileHeader" app="core" location="front" group="profile" params="$member, false"}
|
|
<div data-role="profileContent">
|
|
{{endif}}
|
|
<div class='ipsColumns ipsColumns_noSpacing ipsColumns_collapseTablet' data-controller="core.front.profile.body">
|
|
<div class='ipsColumn ipsColumn_fixed ipsColumn_veryWide' id='elProfileInfoColumn'>
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
{{if settings.reputation_enabled and settings.reputation_show_profile}}
|
|
<div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href="{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}" data-action="repLog" title="{lang="members_reputation" sprintf="$member->name"}">
|
|
{{endif}}
|
|
<div class='cProfileRepScore ipsPad_half {{if $member->pp_reputation_points > 1}}cProfileRepScore_positive{{elseif $member->pp_reputation_points < 0}}cProfileRepScore_negative{{else}}cProfileRepScore_neutral{{endif}}'>
|
|
<h2 class='ipsType_minorHeading'>{lang="profile_reputation"}</h2>
|
|
<span class='cProfileRepScore_points'>{$member->pp_reputation_points}</span>
|
|
{{if $member->reputation()}}
|
|
<span class='cProfileRepScore_title'>{$member->reputation()}</span>
|
|
{{endif}}
|
|
{{if $member->reputationImage()}}
|
|
<div class='ipsAreaBackground_reset ipsAreaBackground_rounded ipsPad_half ipsType_center'>
|
|
<img src='{file="$member->reputationImage()" extension="core_Theme"}' alt=''>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{if member.group['gbw_view_reps']}}
|
|
<p class='ipsType_reset ipsPad_half ipsType_right ipsType_light ipsType_small'>
|
|
{lang="replog_show_activity"} <i class='fa fa-caret-right'></i>
|
|
</p>
|
|
</a>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if \IPS\Settings::i()->warn_on and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and ( \IPS\Member::loggedIn()->modPermission('mod_see_warn') or ( \IPS\Settings::i()->warn_show_own and \IPS\Member::loggedIn()->member_id == $member->member_id ) )}}
|
|
<div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
|
|
<div id='elWarningInfo' class='ipsPad {{if $member->mod_posts || $member->restrict_post || $member->temp_ban}}ipsAreaBackground_negative{{endif}} ipsClearfix'>
|
|
<i class='ipsPos_left {{if $member->warn_level > 0 || $member->mod_posts || $member->restrict_post || $member->temp_ban}}fa fa-exclamation-triangle{{else}}fa fa-circle-o ipsType_light{{endif}}'></i>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'>{lang="member_warn_level" pluralize="$member->warn_level"}</h2>
|
|
<br>
|
|
{{if !$member->mod_posts && !$member->restrict_post && !$member->temp_ban}}
|
|
<span>{lang="no_restrictions_applied"}</span>
|
|
<br>
|
|
{{else}}
|
|
<span>{lang="restrictions_applied"}</span>
|
|
<ul class='ipsList_bullets ipsSpacer_top ipsSpacer_half'>
|
|
{{if $member->mod_posts}}
|
|
<li data-ipsTooltip title="{{if $member->mod_posts == -1}}{lang="moderation_modq_perm"}{{else}}{lang="moderation_modq_temp" sprintf="\IPS\DateTime::ts( $member->mod_posts )"}{{endif}}">
|
|
{lang="moderation_modq"}
|
|
</li>
|
|
{{endif}}
|
|
{{if $member->restrict_post}}
|
|
<li data-ipsTooltip title="{{if $member->restrict_post == -1}}{lang="moderation_nopost_perm"}{{else}}{lang="moderation_nopost_temp" sprintf="\IPS\DateTime::ts( $member->restrict_post )"}{{endif}}">
|
|
{lang="moderation_nopost"}
|
|
</li>
|
|
{{endif}}
|
|
{{if $member->temp_ban}}
|
|
<li data-ipsTooltip title="{{if $member->temp_ban == -1}}{lang="moderation_banned_perm"}{{else}}{lang="moderation_banned_temp" sprintf="\IPS\DateTime::ts( $member->temp_ban )"}{{endif}}">
|
|
{lang="moderation_banned"}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if ( member.canWarn( $member ) || ( member.modPermission('can_flag_as_spammer') and !$member->modPermission() and !$member->isAdmin() ) ) and $member->member_id != member.member_id }}
|
|
<br>
|
|
<ul class='{{if member.canWarn( $member ) && member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}}ipsButton_split{{else}}ipsList_inline{{endif}}'>
|
|
{{if member.canWarn( $member )}}
|
|
<li>
|
|
<a href='{$addWarningUrl}' id='elWarnUserButton' data-ipsDialog data-ipsDialog-title="{lang="warn_member" sprintf="$member->name"}" class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="warn_member" sprintf="$member->name"}'>{lang="warn_user"}</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}}
|
|
<li>
|
|
{{if $member->members_bitoptions['bw_is_spammer']}}
|
|
<a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{if count( $member->warnings( 1 ) )}}
|
|
<div data-role="recentWarnings" class=''>
|
|
<ol class='ipsDataList'>
|
|
{{foreach $member->warnings( 2 ) as $warning}}
|
|
<li class="ipsDataItem" id='elWarningOverview_{$warning->id}'>
|
|
<div class='ipsDataItem_icon ipsType_center'>
|
|
<a href="{url="app=core&module=system&controller=warnings&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-size='narrow' class="ipsType_blendLinks" data-ipsTooltip title='{lang="wan_action_points" pluralize="$warning->points"}'>
|
|
<span class="ipsPoints">{$warning->points}</span>
|
|
</a>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
{{if $warning->canDelete()}}
|
|
<a href="{$warning->url('delete')->csrf()}" title='{lang="revoke_this_warning"}' data-ipsTooltip data-action="revoke" class='ipsPos_right ipsButton ipsButton_small ipsButton_light ipsButton_narrow' data-ipsDialog data-ipsDialog-title='{lang="revoke_this_warning"}' data-ipsDialog-size='medium'><i class="fa fa-undo"></i></a>
|
|
{{endif}}
|
|
<a href="{url="app=core&module=system&controller=warnings&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-showFrom='#elWarningOverview_{$warning->id}' data-ipsDialog-size='narrow' class="ipsType_blendLinks" title=''>
|
|
<h4 class="ipsType_reset ipsType_medium ipsType_unbold">
|
|
{{if \IPS\Settings::i()->warnings_acknowledge}}
|
|
{{if $warning->acknowledged}}
|
|
<strong class='ipsType_success' title='{lang="warning_acknowledged"}' data-ipsTooltip><i class='fa fa-check-circle'></i></strong>
|
|
{{else}}
|
|
<strong class='ipsType_light' title='{lang="warning_not_acknowledged"}' data-ipsTooltip><i class='fa fa-circle-o'></i></strong>
|
|
{{endif}}
|
|
{{endif}}
|
|
{lang="core_warn_reason_{$warning->reason}"}
|
|
</h4>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{lang="byline" sprintf="\IPS\Member::load( $warning->moderator )->name"}{datetime="$warning->date"}
|
|
</p>
|
|
</a>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
<p class='ipsType_reset ipsType_center ipsType_small ipsPad_half'>
|
|
<a href='{url="app=core&module=system&controller=warnings&id={$member->member_id}" seoTemplate="warn_list" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_verySmall ipsButton_light ipsButton_fullWidth' title='{lang="see_all_warnings"}' data-ipsDialog data-ipsDialog-remoteVerify='false' data-ipsDialog-remoteSubmit='false' data-ipsDialog-title="{lang="members_warnings" sprintf="$member->name"}">{lang="see_all_c"}</a>
|
|
</p>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_flag_as_spammer') and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and \IPS\Member::loggedIn()->member_id != $member->member_id}}
|
|
{{if $member->members_bitoptions['bw_is_spammer']}}
|
|
<a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=system&controller=moderation&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if count( $followers ) || \IPS\Member::loggedIn()->member_id === $member->member_id}}
|
|
<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' id='elFollowers' data-feedID='member-{$member->member_id}' data-controller='core.front.profile.followers'>
|
|
{template="followers" group="profile" app="core" params="$member, $followers"}
|
|
</div>
|
|
{{endif}}
|
|
|
|
<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
|
|
<h2 class='ipsWidget_title ipsType_reset'>{lang='profile_about' sprintf='$member->name'}</h2>
|
|
<div class='ipsWidget_inner ipsPad'>
|
|
{{if $member->group['g_icon'] }}
|
|
<div class='ipsType_center ipsPad_half'><img src='{file="$member->group['g_icon']" extension="core_Theme"}' alt=''></div>
|
|
{{endif}}
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
|
|
{{if $member->isOnline() AND $member->location}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size3 ipsType_break"><strong>{lang="online_users_location_lang"}</strong></span>
|
|
<span class="ipsDataItem_main">{$member->location()|raw}</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if $member->member_title || $member->rank['title'] || $member->rank['image']}}
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="profile_rank"}</strong></span>
|
|
<div class='ipsDataItem_generic'>
|
|
{{if $member->member_title}}
|
|
{$member->member_title}
|
|
<br>
|
|
{{elseif $member->rank['title']}}
|
|
{$member->rank['title']}
|
|
<br>
|
|
{{endif}}
|
|
{$member->rank['image']|raw}
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{if $member->birthday}}
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="bday"}</strong></span>
|
|
<span class='ipsDataItem_generic'>{$member->birthday}</span>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{foreach $sidebarFields as $group => $fields}}
|
|
{{if count( $fields )}}
|
|
<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
|
|
{{if $group != 'core_pfieldgroups_0'}}
|
|
<h2 class='ipsWidget_title ipsType_reset'>{lang="$group"}</h2>
|
|
{{endif}}
|
|
<div class='ipsWidget_inner ipsPad'>
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
|
|
{{foreach $fields as $field => $value}}
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="$field"}</strong></span>
|
|
<span class='ipsDataItem_generic'>{$value|raw}</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_see_emails')}}
|
|
<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
|
|
<h2 class='ipsWidget_title ipsType_reset'>{lang="profile_contact"}</h2>
|
|
<div class='ipsWidget_inner ipsPad'>
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing'>
|
|
<li class='ipsDataItem'>
|
|
<span class='ipsDataItem_generic ipsDataItem_size3'><strong>{lang="profile_email"}</strong></span>
|
|
<span class='ipsDataItem_generic'><a href='mailto:{$member->email}' title='{lang="email_this_user"}'>{wordbreak="$member->email"}</a></span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{if !empty( $visitors ) || \IPS\Member::loggedIn()->member_id == $member->member_id}}
|
|
<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' data-controller='core.front.profile.toggleBlock'>
|
|
{template="recentVisitorsBlock" group="profile" params="$member, $visitors"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
</div>
|
|
<section class='ipsColumn ipsColumn_fluid'>
|
|
{$mainContent|raw}
|
|
</section>
|
|
</div>
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="profileActivity" template_data="$member, $latestActivity, $statusForm=NULL" template_location="front" template_app="core"><![CDATA[<div data-controller="core.front.statuses.statusFeed">
|
|
{{if $statusForm}}
|
|
<div class='ipsAreaBackground ipsPad ipsSpacer_bottom'>
|
|
<div class='ipsComposeArea ipsComposeArea_withPhoto ipsClearfix' data-role='newStatus'>
|
|
<div class='ipsPos_left ipsResponsive_hidePhone ipsResponsive_block'>{template="userPhoto" app="core" group="global" params="\IPS\Member::loggedIn(), 'small'"}</div>
|
|
<div class='ipsComposeArea_editor'>
|
|
{$statusForm|raw}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{elseif !count( $latestActivity )}}
|
|
<div class='ipsPad ipsType_center ipsType_large ipsType_light'>
|
|
{lang="no_recent_activity" sprintf="$member->name"}
|
|
</div>
|
|
{{endif}}
|
|
{{if $statusForm or count( $latestActivity )}}
|
|
<ol class='ipsStream ipsList_reset' data-role='activityStream' id='elProfileActivityOverview'>
|
|
{{foreach $latestActivity as $activity}}
|
|
{$activity->html()|raw}
|
|
{{endforeach}}
|
|
</ol>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="profileHeader" template_data="$member, $small=FALSE" template_location="front" template_app="core"><![CDATA[{{$coverPhoto = $member->coverPhoto();}}
|
|
<header data-role="profileHeader">
|
|
<div class='ipsPageHead_special {{if $small === true}}cProfileHeaderMinimal{{endif}}' id='elProfileHeader' data-controller='core.front.core.coverPhoto' data-url="{$member->url()->csrf()}" data-coverOffset='{$coverPhoto->offset}'>
|
|
{{if $coverPhoto->file}}
|
|
<div class='ipsCoverPhoto_container'>
|
|
<img src='{$coverPhoto->file->url}' class='ipsCoverPhoto_photo' alt=''>
|
|
</div>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_modify_profiles') or ( \IPS\Member::loggedIn()->member_id == $member->member_id and $member->group['g_edit_profile'] )}}
|
|
<ul class='ipsButton_split' id='elEditProfile' data-hideOnCoverEdit>
|
|
<li>
|
|
<a href='{url="app=core&module=members&controller=profile&do=edit&id={$member->member_id}" base="front" seoTemplate="edit_profile" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_overlaid' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="profile_edit"}'>
|
|
<i class='fa fa-pencil'></i> <span class='ipsResponsive_hidePhone ipsResponsive_inline'> {lang="profile_edit"}</span>
|
|
</a>
|
|
</li>
|
|
{{if $coverPhoto->editable}}
|
|
<li>
|
|
<a href='#elEditPhoto_menu' data-hideOnCoverEdit class='ipsButton ipsButton_overlaid' data-ipsMenu id='elEditPhoto' data-role='coverPhotoOptions'>
|
|
<i class='fa fa-picture-o'></i> <span class='ipsResponsive_hidePhone ipsResponsive_inline'> {lang="profile_edit_cover_photo_tab"} <i class='fa fa-caret-down'></i></span>
|
|
</a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsHide' id='elEditPhoto_menu'>
|
|
{{if $coverPhoto->file}}
|
|
<li class='ipsMenu_item' data-role="photoEditOption">
|
|
<a href='{$member->url()->setQueryString( 'do', 'coverPhotoRemove' )->csrf()}' data-action='removeCoverPhoto'>{lang="cover_photo_remove"}</a>
|
|
</li>
|
|
<li class='ipsMenu_item ipsHide' data-role="photoEditOption">
|
|
<a href='#' data-action='positionCoverPhoto'>{lang="cover_photo_reposition"}</a>
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item'>
|
|
<a href='{$member->url()->setQueryString( 'do', 'coverPhotoUpload' )}' data-ipsDialog data-ipsDialog-title="{lang="cover_photo_add"}">{lang="cover_photo_add"}</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
{{endif}}
|
|
<div class='ipsColumns ipsColumns_collapsePhone' data-hideOnCoverEdit>
|
|
<div class='ipsColumn ipsColumn_fixed ipsColumn_narrow ipsPos_center' id='elProfilePhoto'>
|
|
{{if $member->pp_main_photo and ( mb_substr( $member->pp_photo_type, 0, 5 ) === 'sync-' or $member->pp_photo_type === 'custom' )}}
|
|
<a href="{file="$member->pp_main_photo" extension="core_Profile"}" data-ipsLightbox class='ipsUserPhoto ipsUserPhoto_xlarge'>
|
|
<img src='{$member->photo}' alt=''>
|
|
</a>
|
|
{{else}}
|
|
<span class='ipsUserPhoto ipsUserPhoto_xlarge'>
|
|
<img src='{$member->photo}' alt=''>
|
|
</span>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_modify_profiles') or ( \IPS\Member::loggedIn()->member_id == $member->member_id and $member->group['g_edit_profile'] )}}
|
|
<a href='{url="app=core&module=members&controller=profile&do=editPhoto&id={$member->member_id}" base="front" seoTemplate="edit_profile_photo" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_verySmall ipsButton_light ipsButton_narrow' data-action='editPhoto' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="profile_edit_photo_tab"}' title='{lang="profile_edit_photo_tab"}' data-ipsTooltip><i class='fa fa-photo'></i></a>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
<div class='ipsPos_left ipsPad cProfileHeader_name'>
|
|
<h1 class='ipsType_reset'>{$member->name}</h1>
|
|
<span>{expression="\IPS\Member\Group::load( $member->member_group_id )->formattedName" raw="true"}</span>
|
|
</div>
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id}}
|
|
<ul class='ipsList_inline ipsPad ipsResponsive_hidePhone ipsResponsive_block'>
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id and ( !$member->members_bitoptions['pp_setting_moderate_followers'] or \IPS\Member::loggedIn()->following( 'core', 'member', $member->member_id ) )}}
|
|
{{$memberFollowers = $member->followers();}}
|
|
<li>{template="memberFollow" app="core" group="profile" params="'core', 'member', $member->member_id, ( $memberFollowers === NULL ) ? 0 : $memberFollowers->count( TRUE )"}</li>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->member_id && !$member->members_disable_pm and !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<li><a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$member->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}" class='ipsButton ipsButton_primary'><i class='fa fa-envelope'></i> <span class='ipsResponsive_showDesktop ipsResponsive_inline'> {lang="message_send"}</span></a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class='ipsGrid ipsAreaBackground ipsPad ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{$span = 1;}}
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id and !$member->members_bitoptions['pp_setting_moderate_followers']}}
|
|
{{$span++;}}
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id && \IPS\Member::loggedIn()->member_id && !$member->members_disable_pm and !\IPS\Member::loggedIn()->members_disable_pm}}
|
|
{{$span++;}}
|
|
{{endif}}
|
|
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id and !$member->members_bitoptions['pp_setting_moderate_followers']}}
|
|
<div class='ipsGrid_span{{if $span == 1}}12{{elseif $span == 2}}6{{else}}4{{endif}}'>
|
|
{{$memberFollowers = $member->followers();}}
|
|
{template="memberFollow" app="core" group="profile" params="'core', 'member', $member->member_id, ( $memberFollowers === NULL ) ? 0 : $memberFollowers->count( TRUE )"}
|
|
</div>
|
|
{{endif}}
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id && \IPS\Member::loggedIn()->member_id && !$member->members_disable_pm and !\IPS\Member::loggedIn()->members_disable_pm}}
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$member->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}" data-ipsDialog-forceReload class='ipsGrid_span{{if $span == 1}}12{{elseif $span == 2}}6{{else}}4{{endif}} ipsButton ipsButton_alternate ipsButton_small'><i class='
|
|
fa fa-envelope'></i> <i class='fa fa-caret-right'></i></a>
|
|
{{endif}}
|
|
<div data-role='switchView' class='ipsGrid_span{{if $span == 1}}12{{elseif $span == 2}}6{{else}}4{{endif}}'>
|
|
<div data-action="goToProfile" data-type='phone' class='{{if $small != true}}ipsHide{{endif}}'>
|
|
<a href='{$member->url()}' class='ipsButton ipsButton_light ipsButton_small ipsButton_fullWidth' title="{lang="members_profile" sprintf="$member->name"}"><i class='fa fa-user'></i></a>
|
|
</div>
|
|
<div data-action="browseContent" data-type='phone' class='{{if $small == true}}ipsHide{{endif}}'>
|
|
<a href="{url="app=core&module=members&controller=profile&do=edit&id={$member->member_id}" base="front" seoTemplate="profile_content" seoTitle="$member->members_seo_name"}" class='ipsButton ipsButton_alternate ipsButton_small ipsButton_fullWidth' title="{lang="members_content" sprintf="$member->name"}"><i class='fa fa-search'></i></a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id='elProfileStats' class='ipsClearfix'>
|
|
<div data-role='switchView' class='ipsResponsive_hidePhone ipsResponsive_block'>
|
|
<a href='{$member->url()}' class='ipsButton ipsButton_veryLight ipsButton_medium ipsPos_right {{if $small != true}}ipsHide{{endif}}' data-action="goToProfile" data-type='full' title="{lang="members_profile" sprintf="$member->name"}"><i class='fa fa-user'></i> <span class='ipsResponsive_showDesktop ipsResponsive_inline'> {lang="profile_view_profile"}</span></a>
|
|
<a href="{url="app=core&module=members&controller=profile&do=content&id={$member->member_id}" base="front" seoTemplate="profile_content" seoTitle="$member->members_seo_name"}" class='ipsButton ipsButton_light ipsButton_medium ipsPos_right {{if $small == true}}ipsHide{{endif}}' data-action="browseContent" data-type='full' title="{lang="members_content" sprintf="$member->name"}"><i class='fa fa-search'></i> <span class='ipsResponsive_showDesktop ipsResponsive_inline'> {{if member.member_id === $member->member_id}}{lang="profile_browse_my_content"}{{else}}{lang="profile_browse_content"}{{endif}}</span></a>
|
|
</div>
|
|
<ul class='ipsList_inline ipsPos_left'>
|
|
<li>
|
|
<h4 class='ipsType_minorHeading'>{lang="members_member_posts"}</h4>
|
|
{number="$member->member_posts"}
|
|
</li>
|
|
<li>
|
|
<h4 class='ipsType_minorHeading'>{lang="joined"}</h4>
|
|
{datetime="$member->joined"}
|
|
</li>
|
|
<li>
|
|
<h4 class='ipsType_minorHeading'>{lang="members_last_visit"}</h4>
|
|
<span>
|
|
{{if $member->isOnline()}}<i class="fa fa-circle ipsOnlineStatus_online" data-ipsTooltip title='{lang="online_now" sprintf="$member->name"}'></i>{{endif}} {{if $member->last_activity}}{datetime="$member->last_activity"}{{else}}{lang="never"}{{endif}}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</header>]]></template>
|
|
<template template_group="profile" template_name="profileTabs" template_data="$member, $tabs, $activeTab, $activeTabContents" template_location="front" template_app="core"><![CDATA[<div class='ipsTabs ipsTabs_stretch ipsClearfix' id='elProfileTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elProfileTabs_content'>
|
|
<a href='#elProfileTabs' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role="tablist">
|
|
{{foreach $tabs as $tab => $title}}
|
|
<li>
|
|
<a href='{$member->url()->setQueryString( 'tab', $tab )}' id='elProfileTab_{$tab}' class='ipsTabs_item ipsType_center {{if $activeTab == $tab}}ipsTabs_activeItem{{endif}}' role="tab" aria-selected="{{if $activeTab == $tab}}true{{else}}false{{endif}}">{lang="$title"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div id='elProfileTabs_content' class='ipsTabs_panels ipsPad_double'>
|
|
{{foreach $tabs as $tab => $title}}
|
|
{{if $activeTab == $tab}}
|
|
<div id="ipsTabs_elProfileTabs_elProfileTab_{$tab}_panel" class='ipsTabs_panel ipsAreaBackground_reset'>
|
|
{$activeTabContents|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="recentVisitorsBlock" template_data="$member, $visitors" template_location="front" template_app="core"><![CDATA[
|
|
{{if $member->members_bitoptions['pp_setting_count_visitors']}}
|
|
|
|
<h2 class='ipsWidget_title ipsType_reset'>
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_modify_profiles') or ( \IPS\Member::loggedIn()->member_id == $member->member_id and $member->group['g_edit_profile'] )}}
|
|
<a href='{url="app=core&module=members&controller=profile&do=visitors&id=$member->member_id" seoTemplate="profile" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsType_light ipsType_normal ipsPos_right ipsFaded ipsFaded_more ipsFaded_withHover' data-ipsTooltip title='{lang="hide_recent_visitors"}' data-action='disable'><i class='fa fa-times'></i></a>
|
|
{{endif}}
|
|
|
|
{lang="profile_recent_visitors"}
|
|
</h2>
|
|
<div class='ipsWidget_inner ipsPad'>
|
|
<span class='ipsType_light'>
|
|
{lang="profile_views" pluralize="$member->members_profile_views"}
|
|
</span>
|
|
{{if count($visitors) }}
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing ipsSpacer_top'>
|
|
{{foreach $visitors as $visitor}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsType_center ipsDataItem_icon'>
|
|
{template="userPhoto" app="core" group="global" params="$visitor['member'], 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h3 class='ipsDataItem_title'>{$visitor['member']->link()|raw}</h3>
|
|
<p class='ipsDataItem_meta ipsType_light'>{datetime="$visitor['visit_time']"}</p>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<div class='ipsType_center ipsType_medium'>
|
|
<p class='ipsType_light'>
|
|
{lang="no_recent_visitors"}
|
|
</p>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
<h2 class='ipsWidget_title ipsType_reset'>
|
|
{lang="profile_recent_visitors"}
|
|
</h2>
|
|
<div class='ipsWidget_inner ipsPad'>
|
|
<div class='ipsType_center ipsType_medium'>
|
|
<p class='ipsType_light'>
|
|
{lang="disabled_recent_visitors"}
|
|
</p>
|
|
<a href='{url="app=core&module=members&controller=profile&do=visitors&id={$member->member_id}&state=1" seoTemplate="profile" seoTitle="$member->members_seo_name" csrf="TRUE"}' class='' data-action='enable'>{lang="enable"}</a>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="profile" template_name="singleStatus" template_data="$member, $status" template_location="front" template_app="core"><![CDATA[<div class='ipsPad' id='elSingleStatusUpdate'>
|
|
<h2 class='ipsType_pageTitle {{if !isset( \IPS\Request::i()->status )}}ipsSpacer_top{{endif}}'>
|
|
{lang="viewing_single_status"}
|
|
</h2>
|
|
<p class='ipsType_reset ipsType_normal ipsSpacer_bottom'>
|
|
<a href='{$member->url()->setQueryString( array( 'do' => 'content', 'type' => 'core_statuses_status', 'change_section' => 1 ) )}'><i class='fa fa-caret-left'></i> {lang="see_all_statuses_by_x" sprintf="$member->name"}</a>
|
|
</p>
|
|
<div data-controller='core.front.profile.statusFeed' class='cStatusUpdates ipsSpacer_top'>
|
|
<ol class='ipsType_normal ipsList_reset' data-role='commentFeed'>
|
|
{template="statusContainer" app="core" group="statuses" params="$status"}
|
|
</ol>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="tableRow" template_data="$table, $headers, $members" template_location="front" template_app="core"><![CDATA[{{foreach $members as $member}}
|
|
{{$loadedMember = \IPS\Member::load( $member->member_id );}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_icon'>
|
|
{template="userPhoto" group="global" app="core" params="$loadedMember, 'medium'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h3 class='ipsType_sectionHead'>{$loadedMember->link()|raw}</h3> {{if $loadedMember->isOnline()}}<i class="fa fa-circle ipsOnlineStatus_online" data-ipsTooltip title='{lang="online_now" sprintf="$member->name"}'></i>{{endif}}<br>
|
|
<span class='ipsType_normal'>{expression="\IPS\Member\Group::load( $member->member_group_id )->formattedName" raw="true"}</span>
|
|
<ul class='ipsList_inline ipsType_light'>
|
|
<li><strong>{lang="members_member_posts"}: {$loadedMember->member_posts}</strong></li>
|
|
<li>{lang="members_joined"} {datetime="$loadedMember->joined"}</li>
|
|
{{if $loadedMember->last_activity}}
|
|
<li>{lang="members_last_visit"} {datetime="$loadedMember->last_activity"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$member->member_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $member ) )"}" data-state=''>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="profile" template_name="userContent" template_data="$member, $types, $currentAppModule, $currentType, $table" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<div data-controller='core.front.profile.main'>
|
|
{template="profileHeader" app="core" location="front" group="profile" params="$member, true"}
|
|
<div data-role="profileContent">
|
|
{{endif}}
|
|
<div class="ipsColumns ipsColumns_collapsePhone ipsSpacer_top">
|
|
<div class="ipsColumn ipsColumn_wide">
|
|
<div class="ipsSideMenu ipsAreaBackground_light ipsPad" id="modcp_menu" data-ipsTabBar data-ipsTabBar-contentArea='#elUserContent' data-ipsTabBar-itemselector=".ipsSideMenu_item" data-ipsTabBar-activeClass="ipsSideMenu_itemActive" data-ipsSideMenu>
|
|
<h3 class="ipsSideMenu_mainTitle ipsAreaBackground_light ipsType_medium">
|
|
<a href="#user_content" class="ipsPad_double" data-action="openSideMenu"><i class="fa fa-bars"></i> {lang="user_content_type"} <i class="fa fa-caret-down"></i></a>
|
|
</h3>
|
|
<div>
|
|
<ul class="ipsSideMenu_list">
|
|
<li><a href="{$member->url()->setQueryString( array( 'do' => 'content', 'change_section' => 1 ) )}" class="ipsSideMenu_item {{if !$currentType}}ipsSideMenu_itemActive{{endif}}">{lang="all_activity"}</a></li>
|
|
</ul>
|
|
{{foreach $types as $app => $_types}}
|
|
<h4 class='ipsSideMenu_subTitle'>{lang="module__{$app}"}</h4>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $_types as $key => $class}}
|
|
<li><a href="{$member->url()->setQueryString( array( 'do' => 'content', 'type' => $key, 'change_section' => 1 ) )}" class="ipsSideMenu_item {{if $currentType == $key}}ipsSideMenu_itemActive{{endif}}">{lang="{$class::$title}_pl"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fluid" id='elUserContent'>
|
|
{template="userContentSection" group="profile" app="core" params="$member, $types, $currentAppModule, $currentType, $table"}
|
|
</div>
|
|
</div>
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="profile" template_name="userContentSection" template_data="$member, $types, $currentAppModule, $currentType, $table" template_location="front" template_app="core"><![CDATA[<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{{if !$currentAppModule}}{lang="all_content_by_user" sprintf="$member->name"}{{else}}{lang="content_by_user" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $types[ $currentAppModule ][ $currentType ]::$title . '_pl' ), $member->name"}{{endif}}</h2>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="userContentStream" template_data="$member, $results, $pagination" template_location="front" template_app="core"><![CDATA[
|
|
<div data-baseurl="{url="app=core&module=members&controller=profile&do=content&id={$member->member_id}&page=1" seoTemplate="profile_content" seoTitle="$member->members_seo_name"}" data-resort="listResort" data-tableid="topics"> <!-- data-controller="core.global.core.table" -->
|
|
{{if $pagination}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{$pagination|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<ol class='ipsDataList ipsDataList_large cSearchActivity ipsStream' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
{{foreach $results as $activity}}
|
|
{$activity->html()|raw}
|
|
{{endforeach}}
|
|
</ol>
|
|
{{if $pagination}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{$pagination|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="profile" template_name="userReputation" template_data="$member, $types, $currentAppModule, $currentType, $table" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<div data-controller='core.front.profile.main'>
|
|
{template="profileHeader" app="core" location="front" group="profile" params="$member, true"}
|
|
<br>
|
|
<div data-role="profileContent">
|
|
{{endif}}
|
|
<div class="ipsColumns ipsColumns_collapsePhone ipsSpacer_top">
|
|
<aside class="ipsColumn ipsColumn_wide">
|
|
<div class="cProfileRepScore ipsPad_half {{if $member->pp_reputation_points > 1}}cProfileRepScore_positive{{elseif $member->pp_reputation_points < 0}}cProfileRepScore_negative{{else}}cProfileRepScore_neutral{{endif}}">
|
|
<h2 class='ipsType_minorHeading'>{lang="profile_reputation"}</h2>
|
|
<span class='cProfileRepScore_points'>{$member->pp_reputation_points}</span>
|
|
</div>
|
|
<br>
|
|
<div class="ipsSideMenu ipsAreaBackground_light ipsPad" data-ipsTabBar data-ipsTabBar-contentArea='#elUserReputation' data-ipsTabBar-itemselector=".ipsSideMenu_item" data-ipsTabBar-activeClass="ipsSideMenu_itemActive" data-ipsSideMenu>
|
|
<h3 class="ipsSideMenu_mainTitle ipsAreaBackground_light ipsType_medium">
|
|
<a href="#user_reputation" class="ipsPad_double" data-action="openSideMenu"><i class="fa fa-bars"></i> {lang="user_content_type"} <i class="fa fa-caret-down"></i></a>
|
|
</h3>
|
|
<div>
|
|
{{foreach $types as $app => $_types}}
|
|
<h4 class='ipsSideMenu_subTitle'>{lang="module__{$app}"}</h4>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $_types as $key => $class}}
|
|
<li><a href="{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation&type={$key}&change_section=1" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}" class="ipsSideMenu_item {{if $currentType == $key}}ipsSideMenu_itemActive{{endif}}">{lang="{$class::$title}_pl"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</aside>
|
|
<section class="ipsColumn ipsColumn_fluid">
|
|
<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{lang="replog_title"}</h2>
|
|
<div id='elUserReputation'>
|
|
{template="userReputationSection" group="profile" app="core" params="$table"}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
</div>
|
|
{{endif}} ]]></template>
|
|
<template template_group="profile" template_name="userReputationRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
{{foreach $rows as $row}}
|
|
{{if $row['obj']}}
|
|
<li class='ipsDataItem'>
|
|
{{if \IPS\Settings::i()->reputation_point_types != 'like'}}
|
|
<div class='ipsDataItem_generic ipsDataItem_size1'>
|
|
{{if $row['reputationData']['rep_rating'] === 1}}
|
|
<span class='ipsButton ipsButton_large ipsButton_narrow ipsButton_rep ipsButton_repUp ipsButton_noHover cProfileRepLog_button'>
|
|
<i class='fa fa-arrow-up'></i>
|
|
</span>
|
|
{{else}}
|
|
<span class='ipsButton ipsButton_large ipsButton_narrow ipsButton_rep ipsButton_repDown ipsButton_noHover cProfileRepLog_button'>
|
|
<i class='fa fa-arrow-down'></i>
|
|
</span>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsDataItem_generic ipsDataItem_size2 ipsType_center ipsResponsive_hidePhone'>
|
|
{{if $row['reputationData']['rep_member'] == \IPS\Request::i()->id}}
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( \IPS\Request::i()->id ), 'mini'"}
|
|
{{else}}
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( $row['reputationData']['rep_member'] ), 'mini'"}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<span class=''>
|
|
{{if \IPS\Settings::i()->reputation_point_types != 'like'}}
|
|
{{if $row['obj'] instanceof \IPS\Content\Comment or $row['obj'] instanceof \IPS\Content\Review}}
|
|
{{$item = $row['obj']->item();}}
|
|
{{if $row['reputationData']['rep_member'] != \IPS\Request::i()->id}}
|
|
{lang="replog_rate_comment_received" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member_received'] )->link(), \IPS\Member::load( $row['reputationData']['rep_member'] )->link()"} <a href='{$item->url()}'>{$item->mapped('title')}</a>
|
|
{{else}}
|
|
{{if $row['reputationData']['rep_member_received']}}
|
|
{lang="replog_rate_comment_gave" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), \IPS\Member::load( $row['reputationData']['rep_member_received'] )->link()"} <a href='{$item->url()}'>{$item->mapped('title')}</a>
|
|
{{else}}
|
|
{lang="replog_rate_comment_gave_no_recipient" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link()"} <a href='{$item->url()}'>{$item->mapped('title')}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $row['reputationData']['rep_member'] != \IPS\Request::i()->id}}
|
|
{lang="replog_rate_item_received" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member_received'] )->link(), \IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle()"} <a href='{$row['obj']->url()}'>{$row['obj']->mapped('title')}</a>
|
|
{{else}}
|
|
{{if $row['reputationData']['rep_member_received']}}
|
|
{lang="replog_rate_item_gave" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), \IPS\Member::load( $row['reputationData']['rep_member_received'] )->link(), $row['obj']->indefiniteArticle()"} <a href='{$row['obj']->url()}'>{$row['obj']->mapped('title')}</a>
|
|
{{else}}
|
|
{lang="replog_rate_item_gave_no_recipient" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle()"} <a href='{$row['obj']->url()}'>{$row['obj']->mapped('title')}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{else}}
|
|
<strong>
|
|
{{if $row['obj'] instanceof \IPS\Content\Comment or $row['obj'] instanceof \IPS\Content\Review}}
|
|
{{$item = $row['obj']->item();}}
|
|
{{if $row['reputationData']['rep_member_received']}}
|
|
{lang="replog_like_comment" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle(), \IPS\Member::load( $row['reputationData']['rep_member_received'] )->link()"} <a href='{$item->url()}'>{$item->mapped('title')}</a>
|
|
{{else}}
|
|
{lang="replog_like_comment_no_recipient" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle()"} <a href='{$item->url()}'>{$item->mapped('title')}</a>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $row['reputationData']['rep_member_received']}}
|
|
{lang="replog_like_item" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle(), \IPS\Member::load( $row['reputationData']['rep_member_received'] )->link()"} <a href='{$row['obj']->url()}'>{$row['obj']->mapped('title')}</a>
|
|
{{else}}
|
|
{lang="replog_like_item_no_recipient" htmlsprintf="\IPS\Member::load( $row['reputationData']['rep_member'] )->link(), $row['obj']->indefiniteArticle()"} <a href='{$row['obj']->url()}'>{$row['obj']->mapped('title')}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
</strong>
|
|
{{endif}}
|
|
</span>
|
|
<span class='ipsType_light ipsType_medium'> {datetime="$row['reputationData']['rep_date']"}</span>
|
|
<br>
|
|
{{if $row['obj']->truncated()}}
|
|
<div class='ipsType_medium ipsType_richText ipsContained cProfileRepLog_text' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='2 lines'>
|
|
{$row['obj']->truncated()|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="profile" template_name="userReputationSection" template_data="$table" template_location="front" template_app="core"><![CDATA[
|
|
<section class='ipsDataList ipsDataList_large'>
|
|
{$table|raw}
|
|
</section>]]></template>
|
|
<template template_group="profile" template_name="userReputationTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[<div data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table{{if $table->canModerate()}},core.front.core.moderation{{endif}}' {{if $table->getPaginationKey() != 'page'}}data-pageParam='{$table->getPaginationKey()}'{{endif}}>
|
|
{{if $table->title}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsClear'>{lang="$table->title"}</h2>
|
|
{{endif}}
|
|
|
|
{{if $table->showAdvancedSearch AND ( (isset( $table->sortOptions ) and !empty( $table->sortOptions )) OR $table->advancedSearch ) OR !empty( $table->filters ) OR $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
{{if $table->showAdvancedSearch AND ( ( isset( $table->sortOptions ) and count( $table->sortOptions ) > 1 ) OR $table->advancedSearch )}}
|
|
<li>
|
|
{{if isset($table->sortOptions) }}
|
|
<a href="#elSortByMenu_menu" id="elSortByMenu_{$table->uniqueId}" data-role="sortButton" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="sort_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide" id="elSortByMenu_{$table->uniqueId}_menu">
|
|
{{$custom = TRUE;}}
|
|
{{foreach $table->sortOptions as $k => $col}}
|
|
<li class="ipsMenu_item {{if $col === $table->sortBy}}{{$custom = FALSE;}}ipsMenu_itemChecked{{endif}}" data-ipsMenuValue="{$col}" data-sortDirection='{{if $col == 'title'}}asc{{else}}desc{{endif}}'><a href="{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $col, 'sortdirection' => ( $col == 'title' ) ? 'asc' : 'desc', 'page' => '1' ) )}">{lang="{$table->langPrefix}sort_{$k}"}</a></li>
|
|
{{endforeach}}
|
|
{{if $table->advancedSearch}}
|
|
<li class="ipsMenu_item {{if $custom}}ipsMenu_itemChecked{{endif}}" data-noSelect="true">
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{elseif $table->advancedSearch}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if !empty( $table->filters )}}
|
|
<li>
|
|
<a href="#elFilterByMenu_{$table->uniqueId}_menu" data-role="tableFilterMenu" id="elFilterByMenu_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="filter_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterByMenu_{$table->uniqueId}_menu'>
|
|
<li data-action="tableFilter" data-ipsMenuValue='' class='ipsMenu_item {{if !$table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => '', 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-action="tableFilter" data-ipsMenuValue='{$k}' class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if count( $rows )}}
|
|
<ol class='ipsDataList ipsClear {{foreach $table->classes as $class}}{$class} {{endforeach}}' id='elTable_{$table->uniqueId}' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
{{else}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<p class='ipsType_large'>{lang="no_rows_in_table"}</p>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="promotion" template_name="activeBadge" template_data="$id, $text, $currentStatus, $ad" template_location="admin" template_app="core"><![CDATA[{{$filter = \IPS\Request::i()->filter;}}
|
|
{{if $currentStatus === -1}}
|
|
<span class='ipsBadge ipsBadge_negative'>{lang="$text"}</span>
|
|
{{elseif ( $ad['ad_end'] AND $ad['ad_end'] < time() ) OR ( $ad['ad_maximum_unit'] == 'i' AND $ad['ad_maximum_value'] > -1 AND $ad['ad_impressions'] >= $ad['ad_maximum_value'] ) OR ( $ad['ad_maximum_unit'] == 'c' AND $ad['ad_maximum_value'] > -1 AND $ad['ad_clicks'] >= $ad['ad_maximum_value'] ) }}
|
|
<span class='ipsBadge ipsBadge_neutral' data-ipsTooltip title='{lang="ad_nostatus_change"}'>{lang="disabled"}</span>
|
|
{{else}}
|
|
<span data-ipsStatusToggle>
|
|
<a href="{url="app=core&module=promotion&controller=advertisements&do=toggle&id=$id&status=0&filter={$filter}"}" data-ipsTooltip title="{lang="set_inactive"}" {{if $currentStatus !== 1}}class='ipsHide'{{endif}} data-state="enabled">
|
|
<span class='ipsBadge ipsBadge_positive'>
|
|
{lang="enabled"}
|
|
</span>
|
|
</a>
|
|
<a href="{url="app=core&module=promotion&controller=advertisements&do=toggle&id=$id&status=1&filter={$filter}"}" data-ipsTooltip title="{lang="set_active"}" {{if $currentStatus !== 0}}class='ipsHide'{{endif}} data-state="disabled">
|
|
<span class='ipsBadge ipsBadge_negative'>
|
|
{lang="disabled"}
|
|
</span>
|
|
</a>
|
|
</span>
|
|
{{endif}}]]></template>
|
|
<template template_group="promotion" template_name="adsenseHelp" template_data="" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<div class="ipsSpacer_bottom ipsSpacer_double">
|
|
<p class="ipsType_normal">{lang="google_adsense_blurb"}</p>
|
|
</div>
|
|
|
|
<div class="ipsSpacer_bottom ipsSpacer_double">
|
|
<h2 class="ipsType_sectionHead">{lang="google_adsense_login_header"}</h2>
|
|
<p class="ipsType_normal">{lang="google_adsense_login_blurb"}</p>
|
|
<a href='{external.secure-ads-adsense}' class="ipsButton ipsButton_normal" target='_blank'>{lang="google_adsense_login_link"}</a>
|
|
</div>
|
|
|
|
<div class="ipsSpacer_bottom ipsSpacer_double">
|
|
<h2 class="ipsType_sectionHead">{lang="google_adsense_ajax_header"}</h2>
|
|
<p class="ipsType_normal">{lang="google_adsense_ajax_intro"}</p>
|
|
<p class="ipsType_normal">{lang="google_adsense_ajax_blurb"}</p>
|
|
<ol>
|
|
<li class="ipsType_normal">{lang="google_adsense_ajax_ins_1"}</li>
|
|
<li class="ipsType_normal">{lang="google_adsense_ajax_ins_2"}</li>
|
|
<li class="ipsType_normal">{lang="google_adsense_ajax_ins_3"}</li>
|
|
<li class="ipsType_normal">{lang="google_adsense_ajax_ins_4"}</li>
|
|
</ol>
|
|
</div>
|
|
|
|
<p class="ipsType_normal">{lang="google_adsense_other"}</p>
|
|
</div>]]></template>
|
|
<template template_group="promotion" template_name="advertisementIframePreview" template_data="$id" template_location="admin" template_app="core"><![CDATA[
|
|
<iframe seamless class='ipsAdvertisementPreview' src='{url="app=core&module=promotion&controller=advertisements&do=getHtml&id={$id}"}'></iframe>
|
|
]]></template>
|
|
<template template_group="promotion" template_name="advertisementMessage" template_data="" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='ipsAreaBackground_light ipsPad ipsPhotoPanel ipsPhotoPanel_small'>
|
|
<i class='fa fa-info-circle ipsType_veryLarge ipsPos_left'></i>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'>{lang="ad_promo_title"}</h2>
|
|
<p class='ipsType_normal ipsType_reset'>
|
|
{lang="ad_promo_msg"}
|
|
</p>
|
|
<br>
|
|
<a href='{url="product-nexus" ips="true"}' class='ipsButton ipsButton_primary'>{lang="more_information"}</a>
|
|
</div>
|
|
</div>
|
|
<br><br>
|
|
]]></template>
|
|
<template template_group="promotion" template_name="imageMaximums" template_data="$name, $value, $type" template_location="admin" template_app="core"><![CDATA[{lang="ad_after"}
|
|
<input type="number" name="{$name}[value]" id="{$name}_v" {{if $value === -1}}value='' data-jsdisable="true"{{else}}value="{$value}"{{endif}} class="ipsField_short" size="5">
|
|
<select name='{$name}[type]' id='{$name}_t'>
|
|
<option value='c' {{if $type == 'c'}}selected{{endif}}>{lang="ad_max_clicks"}</option>
|
|
<option value='i' {{if $type == 'i'}}selected{{endif}}>{lang="ad_max_impressions"}</option>
|
|
</select>
|
|
|
|
{lang="or"}
|
|
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" role='checkbox' data-control="unlimited" name="{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}" id='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}-unlimitedCheck' value="-1" {{if -1 === $value}}checked aria-checked='true'{{endif}} aria-labelledby='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}_label'>
|
|
<span></span>
|
|
</span> <label for='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}-unlimitedCheck' class='ipsField_unlimited' id='{expression="preg_replace( '/\[(.+?)\]/', '[$1_unlimited]', $name, 1 )"}_label'>{lang="never"}</label>]]></template>
|
|
<template template_group="search" template_name="filters" template_data="$baseUrl, $count=NULL, $id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL, $errorTabs=NULL" template_location="front" template_app="core"><![CDATA[
|
|
{{$countFields = array( 'search_min_comments', 'search_min_replies', 'search_min_reviews', 'search_min_views');}}
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" method='post' action='{$action}' data-ipsForm id='elSearchFilters_content'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
{{if $form->error}}
|
|
<div class="ipsMessage ipsMessage_error ipsSpacer_bottom">
|
|
{$form->error}
|
|
</div>
|
|
{{endif}}
|
|
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_mini cSearchMainBar'>
|
|
<button type='submit' class='cSearchPretendButton ipsPos_left ipsCursor_default' tabindex='-1'><i class='fa fa-search ipsType_huge'></i></button>
|
|
<div>
|
|
<input type='text' id='elMainSearchInput' name='q' value='{expression="\IPS\Request::i()->q"}' placeholder='{lang="q"}' autofocus class='ipsField_primary ipsField_fullWidth'><br>
|
|
<div class='ipsSpacer_top ipsSpacer_half' data-role="hints">
|
|
{template="hints" group="search" location="front" params="$baseUrl, $count"}
|
|
</div>
|
|
<hr class='ipsHr'>
|
|
<p class='ipsType_reset ipsSpacer_top ipsSpacer_half {{if isset( $hiddenValues['__advanced'] )}}ipsHide{{endif}}' data-action='showFilters'>
|
|
<a href='#' class='ipsType_medium'><i class='fa fa-plus'></i> {lang="search_more_options"}</a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div data-role='searchFilters' class='ipsSpacer_top {{if !isset( $hiddenValues['__advanced'] )}}ipsHide{{endif}}'>
|
|
{{if member.canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) )}}
|
|
<div class='ipsTabs ipsTabs_stretch ipsClearfix' id='elTabs_search' data-ipsTabBar data-ipsTabBar-contentArea='#elTabs_search_content'>
|
|
<a href="#elTabs_search" data-action="expandTabs"><i class="fa fa-caret-down"></i></a>
|
|
<ul role='tablist'>
|
|
<li>
|
|
<a href='#' id="elTab_searchContent" class="ipsTabs_item {{if \IPS\Request::i()->type != 'core_members'}}ipsTabs_activeItem{{endif}} ipsType_center" title="{lang="search_content_search_title"}" role="tab" {{if \IPS\Request::i()->type != 'core_members'}}aria-selected="true"{{endif}}>
|
|
{lang="search_content_search"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href='#' id="elTab_searchMembers" class="ipsTabs_item {{if \IPS\Request::i()->type == 'core_members'}}ipsTabs_activeItem{{endif}} ipsType_center" title="{lang="search_member_search_title"}" role="tab" {{if \IPS\Request::i()->type == 'core_members'}}aria-selected="true"{{endif}}>
|
|
{lang="search_member_search"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<section id='elTabs_search_content' class='ipsTabs_panels'>
|
|
<div id='ipsTabs_elTabs_search_elTab_searchContent_panel' class='ipsTabs_panel' data-tabType='content'>
|
|
<div class='ipsPad_double'>
|
|
<div class=''>
|
|
<ul class='ipsList_reset'>
|
|
{{if isset( $elements['search_tab_content']['tags'] )}}
|
|
<li class='ipsSpacer_half {{if !$elements['search_tab_content']['tags']->value}}ipsHide{{endif}} ipsFieldRow_fullWidth' data-role='searchTags'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="search_by_tags"}</h3>
|
|
{$elements['search_tab_content']['tags']->html()|raw}
|
|
<span class='ipsType_light ipsType_small'>{lang="tags_desc"}</span>
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $elements['search_tab_content']['eitherTermsOrTags'] )}}
|
|
<li class='ipsSpacer_top ipsSpacer_half {{if !$elements['search_tab_content']['tags']->value || !$elements['search_tab_all']['q']->value}}ipsHide{{endif}}' data-role='searchTermsOrTags'>
|
|
<ul class='ipsFieldRow_content ipsList_reset'>
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='radio' name="eitherTermsOrTags" value="or" id='elRadio_eitherTermsOrTags_or' {{if $elements['search_tab_content']['eitherTermsOrTags']->value == 'or'}}checked{{endif}}>
|
|
<span></span>
|
|
</span> <label for='elRadio_eitherTermsOrTags_or'>{lang="termsortags_or_desc"}</label>
|
|
</li>
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='radio' name="eitherTermsOrTags" value="and" id='elRadio_eitherTermsOrTags_and' {{if $elements['search_tab_content']['eitherTermsOrTags']->value == 'and'}}checked{{endif}}>
|
|
<span></span>
|
|
</span> <label for='elRadio_eitherTermsOrTags_and'>{lang="termsortags_and_desc"}</label>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $elements['search_tab_content']['author'] )}}
|
|
<li class='ipsSpacer_top {{if !$elements['search_tab_content']['author']->value}}ipsHide{{endif}} ipsFieldRow_fullWidth' data-role='searchAuthors'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="search_by_author"}</h3>
|
|
{$elements['search_tab_content']['author']->html()|raw}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if isset( $elements['search_tab_content']['tags'] ) || isset( $elements['search_tab_content']['author'] )}}
|
|
<ul class="ipsList_inline ipsType_normal ipsJS_show">
|
|
{{if isset( $elements['search_tab_content']['tags'] ) && !$elements['search_tab_content']['tags']->value}}
|
|
<li><a href="#" data-action="searchByTags" data-opens='searchTags'><i class="fa fa-plus"></i> {lang="search_by_tags"}</a></li>
|
|
{{endif}}
|
|
{{if isset( $elements['search_tab_content']['author'] ) && !$elements['search_tab_content']['author']->value}}
|
|
<li><a href="#" data-action="searchByAuthors" data-opens='searchAuthors'><i class="fa fa-plus"></i> {lang="search_by_author"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<div class='ipsGrid ipsGrid_collapsePhone ipsSpacer_top ipsSpacer_double'>
|
|
{{if isset( $elements['search_tab_content']['type'] ) || isset( $elements['search_tab_content']['nodes'] )}}
|
|
{{$type = $elements['search_tab_content']['type'];}}
|
|
<div class='ipsGrid_span3'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="searchType"}</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal" data-role='searchApp' data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false">
|
|
{{foreach $type->options['options'] as $k => $lang}}
|
|
{{if $k == 'core_members'}}{{continue;}}{{endif}}
|
|
<li>
|
|
<a href='#' id='elSearchToggle_{$k}' class='ipsSideMenu_item {{if (string) $type->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="type" value="{$k}" {{if (string) $type->value == (string) $k}}checked{{endif}} id="elRadio_type_{$k}" data-control="toggle" data-toggles="{expression="implode( ',', $type->options['toggles'][ $k ] )"}" data-toggle-visibleCheck='#elSearchToggle_{$k}'>
|
|
<label for='elRadio_type_{$k}' id='elField_type_{$k}_label' data-role='searchAppTitle'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
|
|
{{if isset( $elements['search_tab_content']['nodes'] )}}
|
|
<br>
|
|
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="$elements['search_tab_content']['nodes']->label"}</h3>
|
|
{$elements['search_tab_content']['nodes']->html()|raw}
|
|
{{endif}}
|
|
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsGrid_span9'>
|
|
<div class='ipsGrid_span9' data-role='searchFilters' id='elSearchFiltersMain'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="searchIn"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half' role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='searchIn'>
|
|
{{foreach $elements['search_tab_content']['search_in']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['search_tab_content']['search_in']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="search_in" value="{$k}" {{if (string) $elements['search_tab_content']['search_in']->value == (string) $k}}checked{{endif}} id="elRadio_searchIn_{$k}">
|
|
<label for='elRadio_searchIn_{$k}' id='elField_searchIn_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="andOr"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half' role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='andOr'>
|
|
{{foreach $elements['search_tab_content']['search_and_or']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['search_tab_content']['search_and_or']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="search_and_or" value="{$k}" {{if (string) $elements['search_tab_content']['search_and_or']->value == (string) $k}}checked{{endif}} id="elRadio_andOr_{$k}">
|
|
<label for='elRadio_andOr_{$k}' id='elField_andOr_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
{{if isset( $elements['search_tab_content']['startDate'] )}}
|
|
<div class='ipsGrid_span6'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="startDate"}</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='dateCreated'>
|
|
{{foreach $elements['search_tab_content']['startDate']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['search_tab_content']['startDate']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="startDate" value="{$k}" {{if (string) $elements['search_tab_content']['startDate']->value == (string) $k}}checked{{endif}} id="elRadio_startDate_{$k}">
|
|
<label for='elRadio_startDate_{$k}' id='elField_startDate_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsGrid ipsGrid_collapsePhone cStreamForm_dates ipsAreaBackground_light ipsPad_half {{if $elements['search_tab_content']['startDate']->value !== 'custom'}}ipsJS_hide{{endif}}' data-role="dateForm">
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="start"}</h4>
|
|
<input type='date' name='{$elements['search_tab_content']['startDateCustom']->name}[start]' data-control='date' data-role='start' value='{$elements['search_tab_content']['startDateCustom']->value['start']}'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="end"}</h4>
|
|
<input type='date' name='{$elements['search_tab_content']['startDateCustom']->name}[end]' data-control='date' data-role='end' value='{$elements['search_tab_content']['startDateCustom']->value['end']}'>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
</div>
|
|
{{endif}}
|
|
{{if isset( $elements['search_tab_content']['updatedDate'] )}}
|
|
<div class='ipsGrid_span6'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="updatedDate"}</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='dateUpdated'>
|
|
{{foreach $elements['search_tab_content']['updatedDate']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['search_tab_content']['updatedDate']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="updatedDate" value="{$k}" {{if (string) $elements['search_tab_content']['updatedDate']->value == (string) $k}}checked{{endif}} id="elRadio_updatedDate_{$k}">
|
|
<label for='elRadio_updatedDate_{$k}' id='elField_updatedDate_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsGrid ipsGrid_collapsePhone cStreamForm_dates ipsAreaBackground_light ipsPad_half {{if $elements['search_tab_content']['updatedDate']->value !== 'custom'}}ipsJS_hide{{endif}}' data-role="dateForm">
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="start"}</h4>
|
|
<input type='date' name='{$elements['search_tab_content']['updatedDateCustom']->name}[start]' data-control='date' data-role='start' value='{$elements['search_tab_content']['updatedDateCustom']->value['start']}'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="end"}</h4>
|
|
<input type='date' name='{$elements['search_tab_content']['updatedDateCustom']->name}[end]' data-control='date' data-role='end' value='{$elements['search_tab_content']['updatedDateCustom']->value['end']}'>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<hr class='ipsHr'>
|
|
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="search_filter_by_number"}</h3>
|
|
<ul class="ipsList_inline ipsSpacer_top ipsSpacer_half ipsType_normal">
|
|
{{foreach $elements['search_tab_content'] as $inputName => $input}}
|
|
{{if in_array( $inputName, $countFields )}}
|
|
<li id='{$inputName}'>
|
|
<a href="#elSearch_{$inputName}_menu" data-ipsMenu data-ipsMenu-appendTo='#elSearchFilters_content' data-ipsMenu-closeOnClick='false' id='elSearch_{$inputName}' data-role='{$inputName}_link'><span class='ipsBadge ipsBadge_small ipsBadge_style1 {{if $input->value <= 0}}ipsHide{{endif}}' data-role='fieldCount'>{$input->value}</span> {lang="$inputName"} <i class='fa fa-caret-down'></i></a>
|
|
<div class='ipsMenu ipsMenu_medium ipsFieldRow_fullWidth ipsPad ipsHide' id='elSearch_{$inputName}_menu'>
|
|
<h4 class="ipsType_reset ipsType_minorHeading ipsSpacer_bottom ipsSpacer_half">{lang="{$inputName}_title"}</h4>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$input->html()|raw}
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if member.canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) )}}
|
|
<div id='ipsTabs_elTabs_search_elTab_searchMembers_panel' class='ipsTabs_panel' data-tabType='members'>
|
|
{{$exclude = array( 'joinedDate', 'joinedDateCustom', 'group');}}
|
|
{{$totalCustomFields = count( $elements['search_tab_member'] ) - count( $exclude ); // Don't count joined, joined custom or group}}
|
|
{{$perCol = ceil( $totalCustomFields / 2 );}}
|
|
<div class='ipsPad_double'>
|
|
<span class='ipsJS_hide'>
|
|
<input type="radio" name="type" value="core_members" {{if (string) $elements['search_tab_content']['type']->value == (string) 'core_members'}}checked{{endif}} id="elRadio_type_core_members">
|
|
<label for='elRadio_type_core_members' id='elField_type_core_members_label' data-role='searchAppTitle'>{lang="core_members"}</label>
|
|
</span>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span4'>
|
|
{{if isset( $elements['search_tab_member']['joinedDate'] )}}
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="joinedDate"}</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='joinedDate'>
|
|
{{foreach $elements['search_tab_member']['joinedDate']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['search_tab_member']['joinedDate']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="joinedDate" value="{$k}" {{if (string) $elements['search_tab_member']['joinedDate']->value == (string) $k}}checked{{endif}} id="elRadio_joinedDate_{$k}">
|
|
<label for='elRadio_joinedDate_{$k}' id='elField_joinedDate_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsGrid ipsGrid_collapsePhone cStreamForm_dates ipsAreaBackground_light ipsPad_half {{if $elements['search_tab_member']['joinedDate']->value !== 'custom'}}ipsJS_hide{{endif}}' data-role="dateForm">
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="start"}</h4>
|
|
<input type='date' name='{$elements['search_tab_member']['joinedDateCustom']->name}[start]' data-control='date' data-role='start' value='{$elements['search_tab_member']['joinedDateCustom']->value['start']}'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="end"}</h4>
|
|
<input type='date' name='{$elements['search_tab_member']['joinedDateCustom']->name}[end]' data-control='date' data-role='end' value='{$elements['search_tab_member']['joinedDateCustom']->value['end']}'>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsGrid_span8' data-role='searchFilters' id='elSearchFiltersMain'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
{{if isset( $elements['search_tab_member']['group'] )}}
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">{lang="group"}</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withChecks ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" data-ipsSideMenu data-ipsSideMenu-type="check" data-ipsSideMenu-responsive="false" data-filterType='group'>
|
|
{{foreach $elements['search_tab_member']['group']->options['options'] as $k => $group}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if is_array( $elements['search_tab_member']['group']->value ) AND in_array( $k, $elements['search_tab_member']['group']->value )}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="checkbox" name="group" value="{$k}" {{if is_array( $elements['search_tab_member']['group']->value ) AND in_array( $k, $elements['search_tab_member']['group']->value )}}checked{{endif}} id="elCheck_group_{$k}">
|
|
<label for='elRadio_group_{$k}' id='elField_group_label'>{$group|raw}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
|
|
{{$countOne = 0;}}
|
|
{{if $totalCustomFields > 1}}
|
|
{{foreach $elements['search_tab_member'] as $id => $element}}
|
|
{{if in_array( $id, $exclude )}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
{{$countOne++;}}
|
|
|
|
<hr class='ipsHr'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="$id"}</h3>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$element->html()|raw}
|
|
</div>
|
|
|
|
{{if $countOne >= $perCol}}
|
|
{{break;}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
{{$countTwo = 0;}}
|
|
{{foreach $elements['search_tab_member'] as $id => $element}}
|
|
{{if in_array( $id, $exclude )}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
{{$countTwo++;}}
|
|
|
|
{{if $countTwo <= $countOne}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
|
|
{{if $countTwo !== ( $countOne + 1 )}}
|
|
<!-- HR except for first item -->
|
|
<hr class='ipsHr'>
|
|
{{endif}}
|
|
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="$id"}</h3>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$element->html()|raw}
|
|
</div>
|
|
|
|
{{if $countTwo >= $perCol}}
|
|
{{break;}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</section>
|
|
<div class='ipsAreaBackground cSearchFiltersSubmit'>
|
|
<ul class='ipsToolList ipsToolList_horizontal ipsClearfix'>
|
|
<li class='ipsPos_right'>
|
|
<button type="submit" class="ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth" data-action="updateResults">
|
|
{{if \IPS\Request::i()->type == 'core_members'}}
|
|
{lang="search_members"}
|
|
{{else}}
|
|
{lang="search_content"}
|
|
{{endif}}
|
|
</button>
|
|
</li>
|
|
<li class='ipsPos_right'>
|
|
<button type="button" class="ipsButton ipsButton_link ipsButton_medium ipsButton_fullWidth {{if isset( $hiddenValues['__advanced'] )}}ipsHide{{endif}}" data-action="cancelFilters">{lang="cancel"}</button>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="search" template_name="globalSearchMenuOptions" template_data="$checked" template_location="front" template_app="core"><![CDATA[{{foreach output.globalSearchMenuOptions() as $type => $name}}
|
|
<li class='ipsMenu_item {{if $checked == $type}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$type}'>
|
|
<a href='#'>{lang="$name"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsMenu_sep'><hr></li>]]></template>
|
|
<template template_group="search" template_name="hints" template_data="$url, $count" template_location="front" template_app="core"><![CDATA[{{if isset( \IPS\Request::i()->q ) and \IPS\Request::i()->q}}
|
|
{{$words = \IPS\Content\Search\Query::termAsWordsArray( \IPS\Request::i()->q, FALSE, 0 );}}
|
|
{{$noPhraseWords = \IPS\Content\Search\Query::termAsWordsArray( \IPS\Request::i()->q, TRUE );}}
|
|
<p class='ipsType_reset'>{lang="search_better_results_hint"}</p>
|
|
<ul class='ipsList_inline'>
|
|
{{if ! \IPS\Content\Search\Query::termIsPhrase( \IPS\Request::i()->q ) and count( $words ) > 1}}
|
|
<li><a href='{$url->setQueryString('q', '"' . \IPS\Request::i()->q . '"')}'>{lang="search_hint_phrase" sprintf="\IPS\Request::i()->q"}</a></li>
|
|
{{elseif \IPS\Content\Search\Query::termIsPhrase( \IPS\Request::i()->q ) and count( $noPhraseWords ) > 1}}
|
|
<li><a href='{$url->setQueryString( array( 'q' => implode( ' ', $noPhraseWords ), 'search_and_or' => 'or' ) )}'>{expression="implode( ' ' . \IPS\Member::loggedIn()->language()->addToStack('search_join_or') . ' ', $noPhraseWords )"}</a></li>
|
|
{{endif}}
|
|
{{if ( ! isset( \IPS\Request::i()->search_and_or ) or \IPS\Request::i()->search_and_or !== 'or' ) and count( $words ) > 1 }}
|
|
<li><a href='{$url->setQueryString( 'search_and_or', 'or')}'>{expression="implode( ' ' . \IPS\Member::loggedIn()->language()->addToStack('search_join_or') . ' ', $words )"}</a></li>
|
|
{{endif}}
|
|
{{if $count > 1 and ( ! isset( \IPS\Request::i()->sortby ) or \IPS\Request::i()->sortby != 'newest' )}}
|
|
<li><a href='{$url->setQueryString('sortby', 'newest')}'>{lang="search_newer_first"}</a></li>
|
|
{{elseif $count > 1 and ( isset( \IPS\Request::i()->sortby ) and \IPS\Request::i()->sortby == 'newest' )}}
|
|
<li><a href='{$url->setQueryString('sortby', 'relevancy')}'>{lang="search_most_pertinent"}</a></li>
|
|
{{endif}}
|
|
{{if isset( \IPS\Request::i()->search_in ) and \IPS\Request::i()->search_in == 'titles'}}
|
|
<li><a href='{$url->setQueryString('search_in', 'all')}'>{lang="search_titles_and_content" sprintf="\IPS\Request::i()->q"}</a></li>
|
|
{{elseif $count > 1 and ( ! isset( \IPS\Request::i()->search_in ) or \IPS\Request::i()->search_in != 'titles' )}}
|
|
<li><a href='{$url->setQueryString('search_in', 'titles')}'>{lang="search_titles_only" sprintf="\IPS\Request::i()->q"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="search" template_name="member" template_data="$member" template_location="front" template_app="core"><![CDATA[<li class="ipsGrid_span4 ipsStreamItem ipsStreamItem_contentBlock ipsAreaBackground_reset ipsPad ipsType_center">
|
|
{template="userPhoto" group="global" app="core" params="$member, 'medium'"}
|
|
<div class='ipsStreamItem_container'>
|
|
<div class='ipsStreamItem_header ipsSpacer_top ipsSpacer_half'>
|
|
<h2 class='ipsType_reset ipsStreamItem_title ipsTruncate ipsTruncate_line'>
|
|
<a href='{$member->url()}' data-searchable>
|
|
{$member->name}
|
|
</a>
|
|
</h2>
|
|
<p class='ipsType_reset ipsType_medium'>{$member->groupName|raw}</p>
|
|
{template="reputationBadge" group="global" app="core" params="$member"}
|
|
</div>
|
|
|
|
<hr class='ipsHr ipsHr_small'>
|
|
|
|
<ul class='ipsList_reset ipsGrid'>
|
|
<li class='ipsGrid_span6 ipsList_reset ipsType_center'>
|
|
<h3 class='ipsType_minorHeading ipsType_unbold'>{lang="joined"}</h3>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line'>{datetime="$member->joined"}</p>
|
|
</li>
|
|
<li class='ipsGrid_span6 ipsList_reset ipsType_center'>
|
|
<h3 class='ipsType_minorHeading ipsType_unbold'>{lang="members_member_posts"}</h3>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line'>{number="$member->member_posts"}</p>
|
|
</li>
|
|
</ul>
|
|
|
|
<hr class='ipsHr ipsHr_small'>
|
|
|
|
<ul class='ipsList_reset'>
|
|
<li class='ipsSpacer_bottom ipsSpacer_half'>
|
|
<a href='{url="app=core&module=members&controller=profile&do=edit&id={$member->member_id}" base="front" seoTemplate="profile_content" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_fullWidth ipsButton_light ipsButton_small'>{lang="find_content"}</a>
|
|
</li>
|
|
{{if \IPS\Member::loggedIn()->member_id != $member->member_id and ( !$member->members_bitoptions['pp_setting_moderate_followers'] or \IPS\Member::loggedIn()->following( 'core', 'member', $member->member_id ) )}}
|
|
<li>
|
|
{{$memberFollowers = $member->followers();}}
|
|
{template="memberFollow" app="core" group="profile" params="'core', 'member', $member->member_id, ( $memberFollowers === NULL ) ? 0 : $memberFollowers->count( TRUE ), TRUE"}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="search" template_name="memberFilters" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[
|
|
{{$exclude = array( 'q', 'joinedDate', 'joinedDateCustom', 'group');}}
|
|
{{$totalCustomFields = count( $elements[''] ) - count( $exclude ); // Don't count q, joined, joined custom or group}}
|
|
{{$perCol = ceil( $totalCustomFields / 2 );}}
|
|
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" method='post' action='{$action}' data-ipsForm id='elSearchFilters_content'>
|
|
{{endif}}
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
<div class='ipsPad_double'>
|
|
<!--<div class='ipsAreaBackground_light ipsPad ipsSpacer_both ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
<i class='fa fa-user ipsType_huge ipsPos_left'></i>
|
|
<div>
|
|
<ul class='ipsList_reset'>
|
|
{{if isset( $elements['']['q'] )}}
|
|
<li class='ipsSpacer_bottom ipsSpacer_half'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">Search By Member Name</h3>
|
|
<input type='text' name='q' value='{{if is_array( $elements['']['q']->value )}}{expression="implode( ',', $elements['']['q']->value )"}{{else}}{$elements['']['q']->value}{{endif}}' class='ipsField_primary ipsField_fullWidth'>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<hr class='ipsHr ipsSpacer_bottom ipsSpacer_double'>-->
|
|
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span4'>
|
|
{{if isset( $elements['']['joinedDate'] )}}
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">Joined</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withRadios ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type="radio" data-ipsSideMenu-responsive="false" data-filterType='joinedDate'>
|
|
{{foreach $elements['']['joinedDate']->options['options'] as $k => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if (string) $elements['']['joinedDate']->value == (string) $k}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="joinedDate" value="{$k}" {{if (string) $elements['']['joinedDate']->value == (string) $k}}checked{{endif}} id="elRadio_joinedDate_{$k}">
|
|
<label for='elRadio_joinedDate_{$k}' id='elField_joinedDate_label'>{lang="$lang"}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsGrid ipsGrid_collapsePhone cStreamForm_dates ipsAreaBackground_light ipsPad_half {{if $elements['']['joinedDate']->value !== 'custom'}}ipsJS_hide{{endif}}' data-role="dateForm">
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="start"}</h4>
|
|
<input type='date' name='{$elements['']['joinedDateCustom']->name}[start]' data-control='date' data-role='start' value='{$elements['']['joinedDateCustom']->value['start']}'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="end"}</h4>
|
|
<input type='date' name='{$elements['']['joinedDateCustom']->name}[end]' data-control='date' data-role='end' value='{$elements['']['joinedDateCustom']->value['end']}'>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsGrid_span8' data-role='searchFilters' id='elSearchFiltersMain'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
{{if isset( $elements['']['group'] )}}
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title">Group</h3>
|
|
<ul class="ipsSideMenu_list ipsSideMenu_withChecks ipsSideMenu_small ipsType_normal ipsSpacer_top ipsSpacer_half" data-ipsSideMenu data-ipsSideMenu-type="check" data-ipsSideMenu-responsive="false" data-filterType='group'>
|
|
{{foreach $elements['']['group']->options['options'] as $k => $group}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if is_array( $elements['']['group']->value ) AND in_array( $k, $elements['']['group']->value )}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="checkbox" name="group" value="{$k}" {{if is_array( $elements['']['group']->value ) AND in_array( $k, $elements['']['group']->value )}}checked{{endif}} id="elCheck_group_{$k}">
|
|
<label for='elRadio_group_{$k}' id='elField_group_label'>{$group|raw}</label>
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
|
|
{{$countOne = 0;}}
|
|
{{if $totalCustomFields > 1}}
|
|
{{foreach $elements[''] as $id => $element}}
|
|
{{if in_array( $id, $exclude )}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
{{$countOne++;}}
|
|
|
|
<hr class='ipsHr'>
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="$id"}</h3>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$element->html()|raw}
|
|
</div>
|
|
|
|
{{if $countOne >= $perCol}}
|
|
{{break;}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
{{$countTwo = 0;}}
|
|
{{foreach $elements[''] as $id => $element}}
|
|
{{if in_array( $id, $exclude )}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
{{$countTwo++;}}
|
|
|
|
{{if $countTwo <= $countOne}}
|
|
{{continue;}}
|
|
{{endif}}
|
|
|
|
{{if $countTwo !== ( $countOne + 1 )}}
|
|
<!-- HR except for first item -->
|
|
<hr class='ipsHr'>
|
|
{{endif}}
|
|
|
|
<h3 class="ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half">{lang="$id"}</h3>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$element->html()|raw}
|
|
</div>
|
|
|
|
{{if $countTwo >= $perCol}}
|
|
{{break;}}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground cSearchFiltersSubmit'>
|
|
<ul class='ipsToolList ipsToolList_horizontal ipsClearfix'>
|
|
<li class='ipsPos_right'>
|
|
<button type="submit" class="ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth" data-action="updateResults">Update Results</button>
|
|
</li>
|
|
<li class='ipsPos_right'>
|
|
<button type="button" class="ipsButton ipsButton_link ipsButton_medium ipsButton_fullWidth" data-action="cancelFilters">{lang="cancel"}</button>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</form>
|
|
{{endif}}]]></template>
|
|
<template template_group="search" template_name="results" template_data="$termJSON, $title, $results, $pagination, $baseUrl, $count=NULL" template_location="front" template_app="core"><![CDATA[
|
|
<div data-controller='core.front.search.results' data-term='{$termJSON|raw}' data-role="resultsArea">
|
|
<p class='ipsType_sectionTitle ipsType_reset'>{lang="search_found" pluralize="$count"}</p>
|
|
{template="resultStream" group="search" params="$results, $pagination, $baseUrl"}
|
|
</div>]]></template>
|
|
<template template_group="search" template_name="resultStream" template_data="$results, $pagination, $baseUrl" template_location="front" template_app="core"><![CDATA[<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{{if $pagination}}
|
|
{$pagination|raw}
|
|
{{endif}}
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
<li>
|
|
<a href="#elSortByMenu_menu" id="elSortByMenu_search_results" data-role="sortButton" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="sort_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide" id="elSortByMenu_search_results_menu">
|
|
{{if !isset( \IPS\Request::i()->type ) OR \IPS\Request::i()->type != 'core_members'}}
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'newest'}} ipsMenu_itemChecked{{endif}}" data-sortDirection='desc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'newest', 'page' => 1 ) )}">{lang="date"}</a></li>
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'relevancy' || !isset( \IPS\Request::i()->sortby )}} ipsMenu_itemChecked{{endif}}" data-sortDirection='desc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'relevancy', 'page' => 1 ) )}">{lang="sort_relevancy"}</a></li>
|
|
{{else}}
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'joined'}} ipsMenu_itemChecked{{endif}}" data-sortDirection='desc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'joined', 'sortdirection' => 'desc', 'page' => 1 ) )}">{lang="sort_joined"}</a></li>
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'name' || !isset( \IPS\Request::i()->sortby )}} ipsMenu_itemChecked{{endif}}" data-sortDirection='asc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'name', 'sortdirection' => 'asc', 'page' => 1 ) )}">{lang="sort_mname"}</a></li>
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'member_posts'}} ipsMenu_itemChecked{{endif}}" data-sortDirection='desc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'member_posts', 'sortdirection' => 'desc', 'page' => 1 ) )}">{lang="sort_posts"}</a></li>
|
|
<li class="ipsMenu_item{{if \IPS\Request::i()->sortby == 'pp_reputation_points'}} ipsMenu_itemChecked{{endif}}" data-sortDirection='desc'><a href="{$baseUrl->setQueryString( array( 'sortby' => 'pp_reputation_points', 'sortdirection' => 'desc', 'page' => 1 ) )}">{lang="sort_reputation"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{{if count( $results ) }}
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
<ol class="ipsStream ipsList_reset {{if request.type == 'core_members'}}cStream_members ipsGrid ipsGrid_collapsePhone{{endif}}" data-role='resultsContents' {{if request.type == 'core_members'}}data-ipsGrid data-ipsGrid-equalHeights='row' data-ipsGrid-minItemSize='250' data-ipsGrid-maxItemSize='400'{{endif}}>
|
|
{{foreach $results as $result}}
|
|
{{if request.type == 'core_members'}}
|
|
{$result->searchResultHtml()|raw}
|
|
{{else}}
|
|
{$result->html()|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsAreaBackground_light ipsType_center ipsPad'>
|
|
<p class='ipsType_large ipsType_light'>{lang="no_search_results"}</p>
|
|
</div>
|
|
{{endif}}
|
|
{{if $pagination}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{$pagination|raw}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="search" template_name="search" template_data="$termArray, $title, $results, $pagination, $baseUrl, $types, $filters, $count=NULL, $advanced=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<div data-controller='core.front.search.main' data-baseURL='{url="app=core&module=search&controller=search" seoTemplate="search"}'>
|
|
<div class='ipsResponsive_hidePhone ipsResponsive_block'>
|
|
<h1 class='ipsType_pageTitle'>{lang="search_the_community"}</h1>
|
|
<p class='ipsType_reset ipsType_large {{if $advanced}}ipsHide{{endif}}' data-role='searchBlurb'>{$title}</p>
|
|
</div>
|
|
|
|
<div class='ipsAreaBackground ipsPad ipsSpacer_top' data-controller='core.front.search.filters' id='elSearchFilters'>
|
|
{$filters|raw}
|
|
</div>
|
|
|
|
<div id="elSearch_main" class='ipsSpacer_top' data-role='filterContent'>
|
|
{{if !$advanced}}
|
|
{template="results" group="search" params="$termArray, $title, $results, $pagination, $baseUrl, $count"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="settings" template_name="dataStoreChange" template_data="$downloadUrl, $checkUrl, $error=FALSE" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad ipsType_center">
|
|
<p class="ipsType_large">{lang="datastore_change_blurb"}</p>
|
|
<div class="ipsPad">
|
|
<a href="{$downloadUrl}" class="ipsButton ipsButton_primary">{lang="datastore_change_download"}</a> <a href="{$checkUrl}" class="ipsButton ipsButton_normal">{lang="continue"}</a>
|
|
</div>
|
|
{{if $error}}
|
|
<p class="ipsType_warning">{lang="datastore_change_error"}</p>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="settings" template_name="reputationLike" template_data="$blurb" template_location="admin" template_app="core"><![CDATA[<div class='ipsLikeRep'>
|
|
<a class='ipsButton ipsButton_like ipsButton_alternate'><i class='fa fa-heart'></i> {lang="like"}</a>
|
|
<span class='ipsLike_contents'>{$blurb|raw}</span>
|
|
</div>
|
|
<br>
|
|
<span class="ipsType_light">{lang="rep_system_like"}</span>]]></template>
|
|
<template template_group="settings" template_name="reputationNormal" template_data="$pos,$neg" template_location="admin" template_app="core"><![CDATA[<div class='ipsLikeRep'>
|
|
{{if $pos}}
|
|
<a class='ipsButton ipsButton_rep ipsButton_repUp'><i class='fa fa-arrow-up'></i></a>
|
|
{{endif}}
|
|
{{if $neg}}
|
|
<a class='ipsButton ipsButton_rep ipsButton_repDown'><i class='fa fa-arrow-down'></i></a>
|
|
{{endif}}
|
|
{{if $pos and $neg}}
|
|
<span class='ipsReputation_count ipsType_blendLinks ipsType_neutral'><i class='fa fa-heart ipsType_small'></i> 0</span>
|
|
{{elseif $pos}}
|
|
<span class='ipsReputation_count ipsType_blendLinks ipsType_positive'><i class='fa fa-heart ipsType_small'></i> 5</span>
|
|
{{else}}
|
|
<span class='ipsReputation_count ipsType_blendLinks ipsType_negative'><i class='fa fa-heart ipsType_small'></i> -5</span>
|
|
{{endif}}
|
|
</div>
|
|
<br>
|
|
<span class="ipsType_light">
|
|
{{if $pos and $neg}}
|
|
{lang="rep_system_both"}
|
|
{{elseif $pos}}
|
|
{lang="rep_system_positive"}
|
|
{{else}}
|
|
{lang="rep_system_negative"}
|
|
{{endif}}
|
|
</span>]]></template>
|
|
<template template_group="sharelinks" template_name="delicious" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href="{$url}" class="cShareLink cShareLink_delicious" target="_blank" data-role='shareLink' title='{lang="delicious_text"}' data-ipsTooltip>
|
|
<i class="fa fa-delicious"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="digg" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href="{$url}" class="cShareLink cShareLink_digg" target="_blank" data-role="shareLink" title='{lang="digg_text"}' data-ipsTooltip>
|
|
<i class="fa fa-digg"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="email" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href='{$url}' class='cShareLink cShareLink_email' data-ipsDialog data-ipsDialog-title='{lang="send_email_form"}' data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage='{lang="email_sent"}' title='{lang="email_text"}' data-ipsTooltip>
|
|
<i class="fa fa-envelope"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="facebook" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href="https://www.facebook.com/sharer/sharer.php?u={$url}" class="cShareLink cShareLink_facebook" target="_blank" data-role="shareLink" title='{lang="facebook_text"}' data-ipsTooltip>
|
|
<i class="fa fa-facebook"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="google" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href="https://plus.google.com/share?url={$url}" class="cShareLink cShareLink_google" target="_blank" data-role="shareLink" title='{lang="googleplus_text"}' data-ipsTooltip>
|
|
<i class="fa fa-google-plus"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="linkedin" template_data="$url, $title" template_location="front" template_app="core"><![CDATA[<a href="http://www.linkedin.com/shareArticle?mini=true&url={$url}&title={$title}" class="cShareLink cShareLink_linkedin" target="_blank" data-role="shareLink" title='{lang="lin_text"}' data-ipsTooltip>
|
|
<i class="fa fa-linkedin"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="reddit" template_data="$url, $title" template_location="front" template_app="core"><![CDATA[<a href="http://www.reddit.com/submit?url={$url}&title={expression="urlencode( $title )"}" class="cShareLink cShareLink_reddit" target="_blank" title='{lang="reddit_text"}' data-ipsTooltip>
|
|
<i class="fa fa-reddit"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="stumble" template_data="$url" template_location="front" template_app="core"><![CDATA[<a href="http://www.stumbleupon.com/submit?url={expression="urlencode( $url )"}" class="cShareLink cShareLink_stumble" target="_blank" title='{lang="stumble_text"}' data-ipsTooltip>
|
|
<i class="fa fa-stumbleupon"></i>
|
|
</a>]]></template>
|
|
<template template_group="sharelinks" template_name="twitter" template_data="$url, $title" template_location="front" template_app="core"><![CDATA[<a href="http://twitter.com/share?text={$title}&url={$url}" class="cShareLink cShareLink_twitter" target="_blank" data-role="shareLink" title='{lang="twitter_text"}' data-ipsTooltip>
|
|
<i class="fa fa-twitter"></i>
|
|
</a>]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_blocks" template_data="$users" template_location="front" template_app="core"><![CDATA[{{$count=0;}}
|
|
{{foreach $users as $user}}
|
|
{{if $count%4 == 0}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone cStaffDirectory_blocks'>
|
|
{{endif}}
|
|
<div class='ipsGrid_span3 ipsType_center ipsAreaBackground_light ipsPad'>
|
|
{template="userPhoto" app="core" group="global" params="$user->member(), 'small'"}
|
|
<h3 class='ipsType_sectionHead'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_{$user->id}" ) }}
|
|
{{if member.canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) )}}
|
|
<a href='{$user->member()->url()}'>{lang="core_staff_directory_name_{$user->id}"}</a>
|
|
{{else}}
|
|
{lang="core_staff_directory_name_{$user->id}"}
|
|
{{endif}}
|
|
{{else}}
|
|
{$user->member()->link()|raw}
|
|
{{endif}}
|
|
</h3>
|
|
<p class='ipsType_reset ipsType_normal ipsType_light'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_{$user->id}" )}}
|
|
{lang="core_staff_directory_title_{$user->id}"}
|
|
{{else}}
|
|
{{if $user->member()->member_title}}
|
|
{$user->member()->member_title}
|
|
{{elseif $user->member()->rank['title']}}
|
|
{$user->member()->rank['title']}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{if !member.members_disable_pm AND !$user->member()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<br>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$user->member()->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-forceReload data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}"><i class='fa fa-envelope'></i> {lang="message_send"}</a>
|
|
{{endif}}
|
|
</div>
|
|
{{$count++;}}
|
|
{{if $count%4 == 0}}
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $count%4 != 0}}
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_blocks_preview" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<div class='cStaffDirPreview cStaffDirPreview_blocks'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span3 ipsType_center cStaffDirPreview_block'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
</div>
|
|
<div class='ipsGrid_span3 ipsType_center cStaffDirPreview_block'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
</div>
|
|
<div class='ipsGrid_span3 ipsType_center cStaffDirPreview_block'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
</div>
|
|
<div class='ipsGrid_span3 ipsType_center cStaffDirPreview_block'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_full" template_data="$users" template_location="front" template_app="core"><![CDATA[{{foreach $users as $user}}
|
|
<div class='ipsAreaBackground_light ipsPad ipsPhotoPanel ipsPhotoPanel_small ipsSpacer_bottom ipsSpacer_half cStaffDirectory_full'>
|
|
{template="userPhoto" app="core" group="global" params="$user->member(), 'small'"}
|
|
<div>
|
|
<h3 class='ipsType_sectionHead'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_{$user->id}" ) }}
|
|
{{if member.canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) )}}
|
|
<a href='{$user->member()->url()}'>{lang="core_staff_directory_name_{$user->id}"}</a>
|
|
{{else}}
|
|
{lang="core_staff_directory_name_{$user->id}"}
|
|
{{endif}}
|
|
{{else}}
|
|
{$user->member()->link()|raw}
|
|
{{endif}}
|
|
</h3>
|
|
<p class='ipsType_reset ipsType_normal ipsType_light'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_{$user->id}" )}}
|
|
{lang="core_staff_directory_title_{$user->id}"}
|
|
{{else}}
|
|
{{if $user->member()->member_title}}
|
|
{$user->member()->member_title}
|
|
{{elseif $user->member()->rank['title']}}
|
|
{$user->member()->rank['title']}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_{$user->id}" )}}
|
|
<br>
|
|
<div class='ipsType_richText ipsType_normal' data-ipsTruncate data-ipsTruncate-size="4 lines" data-ipsTruncate-type="hide">{lang="core_staff_directory_bio_{$user->id}"}</div>
|
|
{{endif}}
|
|
{{if !member.members_disable_pm AND !$user->member()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<br>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$user->member()->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-forceReload data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}"><i class='fa fa-envelope'></i> {lang="message_send"}</a>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_full_preview" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<div class='cStaffDirPreview cStaffDirPreview_full'>
|
|
<div class='cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
<div class='cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
<div class='cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_half" template_data="$users" template_location="front" template_app="core"><![CDATA[{{$count=0;}}
|
|
{{foreach $users as $user}}
|
|
{{if $count%2 == 0}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone ipsSpacer_bottom cStaffDirectory_half'>
|
|
{{endif}}
|
|
<div class='ipsGrid_span6 ipsPhotoPanel ipsPhotoPanel_small ipsAreaBackground_light ipsPad'>
|
|
{template="userPhoto" app="core" group="global" params="$user->member(), 'small'"}
|
|
<div>
|
|
<h3 class='ipsType_sectionHead'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_{$user->id}" ) }}
|
|
{{if member.canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) )}}
|
|
<a href='{$user->member()->url()}'>{lang="core_staff_directory_name_{$user->id}"}</a>
|
|
{{else}}
|
|
{lang="core_staff_directory_name_{$user->id}"}
|
|
{{endif}}
|
|
{{else}}
|
|
{$user->member()->link()|raw}
|
|
{{endif}}
|
|
</h3>
|
|
<p class='ipsType_light ipsType_normal ipsType_reset'>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_{$user->id}" ) }}
|
|
{lang="core_staff_directory_title_{$user->id}"}
|
|
{{else}}
|
|
{{if $user->member()->member_title}}
|
|
{$user->member()->member_title}
|
|
{{elseif $user->member()->rank['title']}}
|
|
{$user->member()->rank['title']}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_{$user->id}" )}}
|
|
<br>
|
|
<div class='ipsType_richText ipsType_normal' data-ipsTruncate data-ipsTruncate-size="4 lines" data-ipsTruncate-type="hide">{lang="core_staff_directory_bio_{$user->id}"}</div>
|
|
{{endif}}
|
|
{{if !member.members_disable_pm AND !$user->member()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
|
|
<br>
|
|
<a href='{url="app=core&module=messaging&controller=messenger&do=compose&to={$user->member()->member_id}" seoTemplate="messenger_compose"}' data-ipsDialog data-ipsDialog-title='{lang="compose_new"}' data-ipsDialog-forceReload data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="message_sent"}"><i class='fa fa-envelope'></i> {lang="message_send"}</a>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{$count++;}}
|
|
{{if $count%2 == 0}}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{if $count%2 != 0}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="staffdirectory" template_name="layout_half_preview" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<div class='cStaffDirPreview cStaffDirPreview_full'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6 cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
<div class='ipsGrid_span6 cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
</div>
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6 cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
<div class='ipsGrid_span6 cStaffDirPreview_block cStaffDirPreview_row'>
|
|
<span class='cStaffDirPreview_photo'></span><br>
|
|
<span class='cStaffDirPreview_title'></span>
|
|
<span class='cStaffDirPreview_text'></span>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="staffdirectory" template_name="template" template_data="$groups, $userIsStaff=FALSE" template_location="front" template_app="core"><![CDATA[{{if $userIsStaff }}
|
|
<a href="{url="app=core&module=staffdirectory&controller=directory&do=form" seoTemplate="staffdirectory"}" class='ipsPos_right ipsButton ipsButton_small ipsButton_important' data-ipsDialog data-ipsDialog-title='{lang="leader_edit_mine"}'><i class='fa fa-pencil'></i> {lang="leader_edit_mine"}</a>
|
|
{{endif}}
|
|
<h1 class='ipsType_pageTitle'>
|
|
{lang="staff_directory"}
|
|
</h1>
|
|
<br><br>
|
|
|
|
{{foreach $groups as $group}}
|
|
{{if count( $group->members() )}}
|
|
<section class='ipsBox cStaffDirectory'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{$group->_title}</h2>
|
|
<div class='ipsPad_half'>
|
|
{template="$group->template" app="core" group="staffdirectory" location="front" params="$group->members()"}
|
|
</div>
|
|
</section>
|
|
<br>
|
|
{{endif}}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="status" template_name="feed" template_data="$statuses,$form,$pagination" template_location="front" template_app="core"><![CDATA[<div class='ipsBox ipsPad'>
|
|
<div class='ipsPageHeader ipsClearFix ipsSpacer_bottom'>
|
|
<h1 class='ipsType_pageTitle'><a href='#elFeed_menu' id='elFeed' data-ipsMenu data-ipsMenu-align-center>{{if isset( \IPS\Request::i()->following )}}{lang="people_i_follow"}{{else}}{lang="status_updates"}{{endif}} <i class='fa fa-caret-down'></i></a></h1>
|
|
</div>
|
|
<ul id='elFeed_menu' class='ipsMenu ipsMenu_auto ipsMenu_selectable ipsHide ipsType_medium'>
|
|
<li class='ipsMenu_item {{if !isset( \IPS\Request::i()->following )}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=status&controller=feed" seoTemplate="status"}'>{lang="global_feed"}</a>
|
|
</li>
|
|
{{if \IPS\Member::loggedIn()->member_id }}
|
|
<li class='ipsMenu_item {{if isset( \IPS\Request::i()->following )}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{url="app=core&module=status&controller=feed&following=1" seoTemplate="status_following"}'>{lang="people_i_follow"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
<div data-controller='core.front.statuses.statusFeed' class='cStatusUpdates'>
|
|
{{if \IPS\core\Statuses\Status::canCreate( \IPS\Member::loggedIn() ) AND $form !== NULL}}
|
|
<div class='ipsComposeArea ipsComposeArea_withPhoto ipsClearfix' data-role='newStatus'>
|
|
<div class='ipsPos_left ipsResponsive_hidePhone ipsResponsive_block'>{template="userPhoto" app="core" group="global" params="\IPS\Member::loggedIn(), 'small'"}</div>
|
|
<div class='ipsComposeArea_editor'>
|
|
{$form|raw}
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
{{if isset( $statuses['statuses'] ) and count( $statuses['statuses'] )}}
|
|
{$pagination|raw}
|
|
<br><br>
|
|
<ol class='ipsType_normal ipsList_reset' data-role='commentFeed'>
|
|
{{foreach $statuses['statuses'] as $status}}
|
|
{template="statusContainer" app="core" group="statuses" params="$status"}
|
|
{{endforeach}}
|
|
</ol>
|
|
{$pagination|raw}
|
|
{{else}}
|
|
<p class='ipsEmpty ipsType_center'>{lang="no_status_updates"}</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="statuses" template_name="statusContainer" template_data="$status, $authorData=NULL, $profileOwnerData=NULL, $condensed=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<li {{if !$condensed}}data-controller='core.front.statuses.status'{{endif}} class='ipsStreamItem ipsStreamItem_contentBlock {{if $condensed}}ipsStreamItem_condensed{{endif}} {{if $status->hidden()}} ipsModerated{{endif}} ipsAreaBackground_reset ipsPad' data-timestamp='{$status->date}' data-role='activityItem' data-statusid="{$status->id}">
|
|
<a id='status-{$status->id}'></a>
|
|
<div class='ipsStreamItem_container'>
|
|
<div class='ipsStreamItem_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
<span class='ipsStreamItem_contentType' data-ipsTooltip title='{lang="status_update"}'><i class='fa fa-user'></i></span>
|
|
{{if $authorData}}
|
|
{template="userPhotoFromData" group="global" app="core" params="$authorData['member_id'], $authorData['name'], $authorData['members_seo_name'], \IPS\Member::photoUrl( $authorData ), ( $condensed ? 'tiny' : 'mini' )"}
|
|
{{else}}
|
|
{template="userPhoto" group="global" app="core" params="$status->author(), ( $condensed ? 'tiny' : 'mini' )"}
|
|
{{endif}}
|
|
<div>
|
|
<h2 class='ipsType_reset ipsStreamItem_title {{if $condensed}}ipsStreamItem_titleSmall{{endif}} ipsType_break'>
|
|
<strong>
|
|
{{if $authorData}}
|
|
{template="userLinkFromData" group="global" app="core" params="$authorData['member_id'], $authorData['name'], $authorData['members_seo_name']"}
|
|
{{else}}
|
|
{template="userLink" app="core" group="global" location="front" params="$status->author()"}
|
|
{{endif}}
|
|
</strong>
|
|
{{if $status->member_id != $status->author()->member_id}}
|
|
<i class='fa fa-angle-right'></i>
|
|
<strong>
|
|
{{if $profileOwnerData}}
|
|
{template="userLinkFromData" group="global" app="core" params="$profileOwnerData['member_id'], $profileOwnerData['name'], $profileOwnerData['members_seo_name']"}
|
|
{{else}}
|
|
{member="link()" id="$status->member_id" raw="true"}
|
|
{{endif}}
|
|
</strong>
|
|
{{endif}}
|
|
{{if $status->hidden()}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_warning" data-ipsTooltip title='{lang="hidden"}'><i class='fa fa-eye-slash'></i></span>
|
|
{{endif}}
|
|
</h2>
|
|
{{if $condensed}}
|
|
<ul class='ipsList_inline ipsStreamItem_stats ipsType_light'>
|
|
<li>
|
|
<a href='{$status->url()}' class='ipsType_blendLinks'><i class='fa fa-clock-o'></i> {datetime="$status->date"}</a>
|
|
</li>
|
|
</ul>
|
|
<p class="ipsStreamItem_status ipsType_reset">
|
|
{{if $status->member_id == $status->author()->member_id}}
|
|
{{if $authorData}}
|
|
{lang="member_posted_status_self" htmlsprintf="$authorData['name']"}
|
|
{{else}}
|
|
{lang="member_posted_status_self" htmlsprintf="$status->author()->name"}
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $authorData}}
|
|
{lang="member_posted_status_other" htmlsprintf="$authorData['name'], $profileOwnerData['name']"}
|
|
{{else}}
|
|
{lang="member_posted_status_other" htmlsprintf="$status->author()->name, \IPS\Member::load( $status->member_id )->name"}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{if !$condensed}}
|
|
<div class='ipsStreamItem_snippet'>
|
|
<div class='ipsType_richText ipsType_normal ipsContained'>{$status->content|raw}</div>
|
|
</div>
|
|
{{endif}}
|
|
{{if !$condensed}}
|
|
<ul class='ipsList_inline ipsStreamItem_meta ipsFaded_withHover'>
|
|
<li class='ipsType_medium'>{{if $status->locked()}}<i class='fa fa-lock'></i>{{endif}} <a href='{$status->url()}' class='ipsType_blendLinks'><span class='ipsType_light'><i class='fa fa-clock-o'></i> {datetime="$status->date"}</span></a></li>
|
|
{{if $status instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
<li class='ipsType_light ipsType_medium'>{template="reputationMini" group="global" app="core" params="$status->reputation(), $status->canGiveReputation( 1 ), $status->canGiveReputation( -1 ), $status->url('showRep'), $status->url('rep')"}</li>
|
|
{{endif}}
|
|
{{if $status->canDelete() || $status->canLock() || $status->canUnlock() || $status->canHide() || $status->canUnhide()}}
|
|
<li>
|
|
<a href='#elStatus_{$status->id}_menu' data-ipsMenu data-ipsMenu-activeClass='ipsFaded_cancel' id='elStatus_{$status->id}' class='ipsFaded ipsFaded_more'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_narrow ipsHide' id='elStatus_{$status->id}_menu'>
|
|
{{if !$status->locked() and $status->canLock()}}
|
|
<li class='ipsMenu_item'><a href="{$status->url('moderate')->setQueryString( 'action', 'lock' )->csrf()}">{lang="lock"}</a></li>
|
|
{{elseif $status->locked() and $status->canUnlock()}}
|
|
<li class='ipsMenu_item'><a href="{$status->url('moderate')->setQueryString( 'action', 'unlock' )->csrf()}">{lang="unlock"}</a></li>
|
|
{{endif}}
|
|
{{if !$status->hidden() and $status->canHide()}}
|
|
<li class='ipsMenu_item'><a href='{$status->url('moderate')->setQueryString( 'action', 'hide' )->csrf()}'>{lang="hide"}</a></li>
|
|
{{elseif $status->hidden() and $status->canUnhide()}}
|
|
<li class='ipsMenu_item'><a href='{$status->url('moderate')->setQueryString( 'action', 'unhide' )->csrf()}'>{lang="unhide"}</a></li>
|
|
{{endif}}
|
|
{{if $status->canDelete()}}
|
|
<li class='ipsMenu_item'><a data-confirm href="{$status->url('moderate')->setQueryString( 'action', 'delete' )->csrf()}">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if !\IPS\Member::loggedIn()->group['gbw_no_report'] and !$status->hidden()}}
|
|
<li><a href='{$status->url('report')}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="report"}" data-action='reportStatus' title='{lang="report_content"}' class='ipsFaded ipsFaded_more'>{lang="status_report"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if !$condensed && ( !$status->hidden() && ( count( $status->comments() ) || $status->canComment() ) )}}
|
|
<div class='ipsComment_feed ipsComment_subComments ipsType_medium'>
|
|
<ol class="ipsList_reset" data-role='statusComments' data-currentPage='{expression="\IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1"}'>
|
|
{template="statusReplies" group="statuses" params="$status"}
|
|
</ol>
|
|
{{if \IPS\core\Statuses\Status::canCreateReply( \IPS\Member::loggedIn() )}}
|
|
<div class="ipsComment ipsFieldRow_fullWidth ipsAreaBackground_light ipsPad" data-role="replyComment">
|
|
<div class="ipsComment_content ipsContained">
|
|
{$status->commentForm()|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="statuses" template_name="statusContentRows" template_data="$table, $headers, $rows" template_location="front" template_app="core">{{foreach $rows as $status}}
|
|
{template="statusContainer" app="core" group="statuses" params="$status"}
|
|
{{endforeach}}</template>
|
|
<template template_group="statuses" template_name="statusPagination" template_data="$baseUrl, $pages, $comments, $activePage=1, $perPage=3, $direction='prev'" template_location="front" template_app="core"><![CDATA[{{if $pages > 1}}
|
|
{{if $direction == 'prev' && $activePage != $pages && !( $activePage > $pages )}}
|
|
<li class="ipsComment ipsClearfix ipsAreaBackground_light cStatusUpdates_pagination">
|
|
<a href="{$baseUrl->setQueryString( 'page', $activePage + 1 )}" data-action="loadPreviousComments"><i class="fa fa-angle-up"></i> {lang="show_prev_comments"} <span class="ipsType_light">{lang="x_more" sprintf="$comments - ( $activePage * $perPage )"}</span></a>
|
|
</li>
|
|
{{elseif $direction == 'next' && $activePage > 1}}
|
|
<li class="ipsComment ipsClearfix ipsAreaBackground_light cStatusUpdates_pagination">
|
|
<a href="{$baseUrl->setQueryString( 'page', $activePage - 1 )}" data-action="loadNextComments"><i class="fa fa-angle-down"></i> {lang="show_next_comments"} <span class="ipsType_light">{lang="x_more" sprintf="( $activePage - 1 ) * $perPage"}</span></a>
|
|
</li>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="statuses" template_name="statusReplies" template_data="$status" template_location="front" template_app="core"><![CDATA[
|
|
{{if $status->commentPageCount() > 1}}
|
|
{template="statusPagination" group="statuses" location="front" app="core" params="$status->url(), $status->commentPageCount(), $status->replies, \IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1, \IPS\core\Statuses\status::$commentsPerPage, 'prev'"}
|
|
{{endif}}
|
|
{{foreach $status->commentsForDisplay() as $comment}}
|
|
{$comment->html()|raw}
|
|
{{endforeach}}
|
|
{{if !request.isAjax() and $status->commentPageCount() > 1}}
|
|
{template="statusPagination" group="statuses" location="front" app="core" params="$status->url(), $status->commentPageCount(), $status->replies, \IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1, \IPS\core\Statuses\status::$commentsPerPage, 'next'"}
|
|
{{endif}}]]></template>
|
|
<template template_group="statuses" template_name="statusReply" template_data="$status, $comment" template_location="front" template_app="core"><![CDATA[<div class="ipsComment_content ipsFaded_withHover" data-controller="core.front.core.comment">
|
|
<p class="ipsComment_author ipsType_normal" itemprop="creator" itemscope="" itemtype="http://schema.org/Person">
|
|
<strong>{template="userLink" app="core" group="global" location="front" params="$comment->author()"}</strong>
|
|
{{if $comment->hidden()}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="hidden"}'><i class='fa fa-eye-slash'></i></span>
|
|
{{endif}}
|
|
</p>
|
|
<div data-role="commentContent" class='ipsType_richText ipsType_medium ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{$comment->content|raw}
|
|
</div>
|
|
<ul class="ipsList_inline ipsType_medium cStatusTools">
|
|
<li class="ipsType_light"><a href='{$comment->url()}' class='ipsType_blendLinks'>{datetime="$comment->date"}</a></li>
|
|
{{if $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
<li>{template="reputationMini" group="global" app="core" params="$comment->reputation(), $comment->canGiveReputation( 1 ), $comment->canGiveReputation( -1 ), $comment->url('showRep'), $comment->url('rep')"}</li>
|
|
{{endif}}
|
|
{{if $comment->canDelete() || ( $comment instanceof \IPS\Content\Hideable && ( !$comment->hidden() and $comment->canHide() ) || ( $comment->hidden() and $comment->canUnhide() ) ) }}
|
|
<li>
|
|
<a href='#elComment_{$comment->id}_menu' id='elComment_{$comment->id}' data-ipsMenu data-ipsMenu-activeClass='ipsFaded_cancel' class='ipsFaded ipsFaded_more'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_narrow ipsHide' id='elComment_{$comment->id}_menu'>
|
|
{{if $comment instanceof \IPS\Content\Hideable}}
|
|
{{if !$comment->hidden() and $comment->canHide()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('moderate')->setQueryString( 'action', 'hide' )->csrf()}'>{lang="hide"}</a></li>
|
|
{{elseif $comment->hidden() and $comment->canUnhide()}}
|
|
<li class='ipsMenu_item'><a href='{$comment->url('moderate')->setQueryString( 'action', 'unhide' )->csrf()}'>{lang="unhide"}</a></li>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $comment->canDelete()}}
|
|
<li class='ipsMenu_item'><a data-confirm href='{$comment->url('moderate')->setQueryString( 'action', 'delete' )->csrf()}' data-action='deleteComment' data-updateOnDelete="#commentCount">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if $comment instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and !$comment->hidden() }}
|
|
<li><a href='{$comment->url('report')}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report_content"}' class='ipsFaded ipsFaded_more'>{lang="status_report"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="statuses" template_name="statusReplyContainer" template_data="$status, $comment" template_location="front" template_app="core"><![CDATA[{{$idField = $comment::$databaseColumnId;}}
|
|
{{$itemClassSafe = str_replace( '\\', '_', mb_substr( $comment::$itemClass, 4 ) );}}
|
|
{{if $comment->isIgnored()}}
|
|
<li class='ipsComment ipsComment_ignored ipsPad_half ipsType_light' id='elIgnoreComment_{$comment->$idField}' data-ignoreCommentID='elComment_{$comment->$idField}' data-ignoreUserID='{$comment->author()->member_id}'>
|
|
{lang="status_ignoring" sprintf="$comment->author()->name"}
|
|
</li>
|
|
{{endif}}
|
|
<li class="ipsComment ipsAreaBackground_light ipsClearfix{{if $comment->hidden()}} ipsModerated{{endif}} {{if $comment->isIgnored()}}ipsHide{{endif}}" data-commentid="{$comment->id}" itemscope itemtype="http://schema.org/Comment">
|
|
{template="userPhoto" app="core" group="global" params="$comment->author(), 'tiny'"}
|
|
{template="statusReply" group="statuses" app="core" params="$status, $comment"}
|
|
</li>]]></template>
|
|
<template template_group="statuses" template_name="statusReplyContentRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $reply}}
|
|
{{$item = $reply->item();}}
|
|
<li data-controller='core.front.statuses.status' class='ipsStreamItem ipsStreamItem_contentBlock {{if $item->hidden()}} ipsModerated{{endif}} ipsAreaBackground_reset ipsPad' data-timestamp='{$item->date}' data-role='activityItem' data-statusid="{$item->id}">
|
|
<a id='status-{$item->id}'></a>
|
|
<div class='ipsStreamItem_container'>
|
|
<div class='ipsStreamItem_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
<span class='ipsStreamItem_contentType' data-ipsTooltip title='{lang="status_update"}'><i class='fa fa-user'></i></span>
|
|
{template="userPhoto" group="global" app="core" params="$item->author(), 'mini'"}
|
|
<div>
|
|
<h2 class='ipsType_reset ipsStreamItem_title ipsType_break'>
|
|
<strong>{template="userLink" app="core" group="global" location="front" params="$item->author()"}</strong>{{if $item->member_id != $item->author()->member_id}} <i class='fa fa-angle-right'></i> <strong>{member="link()" id="$item->member_id" raw="true"}</strong>{{endif}}
|
|
{{if $item->hidden()}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_warning" data-ipsTooltip title='{lang="hidden"}'><i class='fa fa-eye-slash'></i></span>
|
|
{{endif}}
|
|
</h2>
|
|
</div>
|
|
</div>
|
|
<div class='ipsStreamItem_snippet'>
|
|
<div class='ipsType_richText ipsType_normal ipsContained'>{$item->content|raw}</div>
|
|
</div>
|
|
<ul class='ipsList_inline ipsStreamItem_meta ipsFaded_withHover'>
|
|
<li class='ipsType_medium'>{{if $item->locked()}}<i class='fa fa-lock'></i>{{endif}} <a href='{$item->url()}' class='ipsType_blendLinks'><span class='ipsType_light'>{datetime="$item->date"}</span></a></li>
|
|
{{if $item instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
<li class='ipsType_light ipsType_medium'>{template="reputationMini" group="global" app="core" params="$item->reputation(), $item->canGiveReputation( 1 ), $item->canGiveReputation( -1 ), $item->url('showRep'), $item->url('rep')"}</li>
|
|
{{endif}}
|
|
{{if $item->canDelete() || $item->canLock() || $item->canUnlock() || $item->canHide() || $item->canUnhide()}}
|
|
<li>
|
|
<a href='#elStatus_{$item->id}_menu' data-ipsMenu data-ipsMenu-activeClass='ipsFaded_cancel' id='elStatus_{$item->id}' class='ipsFaded ipsFaded_more'>{lang="options"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_narrow ipsHide' id='elStatus_{$item->id}_menu'>
|
|
{{if !$item->locked() and $item->canLock()}}
|
|
<li class='ipsMenu_item'><a href="{$item->url('moderate')->setQueryString( 'action', 'lock' )->csrf()}">{lang="lock"}</a></li>
|
|
{{elseif $item->locked() and $item->canUnlock()}}
|
|
<li class='ipsMenu_item'><a href="{$item->url('moderate')->setQueryString( 'action', 'unlock' )->csrf()}">{lang="unlock"}</a></li>
|
|
{{endif}}
|
|
{{if !$item->hidden() and $item->canHide()}}
|
|
<li class='ipsMenu_item'><a href='{$item->url('moderate')->setQueryString( 'action', 'hide' )->csrf()}'>{lang="hide"}</a></li>
|
|
{{elseif $item->hidden() and $item->canUnhide()}}
|
|
<li class='ipsMenu_item'><a href='{$item->url('moderate')->setQueryString( 'action', 'unhide' )->csrf()}'>{lang="unhide"}</a></li>
|
|
{{endif}}
|
|
{{if $item->canDelete()}}
|
|
<li class='ipsMenu_item'><a data-confirm href="{$item->url('moderate')->setQueryString( 'action', 'delete' )->csrf()}">{lang="delete"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
{{if !\IPS\Member::loggedIn()->group['gbw_no_report'] and !$item->hidden()}}
|
|
<li><a href='{$item->url('report')}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="report"}" data-action='reportStatus' title='{lang="report_content"}' class='ipsFaded ipsFaded_more'>{lang="status_report"}</a></li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
{{if !$item->hidden() && ( count( $item->comments() ) || \IPS\core\Statuses\Status::canCreate( \IPS\Member::loggedIn() ) ) }}
|
|
<div class='ipsComment_feed ipsComment_subComments ipsType_medium'>
|
|
<ol class="ipsList_reset" data-role='statusComments' data-currentPage='{expression="\IPS\Request::i()->page ? intval( \IPS\Request::i()->page ) : 1"}'>
|
|
{template="statusReplyContainer" group="statuses" params="$item, $reply"}
|
|
{{if ( $item->mapped('num_comments') - 1 ) > 0}}
|
|
<li class='ipsComment ipsAreaBackground_light ipsPad_half ipsType_light'>
|
|
<p class='ipsType_reset ipsType_medium ipsComment_content'><a href='{$item->url()}'>{lang="status_see_x_other_replies" pluralize="( $item->mapped('num_comments') - 1 )"}</a></p>
|
|
</li>
|
|
{{endif}}
|
|
</ol>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
|
|
{{endforeach}}]]></template>
|
|
<template template_group="statuses" template_name="statusRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[<div data-role='commentFeed' class='{{if \IPS\Request::i()->do == 'content'}}cStatusUpdates ipsPad{{endif}}'>
|
|
<ol class='ipsType_normal ipsList_reset'>
|
|
{{foreach $rows as $status}}
|
|
{template="statusContainer" app="core" group="statuses" params="$status"}
|
|
{{endforeach}}
|
|
</ol>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="extraItem" template_data="$time, $image, $html, $view = 'expanded'" template_location="front" template_app="core"><![CDATA[<li class='ipsStreamItem ipsStreamItem_{$view} ipsStreamItem_actionBlock ipsAreaBackground_reset ipsPad' data-role="activityItem" data-timestamp='{$time->getTimestamp()}'>
|
|
<div class='ipsStreamItem_container'>
|
|
<div class='ipsStreamItem_action ipsType_blendLinks ipsType_light'>
|
|
{{if isset( $image )}}
|
|
{$image|raw}
|
|
{{endif}}
|
|
{$html|raw} <span class='ipsType_light'>{datetime="$time"}</span>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
]]></template>
|
|
<template template_group="streams" template_name="filterCreateForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad' data-controller='core.front.streams.form' data-formType='createStream'>
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class='ipsAreaBackground_reset ipsPad ipsSpacer_bottom' id='elStreamFilterForm'>
|
|
<h2 class='ipsType_sectionHead'>{lang="create_new_stream"}</h2>
|
|
<ul class='ipsList_inline ipsPos_right ipsResponsive_noFloat'>
|
|
<li>
|
|
<a href='#elStreamSortEdit_menu' class='ipsButton ipsButton_light ipsButton_verySmall' id='elStreamSortEdit' data-ipsMenu data-ipsMenu-selectable='radio' data-ipsMenu-appendTo='#elStreamFilterForm' data-ipsMenu-closeOnClick='false'>{lang="stream_sorting"} <i class='fa fa-caret-down'></i></a>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' id='elStreamSortEdit_menu'>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'newest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="newest" {{if (string) $elements['']['stream_sort']->value == 'newest'}}checked{{endif}} id="elRadio_stream_sort_newest">
|
|
{lang="stream_sort_newest"}
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'oldest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="oldest" {{if (string) $elements['']['stream_sort']->value == 'oldest'}}checked{{endif}} id="elRadio_stream_sort_oldest">
|
|
{lang="stream_sort_oldest"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<hr class='ipsHr'>
|
|
{{if isset( $elements['']['stream_title'] )}}
|
|
<div class="ipsSpacer_bottom ipsAreaBackground_light ipsPad">
|
|
<input type='text' name='stream_title' value='{$elements['']['stream_title']->value}' class='ipsField_primary ipsField_fullWidth' placeholder='{lang="stream_title"}' autofocus>
|
|
{{if $elements['']['stream_title']->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$elements['']['stream_title']->error"}</span>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
{template="filterForm" group="streams" params="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class, $attributes, $sidebar, $form"}
|
|
</div>
|
|
<ul class="ipsToolList ipsToolList_horizontal ipsClearfix">
|
|
<li class='ipsPos_right'><button type='submit' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth' data-action='createStream'>{lang="stream_button_save"}</button></li>
|
|
</ul>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="filterDuplicateForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad' data-controller='core.front.streams.form'>
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm id='elFilterForm'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class='ipsAreaBackground_reset ipsPad ipsSpacer_bottom' id='elStreamFilterForm'>
|
|
<h2 class='ipsType_sectionHead'>{lang="stream_edit_filters"}</h2>
|
|
<ul class='ipsList_inline ipsPos_right ipsResponsive_noFloat'>
|
|
<li>
|
|
<a href='#elStreamSortEdit_menu' class='ipsButton ipsButton_light ipsButton_verySmall' id='elStreamSortEdit' data-ipsMenu data-ipsMenu-selectable='radio' data-ipsMenu-appendTo='#elStreamFilterForm' data-ipsMenu-closeOnClick='false'>{lang="stream_sorting"} <i class='fa fa-caret-down'></i></a>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' id='elStreamSortEdit_menu'>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'newest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="newest" {{if (string) $elements['']['stream_sort']->value == 'newest'}}checked{{endif}} id="elRadio_stream_sort_newest">
|
|
{lang="stream_sort_newest"}
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'oldest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="oldest" {{if (string) $elements['']['stream_sort']->value == 'oldest'}}checked{{endif}} id="elRadio_stream_sort_oldest">
|
|
{lang="stream_sort_oldest"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<hr class='ipsHr'>
|
|
{template="filterForm" group="streams" params="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class, $attributes, $sidebar, $form"}
|
|
</div>
|
|
<div id='elSaveNewStream_menu' class='ipsMenu ipsMenu_wide ipsHide ipsPad'>
|
|
<ul class='ipsForm ipsForm_horizontal'>
|
|
<li class='ipsFieldRow'>
|
|
<input type='text' name='stream_title' value='' placeholder='{lang="stream_title"}' class='ipsField_fullWidth ipsField_primary'>
|
|
</li>
|
|
<li class='ipsFieldRow'>
|
|
<button type='submit' data-action='newStream' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth'>{lang="stream_new_stream"}</button>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<ul class="ipsToolList ipsToolList_horizontal ipsClearfix">
|
|
{{if isset( $hiddenValues['__custom_stream'] )}}
|
|
<li class='ipsPos_right'><button type='submit' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth' data-action='updateSaveStream'>{lang="stream_button_save_update"}</button></li>
|
|
<li class='ipsPos_right'><button type='submit' name='updateOnly' value='1' class='ipsButton ipsButton_veryLight ipsButton_medium ipsButton_fullWidth' data-action='updateStream'>{lang="stream_button_update"}</button></li>
|
|
{{else}}
|
|
<li class='ipsPos_right'><button type='submit' name='updateOnly' value='1' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth' data-action='updateStream'>{lang="stream_button_update"}</button></li>
|
|
{{endif}}
|
|
<li class='ipsPos_right ipsType_center'><button type='button' class='ipsButton ipsButton_link ipsButton_medium' data-action='cancelEditing'>{lang="stream_button_cancel"}</button></li>
|
|
<li class='ipsResponsive_showPhone ipsResponsive_block'><hr class='ipsHr'></li>
|
|
<li class='ipsPos_left ipsJS_show'>
|
|
<button type='button' class='ipsButton ipsButton_veryLight ipsButton_medium ipsButton_fullWidth' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elFilterForm' data-action='saveNewStream' id='elSaveNewStream'>{lang="stream_button_save"}</button>
|
|
</li>
|
|
</ul>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="filterForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span4'>
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title'>{lang="stream_include_comments"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='radio' data-ipsSideMenu-responsive='false'>
|
|
{{foreach $elements['']['stream_include_comments']->options['options'] as $k => $v}}
|
|
<li>
|
|
{template="filterFormRadio" group="streams" app="core" params="$k, $v, 'stream_include_comments', $elements['']['stream_include_comments']->value, $elements['']['stream_include_comments']->required, $elements['']['stream_include_comments']->options['options'], $elements['']['stream_include_comments']->options['disabled']"}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<hr class='ipsHr ipsSpacer_both ipsSpacer_double ipsResponsive_hidePhone'>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title ipsSpacer_top'>{lang="stream_classes_type"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withChecks cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='check' data-ipsSideMenu-responsive='false' data-filterType='type'>
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if $elements['']['stream_classes_type']->value == 0}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='__all'>
|
|
<input type="hidden" name="stream_classes[__EMPTY]" value="__EMPTY">
|
|
{lang="stream_all_content"}
|
|
</a>
|
|
<input type='radio' class='ipsHide' name='stream_classes_type' value='0' {{if $elements['']['stream_classes_type']->value == 0}}checked{{endif}}>
|
|
<input type='radio' class='ipsHide' name='stream_classes_type' value='1' {{if $elements['']['stream_classes_type']->value == 1}}checked{{endif}}>
|
|
</li>
|
|
{{if isset( $elements['']['stream_classes'] )}}
|
|
{{foreach $elements['']['stream_classes']->options['options'] as $type => $lang}}
|
|
<li>
|
|
<a class='ipsSideMenu_item {{if isset( $elements['']['stream_containers_' . str_replace('_pl', '', $lang ) ] ) || isset( $elements['']['stream_classes_' . str_replace('_pl', '', $lang ) ] )}}cStream_withOptions{{endif}} {{if $elements['']['stream_classes_type']->value !== 0 && in_array( $type, $elements['']['stream_classes']->value ) !== FALSE}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{expression="str_replace( '_pl', '', $lang )"}'>
|
|
<input type='checkbox' name='stream_classes[{$type}]' value='1' {{if $elements['']['stream_classes_type']->value !== 0 && in_array( $type, $elements['']['stream_classes']->value ) !== FALSE}}checked{{endif}}>
|
|
{lang="$lang"}
|
|
</a>
|
|
{{if isset( $elements['']['stream_containers_' . str_replace('_pl', '', $lang ) ] ) || isset( $elements['']['stream_classes_' . str_replace('_pl', '', $lang ) ] )}}
|
|
<a href='#' class='ipsPos_right ipsType_blendLinks ipsType_noUnderline cStreamForm_menu' data-ipsTooltip title='{lang="stream_filter_options" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $lang )"}' id='elMenu_{expression="str_replace( '_pl', '', $lang )"}' data-ipsMenu data-ipsMenu-activeClass='cStreamForm_menuActive' data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elStreamFilterForm'>
|
|
<i class='fa fa-cog ipsType_large'></i>
|
|
<i class='fa fa-caret-down'></i>
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{foreach $elements['']['stream_classes']->options['options'] as $type => $lang}}
|
|
{template="filterFormContentType" group="streams" app="core" params="$elements[''], str_replace('_pl', '', $lang ), $type, ( $elements['']['stream_classes_type']->value !== 0 && $elements['']['stream_classes']->value == $type )"}
|
|
{{endforeach}}
|
|
</div>
|
|
<div class='ipsGrid_span8'>
|
|
{{if isset( $elements['']['stream_tags'] )}}
|
|
<input type="hidden" name="stream_tags_type" value="custom">
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title ipsSpacer_bottom ipsSpacer_half'>{lang="stream_tags"}</h3>
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
{$elements['']['stream_tags']->html()|raw}
|
|
<p class='ipsType_reset ipsType_small ipsType_light'>{lang="tags_desc"}</p>
|
|
</div>
|
|
<hr class='ipsHr ipsSpacer_bottom ipsSpacer_double ipsResponsive_hidePhone'>
|
|
<hr class='ipsHr ipsSpacer_bottom ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{endif}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
{{if isset( $elements['']['stream_read'] )}}
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title'>{lang="stream_read"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='radio' data-ipsSideMenu-responsive='false' data-filterType='read'>
|
|
{{foreach $elements['']['stream_read']->options['options'] as $k => $v}}
|
|
<li>
|
|
{template="filterFormRadio" group="streams" app="core" params="$k, $v, 'stream_read', $elements['']['stream_read']->value, $elements['']['stream_read']->required, $elements['']['stream_read']->options['options'], $elements['']['stream_read']->options['disabled']"}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
<hr class='ipsHr ipsSpacer_both ipsSpacer_double ipsResponsive_hidePhone'>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{if isset( $elements['']['stream_ownership'] )}}
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title'>{lang="stream_ownership"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' role="radiogroup" data-ipsSideMenu data-ipsSideMenu-type='radio' data-ipsSideMenu-responsive='false' data-filterType='ownership'>
|
|
{{foreach $elements['']['stream_ownership']->options['options'] as $k => $v}}
|
|
<li>
|
|
{template="filterFormRadio" group="streams" app="core" params="$k, $v, 'stream_ownership', $elements['']['stream_ownership']->value, $elements['']['stream_ownership']->required, $elements['']['stream_ownership']->options['options'], $elements['']['stream_ownership']->options['disabled']"}
|
|
</li>
|
|
{{endforeach}}
|
|
{{if isset( $elements['']['stream_custom_members'] )}}
|
|
<li class='ipsSpacer_top ipsSpacer_half cStreamForm_authors {{if $elements['']['stream_ownership']->value !== 'custom'}}ipsHide{{endif}}' data-role="ownershipMemberForm">
|
|
<h4 class='ipsType_minorHeading'>{lang="stream_custom_members"}</h4>
|
|
{$elements['']['stream_custom_members']->html()|raw}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
{{if isset( $elements['']['stream_follow'] )}}
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title'>{lang="stream_follow"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='radio' data-ipsSideMenu-responsive='false' data-filterType='follow'>
|
|
{{foreach $elements['']['stream_follow']->options['options'] as $k => $v}}
|
|
<li>
|
|
{template="filterFormRadio" group="streams" app="core" params="$k, $v, 'stream_follow', $elements['']['stream_follow']->value, $elements['']['stream_follow']->required, $elements['']['stream_follow']->options['options'], $elements['']['stream_follow']->options['disabled'], ( $k == 'followed' )"}
|
|
{{if $k == 'followed'}}
|
|
<a class='ipsPos_right ipsType_blendLinks ipsType_noUnderline cStreamForm_menu' data-ipsTooltip title='' id='elMenu_followOptions' data-ipsMenu data-ipsMenu-activeClass='cStreamForm_menuActive' data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elStreamFilterForm'>
|
|
<i class='fa fa-cog ipsType_large'></i>
|
|
<i class='fa fa-caret-down'></i>
|
|
</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
|
|
<div id='elMenu_followOptions_menu' class='ipsMenu ipsMenu_wide ipsPad ipsHide'>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withChecks cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='check' data-ipsSideMenu-responsive='false' data-filterType='type'>
|
|
{{foreach $elements['']['stream_followed_types']->options['options'] as $type => $lang}}
|
|
<li>
|
|
<a href='#' class='ipsSideMenu_item {{if $elements['']['stream_followed_types']->value !== 0 && in_array( $type, $elements['']['stream_followed_types']->value ) !== FALSE}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$type}'>
|
|
<input type='checkbox' name='stream_followed_types[{$type}]' value='1' {{if $elements['']['stream_followed_types']->value !== 0 && in_array( $type, $elements['']['stream_followed_types']->value ) !== FALSE}}checked{{endif}}>
|
|
{lang="$lang"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<hr class='ipsHr ipsSpacer_both ipsSpacer_double ipsResponsive_hidePhone'>
|
|
<hr class='ipsHr ipsSpacer_both ipsResponsive_showPhone ipsResponsive_block'>
|
|
{{if isset( $elements['']['stream_date_type'] )}}
|
|
<h3 class='ipsType_reset ipsType_large cStreamForm_title'>{lang="stream_date_type"}</h3>
|
|
<ul class='ipsSideMenu_list ipsSideMenu_withRadios cStreamForm_list ipsType_normal ipsSpacer_top ipsSpacer_half' data-ipsSideMenu data-ipsSideMenu-type='radio' data-ipsSideMenu-responsive='false' data-filterType='date'>
|
|
{{foreach $elements['']['stream_date_type']->options['options'] as $k => $v}}
|
|
<li>
|
|
{template="filterFormRadio" group="streams" app="core" params="$k, $v, 'stream_date_type', $elements['']['stream_date_type']->value, $elements['']['stream_date_type']->required, $elements['']['stream_date_type']->options['options'], $elements['']['stream_date_type']->options['disabled']"}
|
|
</li>
|
|
{{endforeach}}
|
|
{{if isset( $elements['']['stream_date_relative_days'] )}}
|
|
<li class='ipsSpacer_top ipsSpacer_half cStreamForm_dates {{if $elements['']['stream_date_type']->value !== 'relative'}}ipsHide{{endif}}' data-role="dateRelativeForm">
|
|
<h4 class='ipsType_minorHeading'>{lang="stream_date_relative_days_prefix"}</h4>
|
|
{$elements['']['stream_date_relative_days']->html()|raw} {lang="days"}
|
|
{{if $elements['']['stream_date_relative_days']->error}}
|
|
<br>
|
|
<span class="ipsType_warning ipsType_small">{lang="$elements['']['stream_date_relative_days']->error"}</span>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $elements['']['stream_date_range'] )}}
|
|
<li class='ipsSpacer_top ipsSpacer_half cStreamForm_dates {{if $elements['']['stream_date_type']->value !== 'custom'}}ipsHide{{endif}}' data-role="dateForm">
|
|
<div class="ipsGrid ipsGrid_collapsePhone">
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="start"}</h4>
|
|
{$elements['']['stream_date_range']->start->html()|raw}
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
<h4 class='ipsType_minorHeading'>{lang="end"}</h4>
|
|
{$elements['']['stream_date_range']->end->html()|raw}
|
|
</div>
|
|
</div>
|
|
{{if $elements['']['stream_date_range']->error}}
|
|
<span class="ipsType_warning ipsType_small">{lang="$elements['']['stream_date_range']->error"}</span>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="filterFormContentType" template_data="$elements, $key, $type, $checked=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
{{if isset( $elements['stream_containers_' . $key ] )}}
|
|
<div class='ipsMenu ipsMenu_wide ipsPad ipsHide' id='elMenu_{$key}_menu'>
|
|
<div data-contentType='{$key}'>
|
|
<h4 class='ipsType_reset ipsType_sectionHead ipsSpacer_bottom ipsClearfix'>
|
|
<span class='ipsBadge ipsBadge_icon ipsBadge_new'><i class='fa fa-{expression="$type::$icon"}'></i></span>
|
|
{lang="{$key}_pl"}
|
|
</h4>
|
|
|
|
{{if isset( $elements['stream_containers_' . $key ] )}}
|
|
<div class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<label class='ipsFieldRow_title'>{lang="stream_narrow_by_container"}</label>
|
|
<div class='ipsFieldRow_content ipsSpacer_top ipsSpacer_half'>
|
|
{$elements['stream_containers_' . $key ]->html()|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="streams" template_name="filterFormRadio" template_data="$k, $v, $name, $value, $required, $options, $disabled=FALSE, $hasOptions=FALSE" template_location="front" template_app="core"><![CDATA[
|
|
<a href='#' class='ipsSideMenu_item {{if $hasOptions}}cStream_withOptions{{endif}} {{if (string) $value == (string) $k or ( isset( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}ipsSideMenu_itemActive{{endif}}' data-ipsMenuValue='{$k}'>
|
|
<input type="radio" name="{$name}" value="{$k}" {{if (string) $value == (string) $k or ( isset( $userSuppliedInput ) and !in_array( $value, array_keys( $options ) ) and $k == $userSuppliedInput )}}checked{{endif}} {{if $disabled === TRUE or ( is_array( $disabled ) and in_array( $k, $disabled ) )}}disabled{{endif}} id="elRadio_{$name}_{$k}">
|
|
<label for='elRadio_{$name}_{$k}' id='elField_{$name}_label'>{lang="$v"}</label>
|
|
</a>]]></template>
|
|
<template template_group="streams" template_name="filterUpdateForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsAreaBackground ipsPad' data-controller='core.front.streams.form'>
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm id='elFilterForm'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class='ipsAreaBackground_reset ipsPad ipsSpacer_bottom' id='elStreamFilterForm'>
|
|
<h2 class='ipsType_sectionHead'>
|
|
{lang="stream_form_title"}
|
|
<a href='{$action->setQueryString( 'do', 'delete' )}' class='ipsType_negative ipsType_normal ipsResponsive_noFloat' data-action='removeStream'><i class='fa fa-trash'></i> {lang="stream_remove"}</a>
|
|
</h2>
|
|
<ul class='ipsList_inline ipsPos_right ipsResponsive_noFloat'>
|
|
{{if isset( $hiddenValues['__custom_stream'] )}}
|
|
<li>
|
|
<a href='#elStreamSortEdit_menu' class='ipsButton ipsButton_light ipsButton_verySmall' id='elStreamSortEdit' data-ipsMenu data-ipsMenu-selectable='radio' data-ipsMenu-appendTo='#elStreamFilterForm' data-ipsMenu-closeOnClick='false'>{lang="stream_sorting"} <i class='fa fa-caret-down'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
<li>
|
|
<a href='#elStreamSortEdit_menu' class='ipsButton ipsButton_light ipsButton_verySmall' id='elStreamTitleEdit' data-ipsMenu data-ipsMenu-appendTo='#elStreamFilterForm' data-ipsMenu-closeOnClick='false'>{lang="stream_rename"} <i class='fa fa-caret-down'></i></a>
|
|
</li>
|
|
</ul>
|
|
|
|
{{if isset( $hiddenValues['__custom_stream'] )}}
|
|
<ul class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' id='elStreamSortEdit_menu'>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'newest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="newest" {{if (string) $elements['']['stream_sort']->value == 'newest'}}checked{{endif}} id="elRadio_stream_sort_newest">
|
|
{lang="stream_sort_newest"}
|
|
</a>
|
|
</li>
|
|
<li class='ipsMenu_item {{if $elements['']['stream_sort']->value == 'oldest'}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='#'>
|
|
<input type="radio" name="stream_sort" value="oldest" {{if (string) $elements['']['stream_sort']->value == 'oldest'}}checked{{endif}} id="elRadio_stream_sort_oldest">
|
|
{lang="stream_sort_oldest"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
|
|
<div class='ipsMenu ipsMenu_wide ipsPad ipsHide' id='elStreamTitleEdit_menu'>
|
|
<input type='text' class='ipsField_fullWidth' name='stream_title' value='{$elements['']['stream_title']->value}' placeholder='{lang="stream_title"}'>
|
|
</div>
|
|
<hr class='ipsHr'>
|
|
{template="filterForm" group="streams" params="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class, $attributes, $sidebar, $form"}
|
|
</div>
|
|
<div id='elSaveNewStream_menu' class='ipsMenu ipsMenu_wide ipsHide ipsPad'>
|
|
<ul class='ipsForm ipsForm_horizontal'>
|
|
<li class='ipsFieldRow'>
|
|
<input type='text' name='stream_new_title' value='' placeholder='{lang="stream_title"}' class='ipsField_fullWidth ipsField_primary'>
|
|
</li>
|
|
<li class='ipsFieldRow'>
|
|
<button type='submit' data-action='newStream' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth'>{lang="stream_new_stream"}</button>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<ul class="ipsToolList ipsToolList_horizontal ipsClearfix">
|
|
{{if isset( $hiddenValues['__custom_stream'] )}}
|
|
<li class='ipsPos_right'><button type='submit' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth' data-action='updateSaveStream'>{lang="stream_button_save_update"}</button></li>
|
|
<li class='ipsPos_right'><button type='submit' name='updateOnly' value='1' class='ipsButton ipsButton_veryLight ipsButton_medium ipsButton_fullWidth' data-action='updateStream'>{lang="stream_button_update"}</button></li>
|
|
{{else}}
|
|
<li class='ipsPos_right'><button type='submit' name='updateOnly' value='1' class='ipsButton ipsButton_primary ipsButton_medium ipsButton_fullWidth' data-action='updateStream'>{lang="stream_button_update"}</button></li>
|
|
{{endif}}
|
|
<li class='ipsPos_right ipsType_center'><button type='button' class='ipsButton ipsButton_link ipsButton_medium' data-action='cancelEditing'>{lang="stream_button_cancel"}</button></li>
|
|
<li class='ipsResponsive_showPhone ipsResponsive_block'><hr class='ipsHr'></li>
|
|
<li class='ipsPos_left ipsJS_show'>
|
|
<button type='button' class='ipsButton ipsButton_veryLight ipsButton_medium ipsButton_fullWidth' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elFilterForm' data-action='saveNewStream' id='elSaveNewStream'>{lang="stream_button_save"}</button>
|
|
</li>
|
|
</ul>
|
|
</form>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="stream" template_data="$stream, $results, $autoUpdate, $showTimeline=FALSE, $baseUrl, $sort='date', $view='expanded'" template_location="front" template_app="core"><![CDATA[<div data-controller='core.front.streams.activity' {{if !$autoUpdate}}data-view='{$view}'{{endif}} {{if $autoUpdate && settings.auto_polling_enabled}}data-autoPoll{{endif}} {{if isset( \IPS\Request::i()->id )}}data-streamID='{expression="\IPS\Request::i()->id"}'{{endif}}>
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
<li>
|
|
<a href="{$stream->url()->setQueryString( 'view', 'condensed')}" data-action='switchView' data-view='condensed' data-ipsTooltip title="{lang="stream_condensed"}" class="{{if $view == 'condensed'}}ipsButtonRow_active{{endif}}"><i class="fa fa-list"></i></a>
|
|
</li>
|
|
<li>
|
|
<a href="{$stream->url()->setQueryString( 'view', 'expanded')}" data-action='switchView' data-view='expanded' data-ipsTooltip title="{lang="stream_expanded"}" class="{{if $view == 'expanded'}}ipsButtonRow_active{{endif}}"><i class="fa fa-square"></i></a>
|
|
</li>
|
|
</ul>
|
|
{{if $autoUpdate && settings.auto_polling_enabled}}<p class='ipsType_light ipsPos_right ipsType_normal ipsType_reset ipsJS_show ipsResponsive_hidePhone' data-role='updateMessage'><i class='fa fa-refresh'></i> {lang="stream_auto_updates"} </p>{{endif}}
|
|
<ol class='ipsStream {{if $showTimeline && count( $results )}}ipsStream_withTimeline{{endif}} ipsList_reset' data-role='streamContent'>
|
|
{template="streamItems" group="streams" app="core" params="$results, TRUE, $sort, $view"}
|
|
<li class='ipsType_center ipsJS_show {{if !count( $results )}}ipsHide{{endif}}' data-role="loadMoreContainer">
|
|
<a href='#' class='ipsButton ipsButton_light ipsButton_small' data-action='loadMore'>{lang="load_more_activity"}</a>
|
|
</li>
|
|
</ol>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="streams" template_name="streamItems" template_data="$results, $showTimeSeparators=FALSE, $sort='date', $view='expanded'" template_location="front" template_app="core"><![CDATA[{{$currentSeparator = NULL;}}
|
|
{{if count( $results )}}
|
|
{{foreach $results as $result}}
|
|
{{if $showTimeSeparators}}
|
|
{{if $currentSeparator != 'earlier'}}
|
|
{{$separator = $result->streamSeparator( $sort == 'date' );}}
|
|
{{if $currentSeparator != $separator}}
|
|
<li class='ipsStreamItem_time' data-timeType='{$separator}'>{lang="$separator"}</li>
|
|
{{$currentSeparator = $separator;}}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
{$result->html( $view, $sort != 'date' )|raw}
|
|
{{endforeach}}
|
|
{{else}}
|
|
<li class='ipsType_center ipsPad'>
|
|
<p class='ipsType_reset ipsType_light ipsType_normal'>
|
|
{lang="stream_no_results"}
|
|
</p>
|
|
</li>
|
|
{{endif}}]]></template>
|
|
<template template_group="streams" template_name="streamWrapper" template_data="$stream, $html, $hasForm, $rssLink=NULL, $canCopy" template_location="front" template_app="core"><![CDATA[
|
|
<section data-controller='core.front.streams.main' data-streamID='{{if isset( \IPS\Request::i()->id )}}{expression="\IPS\Request::i()->id"}{{else}}all{{endif}}'>
|
|
<div class="ipsPageHeader ipsClearfix ipsSpacer_bottom">
|
|
<h1 class='ipsType_pageTitle' data-role='streamTitle'>
|
|
{$stream->_title}
|
|
{{if \IPS\Member::loggedIn()->member_id}}
|
|
<a data-action="toggleStreamDefault" data-change="1" href="{$stream->url()->setQueryString('default', 1)}" data-ipsTooltip title='{lang="stream_this_isnt_default"}' class='ipsBadge ipsBadge_icon ipsBadge_small ipsType_middle ipsBadge_neutral ipsFaded ipsFaded_more {{if \IPS\Member::loggedIn()->defaultStream === $stream->_id}}ipsHide{{endif}}'><i class='fa fa-check'></i></a>
|
|
<a data-action="toggleStreamDefault" data-change="0" href="{$stream->url()->setQueryString('default', 0)}" data-ipsTooltip title='{lang="stream_this_is_default"}' class='ipsBadge ipsBadge_icon ipsBadge_small ipsType_middle ipsBadge_positive {{if \IPS\Member::loggedIn()->defaultStream !== $stream->_id}}ipsHide{{endif}}'><i class='fa fa-check'></i></a>
|
|
{{endif}}
|
|
</h1>
|
|
|
|
{{if $rssLink || ( $stream->member && $stream->member == \IPS\Member::loggedIn()->member_id )}}
|
|
<ul class="ipsList_inline ipsPos_right ipsType_blendLinks ipsResponsive_hidePhone">
|
|
{{if $rssLink}}
|
|
<li><a href="{$rssLink}"><i class="fa fa-rss"></i> {lang="rss"}</a></li>
|
|
{{endif}}
|
|
{{if $stream->member && $stream->member == \IPS\Member::loggedIn()->member_id}}
|
|
<li>
|
|
<a href='{$stream->url()}' title='{lang="stream_share_desc"}' data-ipsMenu data-ipsTooltip id='elStreamShare'><i class='fa fa-share-alt'></i> {lang="stream_share"}</a>
|
|
<div class='ipsMenu ipsMenu_wide ipsPad ipsHide' id='elStreamShare_menu'>
|
|
<h2 class='ipsType_sectionHead'>{lang="share_stream_title"}</h2>
|
|
<hr class='ipsHr'>
|
|
<p class='ipsType_medium'>
|
|
{lang="share_stream_info"}
|
|
</p>
|
|
<input type='text' value='{$stream->url()}' class='ipsField_fullWidth'>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
|
|
{{if $hasForm}}
|
|
<p class='ipsType_reset ipsType_normal ipsSpacer_bottom ipsCursor_pointer' data-role='streamOverview'>
|
|
<span data-role='streamBlurb'>{$stream->blurb()}</span> <a href='#' data-streamID="{$stream->_id}" data-action='editStream'>{lang="stream_edit_feed"} <i class='fa fa-caret-down'></i></a>
|
|
</p>
|
|
|
|
<div data-role='filterForm' class='ipsJS_hide ipsSpacer_top'>
|
|
<div data-role="filterFormLoading" class="cStreamForm_loading ipsAreaBackground ipsPad ipsHide">
|
|
<div class="ipsAreaBackground_reset">
|
|
<div class="ipsLoading"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{elseif $canCopy}}
|
|
<p class='ipsType_reset ipsType_normal ipsSpacer_bottom ipsCursor_pointer' data-role='streamOverview'>
|
|
<span data-role='streamBlurb'>{$stream->blurb()}</span>
|
|
</p>
|
|
{{$owner = \IPS\Member::load( $stream->member );}}
|
|
|
|
<div class='ipsAreaBackground ipsPad ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix'>
|
|
{template="userPhoto" group="global" app="core" params="$owner, 'mini'"}
|
|
<div>
|
|
<a href='{$stream->url()->setQueryString('do', 'copy')}' class='ipsButton ipsButton_primary ipsButton_large ipsPos_right ipsResponsive_noFloat'><i class='fa fa-plus'></i> {lang="stream_copy_feed"}</i></a>
|
|
<p class='ipsType_reset ipsType_normal'>
|
|
<strong>{lang="stream_copy_title" sprintf="$owner->name"}</strong><br>
|
|
{lang="stream_copy_desc"}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
<div data-role='streamBody'>
|
|
{$html|raw}
|
|
</div>
|
|
|
|
{{if $rssLink || ( $stream->member && $stream->member == \IPS\Member::loggedIn()->member_id )}}
|
|
<ul class="ipsList_inline ipsType_blendLinks ipsSpacer_both ipsType_center ipsResponsive_showPhone ipsResponsive_block">
|
|
{{if $rssLink}}
|
|
<li><a href="{$rssLink}"><i class="fa fa-rss"></i> {lang="rss"}</a></li>
|
|
{{endif}}
|
|
{{if $stream->member && $stream->member == \IPS\Member::loggedIn()->member_id}}
|
|
<li>
|
|
<a href='{$stream->url()}' title='{lang="stream_share_desc"}' data-ipsMenu data-ipsTooltip id='elStreamShare'><i class='fa fa-share-alt'></i> {lang="stream_share"}</a>
|
|
<div class='ipsMenu ipsMenu_wide ipsPad ipsHide' id='elStreamShare_menu'>
|
|
<h2 class='ipsType_sectionHead'>{lang="share_stream_title"}</h2>
|
|
<hr class='ipsHr'>
|
|
<p class='ipsType_medium'>
|
|
{lang="share_stream_info"}
|
|
</p>
|
|
<input type='text' value='{$stream->url()}' class='ipsField_fullWidth'>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
</section>]]></template>
|
|
<template template_group="support" template_name="advice" template_data="$searchResults, $guides" template_location="admin" template_app="core"><![CDATA[{{if count( $searchResults ) and count( $guides )}}
|
|
<div class="ipsPad ipsAreaBackground_light">
|
|
<div class="ipsColumns ipsColumns_collapsePhone">
|
|
<div class="ipsColumn ipsColumn_fluid">
|
|
<div class="ipsAreaBackground_reset">
|
|
<h2 class="ipsType_sectionTitle">{lang="support_search"}</h2>
|
|
{{endif}}
|
|
{{if count( $searchResults )}}
|
|
<div class="ipsPad">
|
|
<p class="ipsType_normal">{lang="support_advice_results"}</p>
|
|
<ul class='ipsDataList'>
|
|
{{foreach $searchResults as $result}}
|
|
{$result|raw}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
{{if count( $searchResults ) and count( $guides )}}
|
|
</div>
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fluid">
|
|
<div class="ipsAreaBackground_reset">
|
|
<h2 class="ipsType_sectionTitle">{lang="support_guides"}</h2>
|
|
{{endif}}
|
|
{{if count( $guides ) }}
|
|
<div class="ipsPad">
|
|
<p class="ipsType_normal">{lang="support_guides_blurb"}</p>
|
|
<ul class='ipsDataList'>
|
|
{{foreach $guides as $result}}
|
|
<li class="ipsPad_half ipsClearfix"><a href="{$result['link']}" target="_blank">{$result['title']}</a></span></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
{{if count( $searchResults ) and count( $guides )}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=support&controller=support&next=1"}" data-action="wizardLink" class="ipsButton ipsButton_primary">{lang="still_need_help"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="connectionChecker" template_data="$id" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
{lang="connection_checker_error"}
|
|
</div>
|
|
<div class="ipsAreaBackground ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=="}" class="ipsButton ipsButton_alternate" data-action="redirectContinue">{lang="continue_anyway"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="databaseChecker" template_data="$id, $nextId, $queries, $errors=NULL" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
{{if $errors === NULL}}
|
|
{lang="database_changes_to_make"}
|
|
{{else}}
|
|
<div class="ipsMessage ipsMessage_warning">{lang="database_changes_to_make_errors"}</div>
|
|
{{endif}}
|
|
{{foreach $queries as $i => $query}}
|
|
<pre class="prettyprint lang-sql cSupportQuery">{$query}</pre>
|
|
{{if $errors !== NULL and isset( $errors[ $i ] )}}
|
|
<span class='ipsType_warning'>{$errors[ $i ]}</span>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{{if $errors === NULL}}
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA==&run=1"}" data-action="redirectContinue" class="ipsButton ipsButton_primary">{lang="database_changes_run"}</a>
|
|
{{endif}}
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA==&recheck=1"}" data-action="redirectContinue" class="ipsButton ipsButton_alternate">{lang="database_changes_check_again"}</a>
|
|
<a href="{url="app=core&module=support&controller=support&next={$nextId}&mr=MA=="}" data-action="redirectContinue" class="ipsButton ipsButton_alternate">{lang="continue_anyway"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="disabledAdvertisements" template_data="$id, $extra=''" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<p class="ipsType_normal">{lang="ads_disabled"}</p>
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<a href="{url="&app=core&module=promotion&controller=advertisements"}" target="_blank" class="ipsButton ipsButton_alternate">{lang="ads_disabled_go_ads"}</a>
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=={$extra}"}" data-action="redirectContinue" class="ipsButton ipsButton_primary">{lang="problem_not_resolved"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="healthcheck" template_data="$requirements" template_location="admin" template_app="core"><![CDATA[{{foreach $requirements['requirements'] as $k => $_requirements}}
|
|
<div class="ipsSpacer_bottom">
|
|
<h2 class="ipsType_sectionHead">{lang="requirements_header" sprintf="$k"}</h2>
|
|
<ul class="ipsDataList ipsSpacer_top">
|
|
{{foreach $_requirements as $item}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic {{if $item['success']}}ipsType_success{{else}}ipsType_warning{{endif}}">
|
|
<i class="fa {{if $item['success']}}fa-check{{else}}fa-times{{endif}}"></i>
|
|
{$item['message']}
|
|
</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endforeach}}
|
|
{{if isset( $requirements['advice'] ) and count( $requirements['advice'] )}}
|
|
<div class="ipsSpacer_bottom">
|
|
<h2 class="ipsType_sectionHead">{lang="advice"}</h2>
|
|
<ul class="ipsDataList ipsSpacer_top">
|
|
{{foreach $requirements['advice'] as $item}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsType_light">
|
|
<i class="fa fa-info-circle"></i>
|
|
{$item}
|
|
</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="support" template_name="knowledgebase" template_data="$id, $rows" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<p>{lang="knowledgebase_blurb"}</p>
|
|
<ul class='ipsDataList'>
|
|
{{foreach $rows as $v}}
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic">
|
|
<a href="{$v['link']}" target="_blank">{$v['title']}</a>
|
|
</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class="ipsAreaBackground ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=="}" class="ipsButton ipsButton_alternate" data-action="redirectContinue">{lang="still_need_help"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="logToSend" template_data="$log" template_location="admin" template_app="core"><![CDATA[<pre class="ipsPad">{$log}</pre>]]></template>
|
|
<template template_group="support" template_name="md5sum" template_data="$files, $id" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
{lang="some_of_your_files_are_modified"}
|
|
<ul>
|
|
{{foreach $files as $file}}
|
|
<li>{$file}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class="ipsAreaBackground ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=="}" class="ipsButton ipsButton_primary" data-action="redirectContinue">{lang="problem_not_resolved"}</a>
|
|
<a href="{url="app=core&module=support&controller=support&mr=MA=="}&next={expression="$id + 1"}" class="ipsButton ipsButton_alternate" data-action="redirectContinue">{lang="continue_anyway"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="queryFormTemplate" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class="ipsGrid">
|
|
<div class="ipsGrid_span10">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{$input->html()|raw}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</div>
|
|
<div class="ipsGrid_span2">
|
|
<button type="submit" class="ipsButton ipsButton_primary ipsButton_veryLarge ipsButton_fullWidth">{lang="run_query"}</button>
|
|
</div>
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="support" template_name="support" template_data="$wizard" template_location="admin" template_app="core"><![CDATA[<div class="ipsColumns ipsColumns_collapsePhone">
|
|
<div class="ipsColumn ipsColumn_fluid">
|
|
{$wizard|raw}
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_veryWide">
|
|
<h2 class="ipsType_sectionTitle">{lang="system_information"}</h2>
|
|
<div class="ipsOverflow">
|
|
<ul class='ipsDataList'>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size4">
|
|
<strong class="title">{lang="php_version"}</strong>
|
|
</span>
|
|
<span class="ipsDataItem_generic">
|
|
{expression="PHP_VERSION"}<br>
|
|
<a href="{url="app=core&module=support&controller=support&do=phpinfo"}" class="ipsType_small ipsType_light">phpinfo</a>
|
|
</span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size4">
|
|
<strong class="title">{lang="mysql_version"}</strong>
|
|
</span>
|
|
<span class="ipsDataItem_generic">
|
|
{expression="\IPS\Db::i()->server_info"}
|
|
{{if \IPS\Member::loggedIn()->hasAcpRestriction( 'core', 'support', 'sql_toolbox' )}}
|
|
<br>
|
|
<a href="{url="app=core&module=support&controller=sql"}" class="ipsType_small ipsType_light">{lang="sql_toolbox"}</a>
|
|
{{endif}}
|
|
</span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size4">
|
|
<strong class="title">{lang="server_path"}</strong>
|
|
</span>
|
|
<span class="ipsDataItem_generic ipsType_small">
|
|
{expression="\IPS\ROOT_PATH"}
|
|
</span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic ipsDataItem_size4">
|
|
<strong class="title">{lang="server_ip"}</strong>
|
|
</span>
|
|
<span class="ipsDataItem_generic">
|
|
{$_SERVER['SERVER_ADDR']}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<br><br>
|
|
<h2 class="ipsType_sectionTitle">{lang="diagnostic_logs"}</h2>
|
|
<div class="ipsOverflow">
|
|
<ul class='ipsDataList'>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic"><a href="{url="app=core&module=support&controller=errorLogs"}">{lang="error_logs"}</a></span>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<span class="ipsDataItem_generic"><a href="{url="app=core&module=support&controller=systemLogs"}">{lang="system_logs"}</a></span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="table" template_data="$result, $pagination" template_location="admin" template_app="core"><![CDATA[<br><br>
|
|
<div class="ipsOverflow">
|
|
{{if $pagination}}
|
|
{$pagination|raw}
|
|
<br><br>
|
|
{{endif}}
|
|
<table class="ipsTable ipsTable_zebra" >
|
|
{{$headers = FALSE;}}
|
|
{{while ($row = $result->fetch_assoc() ):}}
|
|
{{if !$headers}}
|
|
<tr>
|
|
{{foreach $row as $k => $v}}
|
|
<th>{$k}</th>
|
|
{{endforeach}}
|
|
</tr>
|
|
{{$headers = TRUE; endif;}}
|
|
<tr>
|
|
{{foreach $row as $v}}
|
|
<td>
|
|
<div data-ipsTruncate data-ipsTruncate-size="2 lines">
|
|
{$v}
|
|
</div>
|
|
</td>
|
|
{{endforeach}}
|
|
</tr>
|
|
{{endwhile;}}
|
|
</table>
|
|
{{if $pagination}}
|
|
<br><br>
|
|
{$pagination|raw}
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="thirdParty" template_data="$id, $disabledApps, $disabledPlugins, $restoredDefaultTheme, $extra=''" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<p class="ipsType_normal">{lang="third_party_stuff_disabled"}</p>
|
|
{{if $restoredDefaultTheme}}
|
|
<p class="ipsType_normal">{lang="try_default_theme"}</p>
|
|
{{endif}}
|
|
{{if count( $disabledApps )}}
|
|
<p class="ipsType_normal">{lang="third_party_stuff_disabled_apps"}</p>
|
|
<ul>
|
|
{{foreach $disabledApps as $app}}
|
|
<li>{$app}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{if count( $disabledPlugins )}}
|
|
<p class="ipsType_normal">{lang="third_party_stuff_disabled_plugins"}</p>
|
|
<ul>
|
|
{{foreach $disabledPlugins as $plugin}}
|
|
<li>{$plugin}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
<p class="ipsType_normal">{lang="third_party_stuff_disabled_end"}</p>
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
{{if count( $disabledApps )}}
|
|
<a href="{url="app=core&module=applications&controller=applications"}" target="_blank" class="ipsButton ipsButton_alternate">{lang="third_party_stuff_disabled_go_apps"}</a>
|
|
{{endif}}
|
|
{{if count( $disabledPlugins )}}
|
|
<a href="{url="app=core&module=applications&controller=plugins"}" target="_blank" class="ipsButton ipsButton_alternate">{lang="third_party_stuff_disabled_go_plugins"}</a>
|
|
{{endif}}
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=={$extra}"}" data-action="redirectContinue" class="ipsButton ipsButton_primary">{lang="problem_not_resolved"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="toolboxResults" template_data="$form, $queries, $results" template_location="admin" template_app="core"><![CDATA[{$form|raw}
|
|
{{foreach $queries as $k => $query}}
|
|
{$results[ $k ]|raw}
|
|
{{endforeach}}]]></template>
|
|
<template template_group="support" template_name="tryNow" template_data="$id, $message, $extra='', $parse=TRUE" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<p class="ipsType_normal">{{if $parse}}{lang="$message"}{{else}}{$message|raw}{{endif}}</p>
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=={$extra}"}" data-action="redirectContinue" class="ipsButton ipsButton_primary">{lang="problem_not_resolved"}</a>
|
|
</div>]]></template>
|
|
<template template_group="support" template_name="upgrade" template_data="$id, $url" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
{lang="not_running_latest_version"}
|
|
</div>
|
|
<div class="ipsAreaBackground ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=system&controller=upgrade"}" class="ipsButton ipsButton_primary">{lang="upgrade_now"}</a>
|
|
<a href="{$url}" target="_blank" class="ipsButton ipsButton_alternate">{lang="learn_more"}</a>
|
|
<a href="{url="app=core&module=support&controller=support&next={$id}&mr=MA=="}" class="ipsButton ipsButton_alternate" data-action="redirectContinue">{lang="continue_anyway"}</a>
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="announcement" template_data="$announcement" template_location="front" template_app="core"><![CDATA[<h1 class='ipsType_pageTitle ipsType_largeTitle'>{$announcement->mapped( 'title' )}</h1>
|
|
{{if !$announcement->active}}
|
|
<p class='ipsType_reset ipsType_light'>{lang="announcement_not_active"}</p>
|
|
{{endif}}
|
|
<br>
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_tiny ipsClearfix'>
|
|
{template="userPhoto" app="core" group="global" params="$announcement->author(), 'tiny'"}
|
|
<div>
|
|
<p class='ipsType_reset ipsType_large ipsType_blendLinks'>
|
|
{lang="byline_nodate" htmlsprintf="$announcement->author()->link()"}
|
|
{{if $announcement->start}}
|
|
<br>
|
|
<span class='ipsType_light ipsType_medium'>{datetime="$announcement->start" dateonly="true"}</span>
|
|
{{endif}}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
|
|
<article class='ipsBox ipsPad'>
|
|
<section class='ipsType_richText ipsType_normal'>
|
|
{$announcement->mapped( 'content' )|raw}
|
|
{{if \IPS\Member::loggedIn()->modPermission('can_manage_announcements') and ( $announcement->canEdit() or $announcement->canDelete() )}}
|
|
<hr class='ipsHr'>
|
|
<a href='#elAnnouncementActions_menu' id='elAnnouncementActions' class='ipsButton ipsButton_light ipsButton_verySmall' data-ipsMenu>{lang="announce_actions"} <i class='fa fa-caret-down'></i></a>
|
|
<ul id='elAnnouncementActions_menu' class='ipsMenu ipsMenu_auto ipsHide'>
|
|
{{if $announcement->canEdit()}}
|
|
<li class='ipsMenu_item'><a href='{$announcement->url( 'create' )}' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="edit_announcement"}' data-action='ipsMenu_ping'>{lang="edit"}</a></li>
|
|
{{endif}}
|
|
{{if $announcement->canDelete()}}
|
|
<li class='ipsMenu_item'><a href='{$announcement->url( 'delete' )->csrf()}' data-confirm title='{lang="delete"}'>{lang="delete"}</a></li>
|
|
{{endif}}
|
|
<li class='ipsMenu_item'><a href='{$announcement->url( 'status' )->csrf()}' title='{{if $announcement->active}}{lang="announce_mark_inactive"}{{else}}{lang="announce_mark_active"}{{endif}}'>{{if $announcement->active}}{lang="announce_mark_inactive"}{{else}}{lang="announce_mark_active"}{{endif}}</a></li>
|
|
</ul>
|
|
{{endif}}
|
|
</section>
|
|
</article>]]></template>
|
|
<template template_group="system" template_name="backgroundProcessesRunNow" template_data="" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='acpBlock'>
|
|
<div class="ipsPad">
|
|
{lang="background_process_run_content"}
|
|
<p>
|
|
<a href='{url="app=core&module=system&controller=background&do=process"}' class="ipsButton ipsButton_primary">{lang="background_process_run_button"}</a>
|
|
</p>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="completeProfile" template_data="$form" template_location="front" template_app="core"><![CDATA[
|
|
<section class='ipsPad'>
|
|
<br>
|
|
<h1 class='ipsType_veryLarge ipsType_center ipsType_reset'>{lang='need_more_info'}</h1>
|
|
<p class='ipsType_large ipsType_center ipsType_light'>{lang="need_more_info_text"}</p>
|
|
<br>
|
|
<div class='ipsBox ipsPad'>
|
|
{$form|raw}
|
|
</div>
|
|
</section>
|
|
]]></template>
|
|
<template template_group="system" template_name="contact" template_data="$form" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('contact')"}
|
|
{{else}}
|
|
<div class='ipsPad'>
|
|
{{endif}}
|
|
<div class='ipsType_normal ipsType_richText'>
|
|
{$form|raw}
|
|
</div>
|
|
{{if \IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="contactDone" template_data="" template_location="front" template_app="core"><![CDATA[
|
|
<br><br>
|
|
<p class='ipsType_reset ipsType_center ipsType_huge'>
|
|
<i class='fa fa-envelope'></i>
|
|
</p>
|
|
|
|
<h1 class='ipsType_veryLarge ipsType_center'>{lang="contact_sent"}</h1>
|
|
|
|
<div class='ipsType_large ipsType_center ipsType_richText'>
|
|
{lang="contact_sent_blurb"}
|
|
</div>
|
|
<br>
|
|
<p class='ipsType_center'>
|
|
<a href='{url="/"}' class='ipsButton ipsButton_normal ipsButton_small'>{lang="go_community_home"}</a>
|
|
</p>]]></template>
|
|
<template template_group="system" template_name="coppa" template_data="$form" template_location="front" template_app="core"><![CDATA[
|
|
<section class='ipsPad'>
|
|
<br>
|
|
<h1 class='ipsType_veryLarge ipsType_center ipsType_reset'>{lang='sign_up'}</h1>
|
|
<p class='ipsType_large ipsType_center ipsType_light'>{lang="existing_user"} <a href='{url="app=core&module=system&controller=login" seoTemplate="login"}'>{lang="sign_in_short"}</a></p>
|
|
<br>
|
|
|
|
<div data-role='registerForm' class='ipsBox ipsPad'>
|
|
<section class='ipsType_center'>
|
|
<p class='ipsType_large ipsType_reset'><strong>{lang="coppa_verify"}</strong></p>
|
|
<p class='ipsType_normal ipsType_light ipsType_reset'>
|
|
{lang="coppa_verification_only"} {{if \IPS\Settings::i()->privacy_type != "none"}} <a href='{{if \IPS\Settings::i()->privacy_type == "internal"}}{url="app=core&module=system&controller=privacy" seoTemplate="privacy"}{{else}}{setting="privacy_link"}{{endif}}'>{lang="privacy"}</a>.{{endif}}
|
|
</p>
|
|
<br><br>
|
|
|
|
{$form->customTemplate( array( \IPS\Theme::i()->getTemplate( 'system', 'core', 'front' ), 'coppaForm' ) )|raw}
|
|
</section>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="coppaConsent" template_data="" template_location="front" template_app="core"><![CDATA[<div class="ipsPrint">
|
|
<h1>{setting="board_name"}</h1>
|
|
<h2>{lang="coppa_form"}</h2>
|
|
|
|
{lang="coppa_form_intro" sprintf="\IPS\Settings::i()->board_name"}
|
|
|
|
<table>
|
|
<tr>
|
|
<th>{lang="coppa_form_child_name"} </th>
|
|
<th>{lang="coppa_form_child_email"} </th>
|
|
</tr>
|
|
<tr>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
</tr>
|
|
</table>
|
|
|
|
{lang="coppa_form_disclaimer"}
|
|
|
|
<div></div>
|
|
<div></div>
|
|
|
|
<table>
|
|
<tr>
|
|
<th>{lang="coppa_form_name"} </th>
|
|
<th>{lang="coppa_form_relation"} </th>
|
|
</tr>
|
|
<tr>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
</tr>
|
|
<tr>
|
|
<th>{lang="coppa_form_email"} </th>
|
|
<th>{lang="coppa_form_phone"} </th>
|
|
</tr>
|
|
<tr>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
<td class="ipsPrint_doubleHeight"> </td>
|
|
</tr>
|
|
<tr>
|
|
<th colspan="2">{lang="coppa_form_sig"} </th>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2" class="ipsPrint_tripleHeight"> </td>
|
|
</tr>
|
|
<tr>
|
|
<th colspan="2">{lang="coppa_form_date"} </th>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2" class="ipsPrint_doubleHeight"> </td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div></div>
|
|
|
|
{{if \IPS\Settings::i()->privacy_type != "none"}}
|
|
<p>{lang="coppa_form_privacy"} {{if \IPS\Settings::i()->privacy_type == "internal"}}{url="app=core&module=system&controller=privacy" seoTemplate="privacy"}{{else}}{setting="privacy_link"}{{endif}}</p>
|
|
<div></div>
|
|
{{endif}}
|
|
{{if \IPS\Settings::i()->coppa_address}}
|
|
<p>{lang="coppa_form_mail"} {address="\IPS\Settings::i()->coppa_address"}</p>
|
|
{{endif}}
|
|
{{if \IPS\Settings::i()->coppa_fax}}
|
|
<p>{{if \IPS\Settings::i()->coppa_address and \IPS\Settings::i()->coppa_fax}}{lang="or"} {{endif}}{lang="coppa_form_fax"} {setting="coppa_fax"}</p>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="coppaForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar" template_location="front" template_app="core"><![CDATA[
|
|
<form accept-charset='utf-8' method="post" action="{$action}" id='elCoppaForm' class='ipsType_center' data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Date}}
|
|
<input type="date" class='ipsField_short ipsField_primary' required placeholder="{lang="$input->name"}" name='{$input->name}' id='{$input->htmlId}'>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<button type='submit' class='ipsButton ipsButton_large ipsButton_primary'>{lang="continue"}</button>
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="followedContent" template_data="$types, $currentAppModule, $currentType, $table" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
{template="pageHeader" group="global" app="core" params="\IPS\Member::loggedIn()->language()->addToStack('menu_followed_content')"}
|
|
<div>
|
|
<div data-role="profileContent">
|
|
{{endif}}
|
|
<div class="ipsColumns ipsColumns_collapsePhone">
|
|
<div class="ipsColumn ipsColumn_medium">
|
|
<div class="ipsSideMenu" id="modcp_menu" data-ipsTabBar data-ipsTabBar-contentArea='#elFollowedContent' data-ipsTabBar-itemselector=".ipsSideMenu_item" data-ipsTabBar-activeClass="ipsSideMenu_itemActive" data-ipsSideMenu>
|
|
<h3 class="ipsSideMenu_mainTitle ipsAreaBackground_light ipsType_medium">
|
|
<a href="#user_content" class="ipsPad_double" data-action="openSideMenu"><i class="fa fa-bars"></i> {lang="user_content_type"} <i class="fa fa-caret-down"></i></a>
|
|
</h3>
|
|
<div>
|
|
{{foreach $types as $app => $_types}}
|
|
{{if $app != "core"}}
|
|
<h4 class='ipsSideMenu_subTitle'>{lang="module__{$app}"}</h4>
|
|
<ul class="ipsSideMenu_list">
|
|
{{foreach $_types as $key => $class}}
|
|
<li><a href="{$table->baseUrl->setQueryString( array( 'type' => $key, 'change_section' => 1, 'page' => NULL ) )}" class="ipsSideMenu_item {{if $currentType == $key}}ipsSideMenu_itemActive{{endif}}">{{if is_subclass_of( $class, 'IPS\Content\Item' )}}{lang="{$class::$title}_pl"}{{else}}{lang="{$class::$nodeTitle}"}{{endif}}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<h4 class='ipsSideMenu_subTitle'>{lang="other"}</h4>
|
|
<ul class='ipsSideMenu_list'>
|
|
<li><a href="{$table->baseUrl->setQueryString( array( 'type' => 'core_member', 'change_section' => 1, 'page' => NULL ) )}" class="ipsSideMenu_item {{if $currentType == 'core_member'}}ipsSideMenu_itemActive{{endif}}">{lang="members"}</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ipsColumn ipsColumn_fluid" id='elFollowedContent'>
|
|
{template="followedContentSection" group="system" app="core" params="$types, $currentAppModule, $currentType, (string) $table"}
|
|
</div>
|
|
</div>
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="followedContentMemberRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[
|
|
{{foreach $rows as $row}}
|
|
{{$loadedMember = \IPS\Member::load( $row->member_id );}}
|
|
<li class='ipsDataItem' data-controller='core.front.system.manageFollowed' data-followID='{$row->_followData['follow_area']}-{$row->_followData['follow_rel_id']}'>
|
|
<div class='ipsDataItem_icon'>
|
|
{template="userPhoto" group="global" app="core" params="$loadedMember, 'small'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h3 class='ipsType_reset ipsType_large ipsType_unbold'>{$loadedMember->link()|raw}</h3> {{if $loadedMember->isOnline()}}<i class="fa fa-circle ipsOnlineStatus_online" data-ipsTooltip title='{lang="online_now" sprintf="$row->name"}'></i>{{endif}}
|
|
<span class='ipsType_normal'>{expression="\IPS\Member\Group::load( $row->member_group_id )->formattedName" raw="true"}</span>
|
|
<ul class='ipsList_inline ipsType_light'>
|
|
<li>{lang="members_member_posts"}: {$loadedMember->member_posts}</li>
|
|
<li>{lang="members_joined"}: {datetime="$loadedMember->joined"}</li>
|
|
{{if $loadedMember->last_activity}}
|
|
<li>{lang="members_last_visit"}: {datetime="$loadedMember->last_activity"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center ipsType_large'>
|
|
<span class='ipsBadge ipsBadge_icon ipsBadge_new {{if !$row->_followData['follow_is_anon']}}ipsHide{{endif}}' data-role='followAnonymous' data-ipsTooltip title='{lang="follow_is_anon"}'><i class='fa fa-eye-slash'></i></span>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6'>
|
|
<ul class='ipsList_reset'>
|
|
<li title='{lang="follow_when"}' data-role='followDate'><i class='fa fa-clock-o'></i> {datetime="$row->_followData['follow_added']"}</li>
|
|
<li title='{lang="follow_how"}' data-role='followFrequency'>
|
|
{{if $row->_followData['follow_notify_freq'] == 'none'}}
|
|
<i class='fa fa-bell-slash-o'></i>
|
|
{{else}}
|
|
<i class='fa fa-bell'></i>
|
|
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6 ipsType_center'>
|
|
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
|
|
</div>
|
|
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->member_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state=''>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="system" template_name="followedContentSection" template_data="$types, $currentAppModule, $currentType, $table" template_location="front" template_app="core"><![CDATA[<div class='ipsBox'>
|
|
<h2 class='ipsType_sectionTitle ipsType_reset'>{{if is_subclass_of( $types[ $currentAppModule ][ $currentType ], 'IPS\Content\Item' )}}{lang="stuff_i_follow" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $types[ $currentAppModule ][ $currentType ]::$title . '_pl' )"}{{elseif $types[ $currentAppModule ][ $currentType ] == "\IPS\Member"}}{lang="members_i_follow"}{{else}}{lang="stuff_i_follow" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $types[ $currentAppModule ][ $currentType ]::$nodeTitle )"}{{endif}}</h2>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="followers" template_data="$url, $pagination, $followers, $anonymous" template_location="front" template_app="core"><![CDATA[<div data-ipsInfScroll data-ipsInfScroll-scrollScope="#elFollowerList" data-ipsInfScroll-container="#elFollowerList" data-ipsInfScroll-url="{$url}" data-ipsInfScroll-pageParam="followerPage" data-ipsInfScroll-pageBreakTpl="">
|
|
<div class="ipsJS_hide">{$pagination|raw}</div>
|
|
<div class='ipsFollowerList ipsPad ipsScrollbar'>
|
|
<ul class="ipsDataList ipsList_reset" id="elFollowerList">
|
|
{template="followersRows" group="system" params="$followers"}
|
|
</ul>
|
|
{{if $anonymous}}
|
|
{{if count( $followers )}}
|
|
<div class="ipsPad_half ipsType_center ipsType_light">{lang="and_x_others" pluralize="$anonymous"}</div>
|
|
{{else}}
|
|
<div class="ipsPad_half ipsType_center ipsType_light">{lang="x_anonymous_members" pluralize="$anonymous"}</div>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="followersRows" template_data="$followers" template_location="front" template_app="core"><![CDATA[{{foreach $followers as $follower}}
|
|
<li class='ipsDataItem ipsClearfix'>
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $follower['follow_member_id'] ), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<strong class='ipsDataItem_title'>{{$link = \IPS\Member::load( $follower['follow_member_id'] )->link();}}{$link|raw}</strong><br>
|
|
<span class='ipsType_light'>{datetime="$follower['follow_added']"}</span>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="system" template_name="followForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<form {{if \IPS\Request::i()->isAjax() }}data-controller='core.front.core.followForm'{{endif}} accept-charset='utf-8' class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm >
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class="ipsPad">
|
|
<h2 class='ipsType_sectionHead'>{expression="\IPS\Output::i()->title"}</h2>
|
|
<br><br>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if is_string( $input )}}
|
|
{$input|raw}
|
|
<hr class='ipsHr'>
|
|
{{elseif $input instanceof \IPS\Helpers\Form\Radio}}
|
|
<li class="ipsFieldRow">
|
|
<strong class='ipsType_normal'>{lang="follow_send_me"}</strong>
|
|
{$input->html($form)|raw}
|
|
<hr class='ipsHr'>
|
|
</li>
|
|
{{elseif $input instanceof \IPS\Helpers\Form\Checkbox}}
|
|
{$input->html($form)|raw}
|
|
{{else}}
|
|
{$input->rowHtml($form)|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class="ipsAreaBackground ipsPad">
|
|
{$actionButtons[0]|raw} {{if isset( $actionButtons[1] )}}{$actionButtons[1]|raw}{{endif}}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="guidelines" template_data="$guidelines" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('guidelines')"}
|
|
{{endif}}
|
|
<div class='ipsType_normal ipsType_richText ipsPad ipsBox'>
|
|
{lang="guidelines_value"}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="ignore" template_data="$form, $table" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('ignored_users'), \IPS\Member::loggedIn()->language()->addToStack('ignored_users_blurb')"}
|
|
<div data-controller='core.front.ignore.new'>
|
|
<div class='ipsAreaBackground ipsPad'>
|
|
<h2 class='ipsType_sectionHead'>{lang="ignored_users_add"}</h2>
|
|
<p class='ipsType_reset'>{lang="ignored_users_add_desc"}</p>
|
|
<br>
|
|
{$form|raw}
|
|
</div>
|
|
<br>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="ignoreEditForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar" template_location="front" template_app="core"><![CDATA[
|
|
<form accept-charset='utf-8' id="elIgnoreForm" class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm data-controller='core.front.ignore.edit'>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
<ul class="ipsForm ipsForm_vertical ipsPad">
|
|
{{foreach $elements as $collection}}
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth'>
|
|
<ul class='ipsFieldRow_content ipsList_reset'>
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Checkbox}}
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
{$input->html()|raw}
|
|
<label for='{$input->htmlId}'>{lang="$input->name"}</label>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<div class='ipsAreaBackground ipsPad ipsType_right'>
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="ignoreForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' id="elIgnoreForm" class="ipsForm {$class}" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
<ul class="ipsForm ipsForm_vertical">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if !( $input instanceof \IPS\Helpers\Form\Checkbox )}}
|
|
<li class='ipsFieldRow ipsFieldRow_noLabel ipsFieldRow_fullWidth'>
|
|
<div class='ipsFieldRow_content'>
|
|
{$input->html()|raw}
|
|
{{if $input->error}}
|
|
<br>
|
|
<span class="ipsType_warning">{lang="$input->error"}</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<li class='ipsFieldRow ipsFieldRow_fullWidth' id='elIgnoreTypes'>
|
|
<strong class='ipsFieldRow_title'>{lang="ignored_users_ignore"}</strong>
|
|
<ul class='ipsFieldRow_content ipsList_reset'>
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Checkbox}}
|
|
<li class='ipsFieldRow_inlineCheckbox'>
|
|
{$input->html()|raw}
|
|
<label for='check_{$input->htmlId}'>{lang="$input->name"}</label>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endforeach}}
|
|
<li class='ipsFieldRow' id='elIgnoreSubmitRow'>
|
|
<div class='ipsFieldRow_content'>
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<div id='elIgnoreLoading'></div>
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="ignoreTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[
|
|
<div class='ipsBox' data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table' id='elTable_{$table->uniqueId}'>
|
|
{{if $table->title}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsClear'>{lang="$table->title"}</h2>
|
|
{{endif}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
{{if !empty( $table->filters )}}
|
|
<li>
|
|
<a href="#elFilterByMenu_menu" data-role="tableFilterMenu" id="elFilterByMenu_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="filter_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterByMenu_{$table->uniqueId}_menu'>
|
|
<li data-ipsMenuValue='' class='ipsMenu_item {{if !$table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1', 'filter' => '', 'group' => \IPS\Request::i()->group ) )}' class='{{if !array_key_exists( $table->filter, $table->filters )}}ipsButtonRow_active{{endif}}'>{lang="all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-ipsMenuValue='{$k}' class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1', 'group' => \IPS\Request::i()->group ) )}' class='cIgnoreType_{$k}'>{lang="{$table->langPrefix}{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{if $table->pages > 1}}
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
{{endif}}
|
|
</div>
|
|
|
|
<ol class='ipsDataList ipsGrid ipsGrid_collapsePhone ipsClear' id='elIgnoreUsers' data-role='tableRows'>
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="ignoreTableRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if empty($rows)}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsPad ipsType_light ipsType_center'><br><br>{lang="no_results"}</div>
|
|
</li>
|
|
{{else}}
|
|
{{foreach $rows as $r}}
|
|
<li class='ipsDataItem ipsGrid_span6 ipsFaded_withHover' id='elIgnoreRow{$r['ignore_ignore_id']}' data-role="ignoreRow" data-ignoreUserID='{$r['ignore_ignore_id']}' data-controller='core.front.ignore.existing'>
|
|
<p class='ipsType_reset ipsDataItem_icon'>
|
|
{template="userPhoto" app="core" group="global" params="\IPS\Member::load( $r['ignore_ignore_id'] ), 'tiny'"}
|
|
</p>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><strong data-role="ignoreRowName">{member="name" id="$r['ignore_ignore_id']"}</strong></h4>
|
|
<ul class='ipsList_inline'>
|
|
{{foreach \IPS\core\Ignore::types() as $t}}
|
|
{{if $r["ignore_{$t}"]}}
|
|
<li class='ipsType_light'><i class='fa fa-check'></i> {lang="ignore_$t"}</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<li class='ipsFaded'>
|
|
<a href='#elUserIgnore{$r['ignore_ignore_id']}_menu' id='elUserIgnore{$r['ignore_ignore_id']}' class='ipsType_large ipsPos_middle ipsType_blendLinks' data-ipsMenu data-ipsMenu-appendTo='#elIgnoreRow{$r['ignore_ignore_id']}' data-action='ignoreMenu'>
|
|
<i class='fa fa-cog'></i> <i class='fa fa-caret-down'></i>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class='ipsMenu ipsJS_hide' id='elUserIgnore{$r['ignore_ignore_id']}_menu'>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='edit'>
|
|
<a href='{url="app=core&module=system&controller=ignore&do=edit&id={$r['ignore_ignore_id']}"}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="edit_ignore_for" sprintf="\IPS\Member::load( $r['ignore_ignore_id'] )->name"}'>{lang="change_ignored_content"}</a>
|
|
</li>
|
|
<li class='ipsMenu_item' data-ipsMenuValue='remove'>
|
|
<a href='{url="app=core&module=system&controller=ignore&do=remove&id={$r['ignore_ignore_id']}" csrf="true"}'>{lang="stop_ignoring_user"}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="login" template_data="$forms, $activeTab, $error, $icons, $upgradeError=FALSE" template_location="admin" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>{lang="login"}</title>
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
|
</head>
|
|
<body class='ipsApp ipsApp_admin' id='elLogin' data-controller="core.admin.core.app">
|
|
<div id='elLogin_box' data-controller="core.admin.system.login"{{if count($forms) == 1}} class='elLogin_single'{{endif}}>
|
|
{{if $upgradeError}}
|
|
<div class='cAcpLoginBox ipsPad' data-role="upgradeWarning">
|
|
<h1 class='ipsType_pageTitle'><i class='fa fa-lock'></i> {lang="acp_login"}</h1>
|
|
<p class="ipsType_warning"><strong>{lang="acp_login_upgrade_warning" sprintf="$upgradeError"}</strong></p>
|
|
<div class="ipsSpacer_top">
|
|
<a href="upgrade" class="cAcpLoginBox_button ipsButton ipsButton_primary ipsButton_large ipsButton_fullWidth">{lang="upgrade_now"}</a>
|
|
<a data-action="upgradeWarningContinue" href="{expression="\IPS\Request::i()->url()->setQueryString('noWarning', 1)"}" class="cAcpLoginBox_button ipsButton ipsButton_light ipsButton_small ipsButton_fullWidth">{lang="acp_login_ignore_warning"}</a>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsColumns {{if $upgradeError}}ipsHide{{endif}}' data-role="loginForms">
|
|
<div class='cAcpLoginBox ipsColumn ipsColumn_fluid'>
|
|
<div class='ipsPad'>
|
|
<h1 class='ipsType_pageTitle'><i class='fa fa-lock'></i> {lang="acp_login"}</h1>
|
|
<br>
|
|
{{if $error}}
|
|
<div class='ipsMessage ipsMessage_error'>{lang="$error"}</div>
|
|
{{endif}}
|
|
<div id='elTabContent'>
|
|
{{foreach $forms as $key => $form}}
|
|
<div id='ipsTabs_elLogin_tabs_handler_{$key}_panel' class=" ipsTabs_panel {{if $key != $activeTab}}ipsHide{{endif}}">
|
|
|
|
{{if is_object( $form )}}
|
|
{$form->customTemplate( array( \IPS\Theme::i()->getTemplate( 'system' ), 'loginForm' ) )|raw}
|
|
{{else}}
|
|
{$form|raw}
|
|
{{endif}}
|
|
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{if count( $forms ) > 1}}
|
|
<div class='ipsColumn ipsColumn_veryNarrow' id='elLogin_tabs' data-ipsTabBar data-ipsTabBar-contentArea='#elTabContent' data-ipsTabBar-itemSelector=".elLogin_tabsItem" data-ipsTabBar-activeClass="elLogin_tabsActive" role="tabbar">
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $forms as $key => $form}}
|
|
<li role="presentation">
|
|
<a href='{url="app=core&module=system&controller=login&tab="}{$key}' role="tab" aria-label="{lang="login_{$key}"}" class='elLogin_tabsItem {{if $key == $activeTab}}elLogin_tabsActive{{endif}}' id='handler_{$key}'><i class='fa fa-{{if isset ( $icons[ $key ] )}}{$icons[ $key ]}{{else}}lock{{endif}}'></i></a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="system" template_name="login" template_data="$forms, $error" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
<div class=''>
|
|
<br>
|
|
<h1 class='ipsType_reset ipsType_veryLarge ipsType_center'>{lang='sign_in_short'}</h1>
|
|
{{if \IPS\Settings::i()->allow_reg}}
|
|
<p class='ipsType_large ipsType_center ipsType_light'>{lang="dont_have_an_account"} <a href='{url="app=core&module=system&controller=register" seoTemplate="register"}'>{lang="sign_up"}</a>.</p>
|
|
{{endif}}
|
|
<br>
|
|
{{endif}}
|
|
|
|
<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_fluid ipsBox'>
|
|
<div class='ipsPad'>
|
|
{{if $error !== NULL}}
|
|
{template="message" group="global" location="global" params="$error, 'error'"}
|
|
<br>
|
|
{{endif}}
|
|
{{foreach $forms as $k => $form}}
|
|
{{if $k === '_standard'}}
|
|
{$form|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
{{if count ( $forms ) > 1}}
|
|
<div class='ipsColumn ipsColumn_veryWide ipsBox'>
|
|
<div class='ipsPad'>
|
|
<h2 class='ipsType_sectionHead'>{lang='sign_in_faster'}</h2>
|
|
{{if count ( $forms ) > 2}}
|
|
<p class='ipsType_normal ipsType_reset ipsType_light'>{lang='sign_in_connect'}</p>
|
|
{{endif}}
|
|
<br>
|
|
{{foreach $forms as $k => $form}}
|
|
{{if $k !== '_standard'}}
|
|
<div class='ipsPad_half'>{$form|raw}</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
|
|
{{if !\IPS\Request::i()->isAjax()}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="loginForm" template_data="$id, $action, $tabs, $hiddenValues, $actionButtons, $uploadField" template_location="admin" template_app="core"><![CDATA[<form accept-charset='utf-8' action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}}>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<ul class='ipsForm ipsForm_vertical'>
|
|
{{foreach $tabs as $elements}}
|
|
{{foreach $elements as $element}}
|
|
<li class='ipsFieldRow ipsFieldRow_primary ipsFieldRow_fullWidth'>
|
|
{{if $element->name === 'auth'}}
|
|
{{if $element->options['_loginType'] === \IPS\Login::AUTH_TYPE_USERNAME + \IPS\Login::AUTH_TYPE_EMAIL}}
|
|
<label class='ipsFieldRow_label'>{lang="username_or_email"}</label>
|
|
{{elseif $element->options['_loginType'] === \IPS\Login::AUTH_TYPE_USERNAME}}
|
|
<label class='ipsFieldRow_label'>{lang="username"}</label>
|
|
{{else}}
|
|
<label class='ipsFieldRow_label'>{lang="email_address"}</label>
|
|
{{endif}}
|
|
{{else}}
|
|
<label class='ipsFieldRow_label'>{lang="$element->name"}</label>
|
|
{{endif}}
|
|
<div class='ipsFieldRow_content'>
|
|
{$element->html()|raw}
|
|
{{if $element->error}}
|
|
<p><span class="error">{lang="$element->error"}</span></p>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
<br><br>
|
|
|
|
<div class='ipsFieldRow_fullWidth'>
|
|
<button type='submit' class='ipsButton ipsButton_primary ipsButton_large'>{lang="login"}</button>
|
|
</div>
|
|
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="loginForm" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' class="ipsPad ipsForm ipsForm_vertical" method='post' action='{$action}' data-ipsValidation novalidate>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
<h4 class="ipsType_sectionHead">{lang="login"}</h4>
|
|
<br><br>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Text}}
|
|
<li class="ipsFieldRow ipsFieldRow_noLabel ipsFieldRow_fullWidth">
|
|
<input type="{$input->formType}" required placeholder="{lang="$input->name"}" name='{$input->name}' id='{$input->htmlId}'>
|
|
</li>
|
|
{{else}}
|
|
{$input->rowHtml($form)|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
<li class="ipsFieldRow ipsFieldRow_fullWidth">
|
|
<br>
|
|
<input type="submit" class="ipsButton ipsButton_primary ipsButton_small" value="{lang="login"}" id="elSignIn_submit">
|
|
<br>
|
|
<p class="ipsType_right ipsType_small">
|
|
<a href='{url="app=core&module=system&controller=lostpass" seoTemplate="lostpassword"}' data-ipsDialog data-ipsDialog-title='{lang="forgotten_password"}'>{lang="forgotten_password"}</a>
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="lostPass" template_data="$form" template_location="front" template_app="core"><![CDATA[{{if !request.isAjax()}}
|
|
{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('lost_password')"}
|
|
{{endif}}
|
|
<div class='ipsBox ipsPad'>
|
|
<p class='ipsType_normal'>
|
|
{lang="lost_pass_instructions"}
|
|
</p>
|
|
<br>
|
|
<br>
|
|
{$form|raw}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="system" template_name="lostPassConfirm" template_data="" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('lost_password')"}
|
|
<div class='ipsLayout_contentSection'>
|
|
{lang="lost_pass_confirm"}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="system" template_name="manageFollow" template_data="$app, $area, $id" template_location="front" template_app="core"><![CDATA[
|
|
<div data-followApp='{$app}' data-followArea='{$area}' data-followID='{$id}' data-buttonType='manage' data-controller='core.front.core.followButton'>
|
|
{template="manageFollowButton" group="system" app="core" params="$app, $area, $id"}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="manageFollowButton" template_data="$app, $area, $id" template_location="front" template_app="core"><![CDATA[
|
|
{{if member.member_id}}
|
|
{{if member.following( $app, $area, $id )}}
|
|
<div class="ipsFollow" data-role="followButton">
|
|
<a href="{url="app=core&module=system§ion=notifications&do=follow&follow_app={$app}&follow_area={$area}&follow_id={$id}"}" title="{lang="following_this_content"}" class='ipsButton ipsButton_light ipsButton_fullWidth ipsButton_verySmall' data-ipsHover data-ipsHover-cache='false' data-ipsHover-onClick>{lang="follow_change_preference"} <i class='fa fa-caret-down'></i></a>
|
|
</div>
|
|
{{endif}}
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="mergeSocialAccount" template_data="$handler, $existingAccount, $form" template_location="front" template_app="core"><![CDATA[<h1 class='ipsType_veryLarge ipsType_center'>{lang='link_your_accounts'}</h1>
|
|
<p class='ipsType_large ipsType_center ipsType_light'>{lang="link_your_accounts_blurb" sprintf="\IPS\Member::loggedIn()->language()->addToStack( 'login_handler_' . ucfirst( $handler ) )"}</p>
|
|
<hr class='ipsHr'>
|
|
{$form|raw}]]></template>
|
|
<template template_group="system" template_name="myAttachments" template_data="$files, $used" template_location="front" template_app="core"><![CDATA[<h1 class="ipsType_pageTitle">{lang="my_attachments"}</h1>
|
|
{{if member.group['g_attach_max'] > 0}}
|
|
<div class='ipsAreaBackground_light ipsPad'>
|
|
<p>{lang="my_attachments_blurb" sprintf="\IPS\Output\Plugin\Filesize::humanReadableFilesize( $used ), \IPS\Output\Plugin\Filesize::humanReadableFilesize( \IPS\Member::loggedIn()->group['g_attach_max'] * 1024 )"}</p>
|
|
</div>
|
|
{{endif}}
|
|
{{if empty($files)}}
|
|
<div class='ipsPad ipsAreaBackground_light'>
|
|
{lang="my_attachments_empty"}
|
|
</div>
|
|
{{else}}
|
|
<div class="ipsGrid ipsAttachment_fileList">
|
|
{{foreach $files as $url => $file}}
|
|
{{$id = mb_substr( $url, mb_strrpos( $url, '=' ) + 1 );}}
|
|
<div class='ipsDataItem ipsAttach ipsAttach_done'>
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsResponsive_hidePhone ipsResponsive_block ipsType_center'>
|
|
{{if in_array( mb_strtolower( mb_substr( $file->filename, mb_strrpos( $file->filename, '.' ) + 1 ) ), \IPS\Image::$imageExtensions )}}
|
|
<a href="{$file}"><img src="{$file}" alt='' class='ipsImage' data-ipsLightbox data-ipsLightbox-group="myAttachments"></a>
|
|
{{else}}
|
|
<i class='fa fa-file ipsType_large'></i>
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main' data-action='selectFile'>
|
|
<h2 class='ipsDataItem_title ipsType_reset ipsType_medium ipsAttach_title ipsTruncate ipsTruncate_line'>{$file->originalFilename}</h2>
|
|
<p class='ipsDataItem_meta ipsType_light'>
|
|
{filesize="$file->filesize()"}
|
|
</p>
|
|
</div>
|
|
<div class='ipsDataItem_generic ipsDataItem_size6 ipsType_right'>
|
|
<ul class='ipsButton_split'>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=attachments&do=view&id={$id}" seoTemplate="attachments"}' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="my_attachments_view"}'><i class='fa fa-search'></i></a>
|
|
</li>
|
|
{{if \IPS\Member::loggedIn()->group['gbw_delete_attachments']}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=attachments&do=delete&id={$id}" seoTemplate="attachments" csrf="true"}' class='ipsButton ipsButton_verySmall ipsButton_light' data-ipsTooltip title='{lang="delete"}' data-action="deleteAttachment" ><i class='fa fa-trash-o'></i></a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="system" template_name="notAdminValidated" template_data="" template_location="front" template_app="core"><![CDATA[<section class='ipsType_center ipsPad ipsBox'>
|
|
<br>
|
|
<i class='ipsType_huge fa fa-lock'></i>
|
|
<h1 class='ipsType_veryLarge'>{lang="reg_admin_validation"}</h1>
|
|
|
|
<p class='ipsType_large'>
|
|
{lang="reg_admin_validation_desc" sprintf="\IPS\Member::loggedIn()->email"}
|
|
</p>
|
|
{{$guest = new \IPS\Member;}}
|
|
<p class='ipsType_normal'>
|
|
<a href='{url="app=core&module=system&controller=login&do=logout" csrf="true" seoTemplate="logout"}' class='ipsButton ipsButton_primary'>{{if $guest->group['g_view_board']}}{lang="reg_continue_as_guest"}{{else}}{lang="sign_out"}{{endif}}</a>
|
|
</p>
|
|
<hr class='ipsHr'>
|
|
<p class='ipsType_normal'>
|
|
<a href='{url="app=core&module=system&controller=register&do=changeEmail" seoTemplate="register"}' data-ipsDialog data-ipsDialog-modal='true' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="reg_change_email"}</a>
|
|
<a href='{url="app=core&module=system&controller=register&do=cancel" csrf="true" seoTemplate="register"}' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="reg_cancel"}</a>
|
|
</p>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="notCoppaValidated" template_data="" template_location="front" template_app="core"><![CDATA[<section class='ipsType_center ipsPad ipsBox'>
|
|
<h1 class='ipsType_veryLarge ipsType_center'>{lang="coppa_consent_required"}</h1>
|
|
<br>
|
|
|
|
<div data-role='registerForm'>
|
|
<p class='ipsType_large'>
|
|
{lang="coppa_consent_required_desc"}
|
|
</p>
|
|
<br><br>
|
|
|
|
<a href='{url="app=core&module=system&controller=register&do=coppaForm" seoTemplate="register"}' class='ipsButton ipsButton_primary ipsButton_large'>{lang="coppa_print_form"}</a>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="notifications" template_data="$table" template_location="front" template_app="core"><![CDATA[<div class='ipsPageHeader ipsClearfix ipsSpacer_bottom'>
|
|
<h1 class='ipsType_pageTitle'>{lang="notifications"}</h1>
|
|
<div class="ipsPos_right">
|
|
<a class="ipsButton ipsButton_link" href="{url="app=core&module=system&controller=notifications&do=options" seoTemplate="notifications_options"}"><i class="fa fa-cog"></i> {lang="notification_options"}</a>
|
|
<a class="ipsButton ipsButton_link" href="{url="app=core&module=system&controller=notifications&format=rss" seoTemplate="notifications_rss"}"><i class="fa fa-rss"></i> {lang="rss"}</a>
|
|
</div>
|
|
</div>
|
|
<div class='ipsBox'>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="notificationsAjax" template_data="$notifications" template_location="front" template_app="core"><![CDATA[{{if empty( $notifications )}}
|
|
<li class='ipsDataItem ipsDataItem_unread'>
|
|
<div class='ipsPad ipsType_light ipsType_center ipsType_normal'>{lang="no_results_notifications"}</div>
|
|
</li>
|
|
{{else}}
|
|
{{foreach $notifications as $notification}}
|
|
<li class='ipsDataItem {{if !$notification['notification']->read_time}}ipsDataItem_unread{{endif}}' itemprop="itemListElement">
|
|
<div class='ipsDataItem_icon'>
|
|
{{if isset( $notification['data']['author'] )}}
|
|
{template="userPhoto" app="core" group="global" params="$notification['data']['author'], 'mini'"}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<a href="{$notification['data']['url']}">
|
|
<span class='ipsDataItem_title'>{$notification['data']['title']}</span>
|
|
<br>
|
|
<span class="ipsType_light">{datetime="$notification['notification']->sent_time"}</span>
|
|
</a>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="notificationsRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
{{foreach $rows as $notification}}
|
|
{{if isset( $notification['data']['title'] )}}
|
|
<li class='ipsDataItem {{if $notification['data']['unread']}}ipsDataItem_unread{{endif}} ipsClearfix' itemprop="itemListElement">
|
|
<div class='ipsDataItem_icon'>
|
|
{{if isset( $notification['data']['author'] )}}
|
|
{template="userPhoto" app="core" group="global" params="$notification['data']['author'], 'tiny'"}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
{{if !$notification['data']['unread']}}
|
|
<span class="ipsItemStatus ipsItemStatus_small ipsItemStatus_read">
|
|
<i class="fa fa-circle"></i>
|
|
</span>
|
|
<strong>
|
|
{{endif}}
|
|
<a href="{$notification['data']['url']}" class='ipsDataItem_title'>{$notification['data']['title']}</a>
|
|
{{if !$notification['data']['unread']}}
|
|
</strong>
|
|
{{endif}}
|
|
<br>
|
|
<span class="ipsType_light">{datetime="$notification['notification']->sent_time"}</span>
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="system" template_name="notificationsSettings" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('notification_options')"}
|
|
<form accept-charset='utf-8' action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
|
|
<div class='ipsAreaBackground ipsPad' data-controller='core.front.system.notificationSettings'>
|
|
<div class='ipsGrid ipsGrid_collapsePhone ipsAreaBackground_reset ipsPad ipsSpacer_bottom'>
|
|
<ul class="ipsForm ipsForm_vertical ipsGrid_span8">
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
|
|
{{if !( $input instanceof \IPS\Helpers\Form\Matrix )}}
|
|
<li class='ipsFieldRow ipsFieldRow_checkbox' {{if $input->htmlId}}id="{$input->htmlId}"{{endif}}>
|
|
{{if $input instanceof \IPS\Helpers\Form\CheckboxSet or $input instanceof \IPS\Helpers\Form\Radio}}
|
|
<strong class='ipsType_normal'>{lang="$input->name"}</strong>
|
|
{{endif}}
|
|
{$input->html()|raw}
|
|
|
|
{{if !( $input instanceof \IPS\Helpers\Form\CheckboxSet ) && !( $input instanceof \IPS\Helpers\Form\Radio )}}
|
|
<div class="ipsFieldRow_content">
|
|
<{{if $input instanceof \IPS\Helpers\Form\Checkbox}}label for="check_{$input->htmlId}"{{else}}span{{endif}} class="ipsType_normal">{lang="$input->name"}</{{if $input instanceof \IPS\Helpers\Form\Checkbox}}label{{else}}span{{endif}}>
|
|
{{if \IPS\Member::loggedIn()->language()->checkKeyExists("{$input->name}_desc") }}
|
|
<span class='ipsFieldRow_desc'>{lang="{$input->name}_desc"}</span>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
<div class='ipsGrid_span4 ipsPad ipsHide' data-role='browserNotifyInfo'>
|
|
|
|
</div>
|
|
</div>
|
|
<div class='ipsAreaBackground ipsType_center'>
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if $input instanceof \IPS\Helpers\Form\Matrix}}
|
|
<br>
|
|
<div class='ipsBox'>
|
|
{$input->nested()|raw}
|
|
<div class='ipsAreaBackground ipsPad ipsType_center'>
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
|
|
<br>
|
|
|
|
</form>]]></template>
|
|
<template template_group="system" template_name="notificationsTable" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[<div class='ipsPageHeader ipsClearfix ipsSpacer_bottom'>
|
|
<h1 class='ipsType_pageTitle'>{lang="notifications"}</h1>
|
|
<div class="ipsPos_right">
|
|
<a class="ipsButton ipsButton_light ipsButton_verySmall" href="{url="app=core&module=system&controller=notifications&do=options" seoTemplate="notifications_options"}"><i class="fa fa-cog"></i> {lang="notification_options"}</a>
|
|
<a class="ipsButton ipsButton_light ipsButton_verySmall" href="{url="app=core&module=system&controller=notifications&format=rss" seoTemplate="notifications_rss"}"><i class="fa fa-rss"></i> {lang="rss"}</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class='ipsBox'>
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if count( $rows )}}
|
|
<ol class='ipsDataList ipsClear cForumTopicTable {{foreach $table->classes as $class}}{$class} {{endforeach}}' id='elTable_{$table->uniqueId}' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
<meta itemprop="itemListOrder" content="Descending">
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
{{else}}
|
|
<div class='ipsType_center'>
|
|
<p class='ipsType_large'>{lang="notifications_none"}</p>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="notValidated" template_data="$validating=array()" template_location="front" template_app="core"><![CDATA[<section class='ipsType_center ipsPad'>
|
|
<br><br>
|
|
<i class='ipsType_huge fa fa-envelope'></i>
|
|
<h1 class='ipsType_veryLarge'>{lang="reg_confirm_email"}</h1>
|
|
|
|
<p class='ipsType_large'>
|
|
{lang="reg_confirm_email_desc" sprintf="\IPS\Member::loggedIn()->email"}
|
|
</p>
|
|
<p class='ipsType_large'>
|
|
{lang="reg_confirm_email_must"}
|
|
</p>
|
|
<hr class='ipsHr'>
|
|
<p class='ipsType_normal'>
|
|
<a href='{url="app=core&module=system&controller=register&do=resend" seoTemplate="register"}' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="reg_resend_email"}</a>
|
|
<a href='{url="app=core&module=system&controller=register&do=changeEmail" seoTemplate="register"}' data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="reg_change_email"}' data-ipsDialog-modal='true' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="reg_change_email"}</a>
|
|
<a href='{url="app=core&module=system&controller=login&do=logout" csrf="true" seoTemplate="logout"}' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="sign_out"}</a>
|
|
{{if $validating['new_reg']}}
|
|
<a href='{url="app=core&module=system&controller=register&do=cancel" csrf="true" seoTemplate="register"}' class='ipsButton ipsButton_light ipsButton_verySmall'>{lang="reg_cancel"}</a>
|
|
{{endif}}
|
|
</p>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="offline" template_data="$message" template_location="front" template_app="core"><![CDATA[<div id='ipsLayout_mainArea'>
|
|
<h1 class='ipsType_pageTitle'>{lang='offline_unavailable' sprintf='\IPS\Settings::i()->board_name'}</h1>
|
|
<br>
|
|
<div class='ipsRichText ipsType_normal'>
|
|
{$message|raw}
|
|
</div>
|
|
<br>
|
|
{{if member.member_id}}
|
|
<a href='{url="app=core&module=system&controller=logout" seoTemplate="logout" csrf="1"}' class='ipsButton ipsButton_medium ipsButton_primary'>{lang='sign_out'}</a>
|
|
{{else}}
|
|
<a href='{url="app=core&module=system&controller=login" seoTemplate="login"}' class='ipsButton ipsButton_medium ipsButton_primary'>{lang='login'}</a>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="privacy" template_data="" template_location="front" template_app="core"><![CDATA[{template="pageHeader" if="!\IPS\Request::i()->isAjax()" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('privacy')"}
|
|
<div class='ipsType_normal ipsType_richText ipsPad'>
|
|
{lang="privacy_text_value"}
|
|
{{if \IPS\Settings::i()->site_address and \IPS\Settings::i()->site_address != "null"}}
|
|
<p>{setting="board_name"}, {address="\IPS\Settings::i()->site_address"}</p>
|
|
{{endif}}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="system" template_name="reconfirmTerms" template_data="$terms, $privacy, $form" template_location="front" template_app="core"><![CDATA[<div class="ipsType_large ipsSpacer_bottom">
|
|
{{if $terms and $privacy}}
|
|
{lang="reconfirm_terms_and_policy_blurb"}
|
|
{{elseif $terms}}
|
|
{lang="reconfirm_terms_blurb"}
|
|
{{else}}
|
|
{lang="reconfirm_privacy_blurb"}
|
|
{{endif}}
|
|
</div>
|
|
|
|
{{if $terms}}
|
|
<div class="ipsSpacer_bottom">
|
|
<h2 class="ipsType_sectionHead">{lang="reg_terms"}</h2>
|
|
<div class='ipsType_normal ipsType_richText ipsPad'>
|
|
{lang="reg_rules_value"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $privacy}}
|
|
<div class="ipsSpacer_bottom">
|
|
<h2 class="ipsType_sectionHead">{lang="privacy"}</h2>
|
|
<div class='ipsType_normal ipsType_richText ipsPad'>
|
|
{lang="privacy_text_value"}
|
|
{{if \IPS\Settings::i()->site_address and \IPS\Settings::i()->site_address != "null"}}
|
|
<p>{setting="board_name"}, {address="\IPS\Settings::i()->site_address"}</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
{$form|raw}]]></template>
|
|
<template template_group="system" template_name="register" template_data="$form, $login" template_location="front" template_app="core"><![CDATA[
|
|
<section class='ipsPad'>
|
|
<br>
|
|
<h1 class='ipsType_veryLarge ipsType_center ipsType_reset'>{lang='sign_up'}</h1>
|
|
<p class='ipsType_large ipsType_center ipsType_light'>{lang="existing_user"} <a href='{url="app=core&module=system&controller=login" seoTemplate="login"}'>{lang="sign_in_short"}</a></p>
|
|
<br>
|
|
|
|
<div data-role='registerForm'>
|
|
<div class='ipsColumns ipsColumns_collapseTablet'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
<div class='ipsBox ipsPad'>
|
|
{$form|raw}
|
|
</div>
|
|
</div>
|
|
{{if count ( $login->forms( FALSE, TRUE ) ) > 1}}
|
|
<div class='ipsColumn ipsColumn_wide' id='elRegisterSocial'>
|
|
<div class='ipsBox ipsPad'>
|
|
<h2 class='ipsType_sectionHead'>{lang='reg_start_faster'}</h2>
|
|
<p class='ipsType_normal ipsType_reset ipsType_light'>{lang='reg_connect'}</p>
|
|
<br>
|
|
{{foreach $login->forms( FALSE, TRUE ) as $k => $form}}
|
|
{{if $k !== '_standard'}}
|
|
<div class='ipsPad_half ipsType_center'>
|
|
{$form|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="registerWrapper" template_data="$content" template_location="front" template_app="core"><![CDATA[
|
|
<div id='elRegisterForm' class='ipsPos_center ipsPad' data-controller='core.front.system.register'>
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="resetPass" template_data="$form" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('lost_password')"}
|
|
<div class='ipsLayout_contentSection'>
|
|
{lang="reset_pass_instructions"}
|
|
<br>
|
|
<br>
|
|
{$form|raw}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="searchResult" template_data="$indexData, $articles, $authorData, $itemData, $unread, $objectUrl, $itemUrl, $containerUrl, $containerTitle, $repCount, $showRepUrl, $snippet, $iPostedIn, $view" template_location="front" template_app="core"><![CDATA[<li class='ipsStreamItem ipsStreamItem_contentBlock ipsStreamItem_{$view} ipsAreaBackground_reset ipsPad {{if $indexData['index_hidden']}}ipsModerated{{endif}}' data-role='activityItem' data-timestamp='{$indexData['index_date_created']}'>
|
|
<div class='ipsStreamItem_container ipsClearfix'>
|
|
{{if in_array( 'IPS\Content\Comment', class_parents( $indexData['index_class'] ) )}}
|
|
{{$itemClass = $indexData['index_class']::$itemClass;}}
|
|
<div class='ipsStreamItem_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
{{if $indexData['index_title']}}
|
|
<span class='ipsStreamItem_contentType' data-ipsTooltip title='{lang="$itemClass::$title"}'><i class='fa fa-{$itemClass::$icon}'></i></span>
|
|
{{else}}
|
|
<span class='ipsStreamItem_contentType' data-ipsTooltip title='{lang="$indexData['index_class']::$title"}'><i class='fa fa-{$indexData['index_class']::$icon}'></i></span>
|
|
{{endif}}
|
|
{template="userPhotoFromData" group="global" app="core" params="$authorData['member_id'], $authorData['name'], $authorData['members_seo_name'], \IPS\Member::photoUrl( $authorData ), ( $view !== 'condensed' ) ? 'mini' : 'tiny'"}
|
|
<div class='{{if $unread}}ipsStreamItem_unread{{endif}}'>
|
|
{{if $view == 'condensed' && $snippet}}
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_small'>
|
|
{$snippet|raw}
|
|
<div>
|
|
{{endif}}
|
|
<h2 class='ipsType_reset ipsStreamItem_title ipsType_break {{if !$indexData['index_title'] or $view == 'condensed'}}ipsStreamItem_titleSmall{{endif}}'>
|
|
{{if $unread}}
|
|
<a href='{$objectUrl->stripQueryString( array( 'comment' => 'comment', 'review' => 'review' ) )->setQueryString( 'do', 'getNewComment' )}' title='{lang="first_unread_post"}' data-ipsTooltip>
|
|
<span class='ipsItemStatus'><i class="fa fa-{{if $iPostedIn}}star{{else}}circle{{endif}}"></i></span>
|
|
</a>
|
|
{{elseif $iPostedIn}}
|
|
<span class='ipsItemStatus ipsItemStatus_read ipsItemStatus_posted'><i class="fa fa-star"></i></span>
|
|
{{endif}}
|
|
<a href='{$objectUrl}' data-searchable>{$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['title'] ]}</a>
|
|
{{if $indexData['index_hidden']}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_warning ipsBadge_small" data-ipsTooltip title='{lang="hidden"}'><i class='fa fa-eye-slash'></i></span>
|
|
{{endif}}
|
|
{{if $indexData['index_tags'] and $view == 'condensed'}}
|
|
{template="tags" group="global" app="core" params="explode( ',', $indexData['index_tags'] ), true, true"}
|
|
{{endif}}
|
|
</h2>
|
|
{{if $view != 'condensed'}}
|
|
<p class='ipsType_reset ipsStreamItem_status ipsType_light ipsType_blendLinks'>
|
|
{{if in_array( 'IPS\Content\Review', class_parents( $indexData['index_class'] ) )}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_review" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_review" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $itemClass::$firstCommentRequired}}
|
|
{{if $indexData['index_title']}}
|
|
{lang="user_own_activity_item" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_reply" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_reply" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{else}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_comment" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_comment" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{else}}
|
|
<ul class='ipsList_inline ipsStreamItem_stats ipsType_light ipsType_blendLinks'>
|
|
<li>
|
|
<a href='{{if $indexData['index_title']}}{$objectUrl}{{else}}{$objectUrl->setQueryString( array( 'do' => 'findComment', 'comment' => $indexData['index_object_id'] ) )}{{endif}}' class='ipsType_blendLinks'><i class='fa fa-clock-o'></i> {datetime="$indexData['index_date_created']"}</a>
|
|
</li>
|
|
{{if isset( $itemClass::$databaseColumnMap['num_comments'] ) and isset( $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ] ) and $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ] > ( $itemClass::$firstCommentRequired ? 1 : 0 )}}
|
|
<li>
|
|
<a href='{$itemUrl}#comments' class='ipsType_blendLinks'>
|
|
{{if $itemClass::$firstCommentRequired}}
|
|
<i class='fa fa-comment'></i> {expression="$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ]-1"}
|
|
{{else}}
|
|
<i class='fa fa-comment'></i> {expression="$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ]"}
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $itemClass::$databaseColumnMap['num_reviews'] ) and isset( $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_reviews'] ] ) and $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_reviews'] ]}}
|
|
<li>
|
|
<a href='{$itemUrl}#reviews' class='ipsType_blendLinks'><i class='fa fa-star-half-o'></i> {$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_reviews'] ]}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
<p class='ipsStreamItem_status ipsType_reset ipsType_blendLinks'>
|
|
{{if in_array( 'IPS\Content\Review', class_parents( $indexData['index_class'] ) )}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_review" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_review" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{else}}
|
|
{{if $itemClass::$firstCommentRequired}}
|
|
{{if $indexData['index_title']}}
|
|
{lang="user_own_activity_item" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_reply" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_reply" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{else}}
|
|
{{if isset( $itemData['author'] )}}
|
|
{lang="user_other_activity_comment" sprintf="$authorData['name'], $itemData['author']['name'], $articles['definite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{else}}
|
|
{lang="user_own_activity_comment" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
</p>
|
|
{{endif}}
|
|
|
|
{{if $view == 'condensed' && $snippet}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{if $view !== 'condensed'}}
|
|
<div class='ipsStreamItem_snippet ipsType_break'>
|
|
{$snippet|raw}
|
|
</div>
|
|
<ul class='ipsList_inline ipsStreamItem_meta'>
|
|
<li class='ipsType_light ipsType_medium'>
|
|
<a href='{{if $indexData['index_title']}}{$objectUrl}{{else}}{$objectUrl->setQueryString( array( 'do' => 'findComment', 'comment' => $indexData['index_object_id'] ) )}{{endif}}' class='ipsType_blendLinks'><i class='fa fa-clock-o'></i> {datetime="$indexData['index_date_created']"}</a>
|
|
</li>
|
|
{{if isset( $itemClass::$databaseColumnMap['num_comments'] ) and isset( $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ] ) and $itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ] > ( $itemClass::$firstCommentRequired ? 1 : 0 )}}
|
|
<li class='ipsType_light ipsType_medium'>
|
|
<a href='{$itemUrl}' class='ipsType_blendLinks'>
|
|
{{if $itemClass::$firstCommentRequired}}
|
|
<i class='fa fa-comment'></i> {lang="num_replies" pluralize="$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ] - 1"}
|
|
{{else}}
|
|
<i class='fa fa-comment'></i> {lang="num_comments" pluralize="$itemData[ $itemClass::$databasePrefix . $itemClass::$databaseColumnMap['num_comments'] ]"}
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if in_array( 'IPS\Content\Reputation', class_implements( $indexData['index_class'] ) ) and settings.reputation_enabled && $repCount}}
|
|
<li class='ipsType_light ipsType_medium'>{template="reputationMini" group="global" app="core" params="$repCount, FALSE, FALSE, $showRepUrl, NULL"}</li>
|
|
{{endif}}
|
|
{{if $indexData['index_tags']}}
|
|
<li>{template="tags" group="global" app="core" params="explode( ',', $indexData['index_tags'] ), true, true"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
{{else}}
|
|
<div class='ipsStreamItem_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
|
<span class='ipsStreamItem_contentType' data-ipsTooltip title='{lang="$indexData['index_class']::$title" ucfirst="true"}'><i class='fa fa-{$indexData['index_class']::$icon}'></i></span>
|
|
{template="userPhotoFromData" group="global" app="core" params="$authorData['member_id'], $authorData['name'], $authorData['members_seo_name'], \IPS\Member::photoUrl( $authorData ), ( $view !== 'condensed' ) ? 'mini' : 'tiny'"}
|
|
<div class='{{if $unread}}ipsStreamItem_unread{{endif}}'>
|
|
{{if $view == 'condensed' && $snippet}}
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_small'>
|
|
{$snippet|raw}
|
|
<div>
|
|
{{endif}}
|
|
<h2 class='ipsType_reset ipsStreamItem_title ipsType_break {{if $view == 'condensed'}}ipsStreamItem_titleSmall{{endif}}'>
|
|
{{if $unread}}
|
|
<a href='{$objectUrl->setQueryString( 'do', 'getNewComment' )}' title='{lang="first_unread_post"}' data-ipsTooltip>
|
|
<span class='ipsItemStatus'><i class="fa fa-{{if $iPostedIn}}star{{else}}circle{{endif}}"></i></span>
|
|
</a>
|
|
{{elseif $iPostedIn}}
|
|
<span class='ipsItemStatus ipsItemStatus_read ipsItemStatus_posted'><i class="fa fa-star"></i></span>
|
|
{{endif}}
|
|
<a href='{$itemUrl}' data-searchable>{$indexData['index_title']}</a>
|
|
{{if $indexData['index_hidden']}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_warning ipsBadge_small" data-ipsTooltip title='{lang="hidden"}'><i class='fa fa-eye-slash'></i></span>
|
|
{{endif}}
|
|
{{if $indexData['index_tags'] and $view == 'condensed'}}
|
|
{template="tags" group="global" app="core" params="explode( ',', $indexData['index_tags'] ), true, true"}
|
|
{{endif}}
|
|
</h2>
|
|
{{if $view != 'condensed'}}
|
|
<p class='ipsType_reset ipsStreamItem_status ipsType_light ipsType_blendLinks'>{lang="user_own_activity_item" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a></p>
|
|
{{else}}
|
|
<ul class='ipsList_inline ipsStreamItem_stats ipsType_light ipsType_blendLinks'>
|
|
<li>
|
|
<a href='{$objectUrl}' class='ipsType_blendLinks'><i class='fa fa-clock-o'></i> {datetime="$indexData['index_date_created']"}</a>
|
|
</li>
|
|
{{if isset( $indexData['index_class']::$databaseColumnMap['num_comments'] ) and isset( $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] ) and $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] > ( $indexData['index_class']::$firstCommentRequired ? 1 : 0 )}}
|
|
<li>
|
|
<a href='{$itemUrl}#comments' class='ipsType_blendLinks'>
|
|
{{if $indexData['index_class']::$firstCommentRequired}}
|
|
<i class='fa fa-comment'></i> {expression="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] - 1"}
|
|
{{else}}
|
|
<i class='fa fa-comment'></i> {expression="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ]"}
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $indexData['index_class']::$databaseColumnMap['num_reviews'] ) and isset( $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ] ) and $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ]}}
|
|
<li>
|
|
<a href='{$itemUrl}#reviews' class='ipsType_blendLinks'><i class='fa fa-star-half-o'></i> {expression="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ]"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
<p class='ipsStreamItem_status ipsType_reset ipsType_blendLinks'>
|
|
{lang="user_own_activity_item" sprintf="$authorData['name'], $articles['indefinite']"} <a href='{$containerUrl}'>{$containerTitle}</a>
|
|
</p>
|
|
{{endif}}
|
|
|
|
{{if $view == 'condensed' && $snippet}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{if $view !== 'condensed'}}
|
|
<div class='ipsStreamItem_snippet ipsType_break'>
|
|
{$snippet|raw}
|
|
</div>
|
|
<ul class='ipsList_inline ipsStreamItem_meta'>
|
|
<li class='ipsType_light ipsType_medium'>
|
|
<a href='{$objectUrl}' class='ipsType_blendLinks'><i class='fa fa-clock-o'></i> {datetime="$indexData['index_date_created']"}</a>
|
|
</li>
|
|
{{if isset( $indexData['index_class']::$databaseColumnMap['num_comments'] ) and isset( $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] ) and $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] > ( $indexData['index_class']::$firstCommentRequired ? 1 : 0 )}}
|
|
<li class='ipsType_light ipsType_medium'>
|
|
<a href='{$itemUrl}#comments' class='ipsType_blendLinks'>
|
|
{{if $indexData['index_class']::$firstCommentRequired}}
|
|
<i class='fa fa-comment'></i> {lang="num_replies" pluralize="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ] - 1"}
|
|
{{else}}
|
|
<i class='fa fa-comment'></i> {lang="num_comments" pluralize="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_comments'] ]"}
|
|
{{endif}}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if isset( $indexData['index_class']::$databaseColumnMap['num_reviews'] ) and isset( $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ] ) and $itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ]}}
|
|
<li class='ipsType_light ipsType_medium'>
|
|
<a href='{$itemUrl}#reviews' class='ipsType_blendLinks'><i class='fa fa-star-half-o'></i> {lang="num_reviews" pluralize="$itemData[ $indexData['index_class']::$databasePrefix . $indexData['index_class']::$databaseColumnMap['num_reviews'] ]"}</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if in_array( 'IPS\Content\Reputation', class_implements( $indexData['index_class'] ) ) and settings.reputation_enabled and $repCount}}
|
|
<li class='ipsType_light ipsType_medium'>{template="reputationMini" group="global" app="core" params="$repCount, FALSE, FALSE, $showRepUrl, NULL"}</li>
|
|
{{endif}}
|
|
{{if $indexData['index_tags']}}
|
|
<li>{template="tags" group="global" app="core" params="explode( ',', $indexData['index_tags'] ), true, true"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="system" template_name="searchResultSnippet" template_data="$indexData" template_location="front" template_app="core"><![CDATA[{{if trim( $indexData['index_content'] ) !== ''}}
|
|
<div class='ipsType_richText ipsContained ipsType_medium'>
|
|
<div {{if !( \IPS\Dispatcher::i()->application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' )}}data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='3 lines'{{else}}data-searchable data-findTerm{{endif}}>
|
|
{$indexData['index_content']|raw}
|
|
</div>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="settings" template_data="$tab, $output, $canChangeEmail, $canChangePassword, $canChangeUsername, $canChangeSignature, $services" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('settings'), \IPS\Member::loggedIn()->language()->addToStack('settings_blurb')"}
|
|
<div class='ipsTabs ipsTabs_withIcons ipsTabs_contained ipsTabs_stretch ipsClearfix' id='elSettingsTabs' data-ipsTabBar data-ipsTabBar-contentArea='#elProfileTabContent'>
|
|
<a href='#elSettingsTabs' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role='tablist' class='ipsList_reset'>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings" seoTemplate="settings"}' id='setting_overview' class='ipsTabs_item {{if $tab === 'overview'}}ipsTabs_activeItem{{endif}}' title="{lang="overview"}" role="tab" aria-selected="true">
|
|
<i class='fa fa-tachometer'></i> {lang="overview"}
|
|
</a>
|
|
</li>
|
|
{{if $canChangeEmail}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings&area=email" seoTemplate="settings_email"}' id='setting_email' class='ipsTabs_item {{if $tab === 'email'}}ipsTabs_activeItem{{endif}}' title="{lang="email_address"}" role="tab" aria-selected="false">
|
|
<i class='fa fa-envelope-o'></i> {lang="email_address"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if $canChangePassword}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings&area=password" seoTemplate="settings_password"}' id='setting_password' class='ipsTabs_item {{if $tab === 'password'}}ipsTabs_activeItem{{endif}}' title="{lang="password"}" role="tab" aria-selected="false">
|
|
<i class='fa fa-lock'></i> {lang="password"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if $canChangeUsername}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings&area=username" seoTemplate="settings_username"}' id='setting_username' class='ipsTabs_item {{if $tab === 'username'}}ipsTabs_activeItem{{endif}}' title="{lang="username"}" role="tab" aria-selected="false">
|
|
<i class='fa fa-user'></i> {lang="username"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{if $canChangeSignature}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings&area=signature" seoTemplate="settings_signature"}' id='setting_signature' class='ipsTabs_item {{if $tab === 'signature'}}ipsTabs_activeItem{{endif}}' title="{lang="signature"}" role="tab" aria-selected="false">
|
|
<i class='fa fa-pencil'></i> {lang="signature"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{foreach $services as $k => $class}}
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=settings&area=profilesync&service={$k}" seoTemplate="settings_{$k}"}' id='setting_profilesync_{$k}' class='ipsTabs_item {{if $tab === "profilesync_{$k}"}}ipsTabs_activeItem{{endif}}' title="{lang="profilesync__{$k}"}" role="tab" aria-selected="false">
|
|
<i class='fa fa-{$class::$icon}'></i> {lang="profilesync__{$k}"}
|
|
</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<section id='elProfileTabContent' class='ipsTabs_contained ipsTabs_panels'>
|
|
<div id="ipsTabs_elSettingsTabs_setting_{$tab}_panel" class="ipsTabs_panel" aria-labelledby="setting_overview" aria-hidden="false">
|
|
{$output|raw}
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="system" template_name="settingsEmail" template_data="$form=null" template_location="front" template_app="core"><![CDATA[<h2 class='ipsType_sectionHead'>{lang="change_email_address"}</h2>
|
|
{{if $form}}
|
|
<br><br>
|
|
{{if \IPS\Settings::i()->reg_auth_type == 'user' or \IPS\Settings::i()->reg_auth_type == 'admin_user'}}
|
|
<div class='ipsType_textBlock ipsType_normal'>
|
|
<ul class='ipsList_bullets'>
|
|
<li>{lang="change_email_explain_1"}</li>
|
|
<li>
|
|
{lang="change_email_explain_2"}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<br><hr class='ipsHr'><br>
|
|
{{endif}}
|
|
{$form|raw}
|
|
{{else}}
|
|
<hr class='ipsHr'><br>
|
|
<div class='ipsType_normal'>
|
|
{lang="change_email_admin_1"}
|
|
</div>
|
|
|
|
<ol class='ipsList_bullets ipsList_numbers ipsSpacer_top ipsType_normal'>
|
|
<li>{lang="change_email_admin_2"}</li>
|
|
<li>{lang="change_email_admin_3" sprintf="\IPS\Member::loggedIn()->name"}</li>
|
|
<li>{lang="change_email_admin_4"}</li>
|
|
<li>{lang="change_email_admin_5"}</li>
|
|
</ol>
|
|
{{endif}}]]></template>
|
|
<template template_group="system" template_name="settingsOverview" template_data="$services" template_location="front" template_app="core"><![CDATA[<div class='ipsColumns ipsColumns_collapsePhone'>
|
|
<div class='ipsColumn ipsColumn_fluid'>
|
|
<ul class='ipsDataList'>
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><strong>{lang="username"}</strong></h4><br>
|
|
{member="name"}
|
|
</div>
|
|
</li>
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><strong>{lang="email_address"}</strong></h4><br>
|
|
{member="email"}
|
|
</div>
|
|
</li>
|
|
{{if \IPS\Member::loggedIn()->members_pass_hash}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'><strong>{lang="password"}</strong></h4><br>
|
|
********
|
|
</div>
|
|
</li>
|
|
{{endif}}
|
|
{{foreach $services as $k => $service}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_main'>
|
|
{{if $service->connected()}}
|
|
<h4 class='ipsDataItem_title'><span class='ipsBadge ipsBadge_positive'>{lang="enabled"}</span> <strong>{lang="profilesync__{$k}"}</strong></h4><br>
|
|
{{if $service->name()}}
|
|
{lang="profilesync_logged_in_as" sprintf="$service->name()"}<br>
|
|
{{endif}}
|
|
<span class='ipsType_light'>{$service->settingsDesc()}</span>
|
|
{{else}}
|
|
<h4 class='ipsDataItem_title'><span class='ipsBadge ipsBadge_negative'>{lang="disabled"}</span> <strong>{lang="profilesync__{$k}"}</strong></h4><br>
|
|
<span class='ipsType_light'>{lang="profilesync_not_syncing"}</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
<div class='ipsColumn ipsColumn_wide ipsAreaBackground_light'>
|
|
<div class='ipsPad'>
|
|
{{$thisMemberID = \IPS\Member::loggedIn()->member_id;}}
|
|
<h3 class='ipsType_sectionHead'>{lang="other_settings"}</h3>
|
|
<br><br>
|
|
<ul class='ipsList ipsList_reset ipsType_medium'>
|
|
<li><a href='{url="app=core&module=system&controller=notifications&do=options" seoTemplate="notifications_options"}'>{lang="notification_options"}</a></li>
|
|
<li><a href='{expression="\IPS\Member::loggedIn()->url()->setQueryString( 'do', 'edit' )"}' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='{lang="profile_edit"}'>{lang="profile_edit"}</a></li>
|
|
<li><a href='{url="app=core&module=members&controller=ignore" seoTemplate="ignore"}'>{lang="menu_manage_ignore"}</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="settingsPassword" template_data="$form=null" template_location="front" template_app="core"><![CDATA[<h2 class='ipsType_sectionHead'>{lang="change_password"}</h2>
|
|
<hr class='ipsHr'><br>
|
|
{{if $form}}
|
|
{$form|raw}
|
|
{{else}}
|
|
<div class='ipsType_normal'>
|
|
{lang="change_password_admin_1"}
|
|
</div>
|
|
|
|
<ol class='ipsList_bullets ipsList_numbers ipsSpacer_top ipsType_normal'>
|
|
<li>{lang="change_password_admin_2"}</li>
|
|
<li>{lang="change_password_admin_3" sprintf="\IPS\Member::loggedIn()->name"}</li>
|
|
<li>{lang="change_password_admin_4"}</li>
|
|
<li>{lang="change_password_admin_5"}</li>
|
|
</ol>
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="system" template_name="settingsProfileSync" template_data="$photo, $headline, $status, $form, $service, $langKey, $syncingOn" template_location="front" template_app="core"><![CDATA[<div class='ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix'>
|
|
<img src='{$photo}' alt='' class='ipsUserPhoto ipsUserPhoto_mini'>
|
|
<div>
|
|
<h2 class='ipsType_sectionHead'>{$headline}</h2>
|
|
{{if $status}}
|
|
<p class='ipsType_reset ipsType_light ipsType_normal' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='3 lines'>
|
|
{$status->content|raw}
|
|
</p>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<br><hr class='ipsHr'>
|
|
|
|
<div class='ipsGrid ipsGrid_collapsePhone'>
|
|
<div class='ipsGrid_span6'>
|
|
<h3 class='ipsType_sectionHead'>{lang="profilesync_options"}</h3>
|
|
<br><br>
|
|
{$form|raw}
|
|
</div>
|
|
<div class='ipsGrid_span6'>
|
|
|
|
<div class='ipsAreaBackground ipsPad ipsType_normal'>
|
|
{lang="profilesync_sync_blurb"}<br>
|
|
<span class='ipsType_light'>{{if \IPS\Member::loggedIn()->profilesync_lastsync}}{lang="profilesync_last_sync" sprintf="\IPS\DateTime::ts( \IPS\Member::loggedIn()->profilesync_lastsync )->localeDate()"}{{else}}{lang="profilesync_not_synced"}{{endif}}</span>
|
|
<br><br>
|
|
|
|
{{if $syncingOn}}<a href='{url="app=core&module=system&controller=settings&area=profilesync&service={$service}&sync=1" seoTemplate="settings_{$service}"}' class='ipsButton ipsButton_normal ipsButton_small'>{lang="profilesync_sync"}</a> {lang="or"} {{endif}}<a href='{url="app=core&module=system&controller=settings&area=profilesync&service={$service}&disassociate=1" seoTemplate="settings_{$service}"}' class='ipsType_normal ipsType_warning'>{lang="profilesync_off" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $langKey )"}</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="system" template_name="settingsProfileSyncLogin" template_data="$form, $langKey" template_location="front" template_app="core"><![CDATA[<p class="ipsMessage ipsMessage_info">{lang="profilesync_blurb" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $langKey ), \IPS\Member::loggedIn()->language()->addToStack( $langKey )"}</p>
|
|
<div class='ipsPad ipsAreaBackground ipsPos_center'>{$form|raw}</div>]]></template>
|
|
<template template_group="system" template_name="settingsSignature" template_data="$form, $sigLimits" template_location="front" template_app="core"><![CDATA[
|
|
{{if $sigLimits[1] or $sigLimits[2] or $sigLimits[3] or $sigLimits[4] or $sigLimits[5]}}
|
|
<h2 class='ipsType_sectionHead'>{lang="signature_restrictions"}</h2>
|
|
<p class='ipsType_medium ipsType_reset'>
|
|
{lang="ensure_signature_restrictions"}:
|
|
</p>
|
|
|
|
<div class='ipsType_textBlock ipsType_normal'>
|
|
<br>
|
|
<ul class='ipsList_inline'>
|
|
{{if $sigLimits[1]}}
|
|
<li><i class='fa fa-check'></i> {lang="sig_max_imagesr" pluralize="$sigLimits[1]"}</li>
|
|
{{endif}}
|
|
{{if $sigLimits[2] or $sigLimits[3]}}
|
|
<li><i class='fa fa-check'></i> {lang="sig_max_imgsize" sprintf="$sigLimits[2], $sigLimits[3]"}</li>
|
|
{{endif}}
|
|
{{if $sigLimits[4]}}
|
|
<li><i class='fa fa-check'></i> {lang="sig_max_urls" pluralize="$sigLimits[4]"}</li>
|
|
{{endif}}
|
|
{{if $sigLimits[5]}}
|
|
<li><i class='fa fa-check'></i> {lang="sig_max_lines" pluralize="$sigLimits[5]"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
<hr class='ipsHr'><br>
|
|
{{endif}}
|
|
{$form|raw}
|
|
]]></template>
|
|
<template template_group="system" template_name="settingsUsername" template_data="$form, $made, $allowed, $since, $days" template_location="front" template_app="core"><![CDATA[<h2 class='ipsType_sectionHead'>{lang="change_username"}</h2>
|
|
{{if \IPS\Member::loggedIn()->group['g_dname_changes'] != -1}}
|
|
<div class='ipsType_textBlock ipsType_normal'>
|
|
<ul class='ipsList_bullets'>
|
|
<li>{lang="change_username_explain" sprintf="$made, $allowed, $since->localeDate(), $days" pluralize="$allowed"}</li>
|
|
</ul>
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
<hr class='ipsHr'><br>
|
|
{$form|raw}
|
|
]]></template>
|
|
<template template_group="system" template_name="settingsUsernameLimitReached" template_data="$message" template_location="front" template_app="core"><![CDATA[<h2 class='ipsType_sectionHead'>{lang="change_username"}</h2>
|
|
<hr class='ipsHr'><br>
|
|
{$message|raw}
|
|
]]></template>
|
|
<template template_group="system" template_name="systemLogView" template_data="$title, $content" template_location="admin" template_app="core"><![CDATA[
|
|
<div class='acpBlock'>
|
|
<h2 class='acpBlock_title'>$title</h2>
|
|
<br>
|
|
<div class="ipsAreaBackground_light ipsPad">
|
|
<pre class='logview'>{$content}</pre>
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="terms" template_data="" template_location="front" template_app="core"><![CDATA[{{if !\IPS\Request::i()->isAjax()}}
|
|
{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('reg_terms')"}
|
|
{{endif}}
|
|
<div class='ipsType_normal ipsType_richText ipsPad'>
|
|
{lang="reg_rules_value"}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="unsubscribed" template_data="" template_location="front" template_app="core"><![CDATA[{template="pageHeader" group="global" params="\IPS\Member::loggedIn()->language()->addToStack('unsubscribed')"}
|
|
<div class='ipsLayout_contentSection'>
|
|
{lang="unsubscribed_desc"}
|
|
</div>]]></template>
|
|
<template template_group="system" template_name="upgradeDeltaFailed" template_data="$error, $deltaDownloadUrl" template_location="admin" template_app="core"><![CDATA[<div class="ipsPad">
|
|
<div class="ipsSpacer_bottom">
|
|
<h2 class='ipsType_sectionHead'>{lang="download_upgrade_error"}</h2>
|
|
</div>
|
|
<div class="ipsSpacer_bottom">
|
|
<p>{lang="delta_upgrade_manual"}</p>
|
|
<div class="ipsType_center">
|
|
{{if $deltaDownloadUrl}}
|
|
<a href="{$deltaDownloadUrl}" class="ipsButton ipsButton_important ipsButton_large"><i class="fa fa-cloud-download"></i> {lang="delta_upgrade_download"}</a>
|
|
<p><a href="{url="client_area" ips="true"}" target="_blank">{lang="delta_upgrade_download_full"}</a></p>
|
|
{{else}}
|
|
<a href="{url="client_area" ips="true"}" class="ipsButton ipsButton_important ipsButton_large" target="_blank">{lang="delta_upgrade_go_to_clientarea"}</a>
|
|
{{endif}}
|
|
</div>
|
|
<p>{lang="delta_upgrade_manual_footer"}</p>
|
|
</div>
|
|
<div class="ipsSpacer_bottom ipsType_light ipsType_small">
|
|
{{if is_array( $error )}}
|
|
<p>{lang="delta_upgrade_md5_fail"}</p>
|
|
<ul>
|
|
{{foreach $error as $file}}
|
|
<li>{$file}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<a href="{url="app=core&module=system&controller=upgrade&check=1"}" class="ipsButton ipsButton_primary">{lang="continue"}</a>
|
|
</div>
|
|
]]></template>
|
|
<template template_group="system" template_name="upgradeSelectVersion" template_data="$id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="admin" template_app="core"><![CDATA[{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{foreach $input->options['options'] as $longVersion => $humanVersion}}
|
|
<form accept-charset='utf-8' action="{$action}" method="post">
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
{{if is_array($v)}}
|
|
{{foreach $v as $_k => $_v}}
|
|
<input type="hidden" name="{$k}[{$_k}]" value="{$_v}">
|
|
{{endforeach}}
|
|
{{else}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endif}}
|
|
{{endforeach}}
|
|
<input type="hidden" name="version" value="{$longVersion}">
|
|
<div class="ipsAreaBackground_reset ipsPad">
|
|
<h2 class='ipsType_sectionHead'>{lang="dashboard_version_info" sprintf="$humanVersion"}</h2>
|
|
{{if $input->options['_details'][ $longVersion ]['security']}}
|
|
<p><strong class="ipsType_warning">{lang="this_is_a_security_update"}</strong></p>
|
|
{{endif}}
|
|
{{if $input->options['_details'][ $longVersion ]['releasenotes']}}
|
|
<div>{$input->options['_details'][ $longVersion ]['releasenotes']|raw}</div>
|
|
{{endif}}
|
|
</div>
|
|
<div class="ipsAreaBackground_light ipsClearfix ipsPad ipsType_center">
|
|
<input type="submit" class="ipsButton ipsButton_primary" value="{lang="continue"}">
|
|
{{if $input->options['_details'][ $longVersion ]['updateurl']}}
|
|
<a href='{$input->options['_details'][ $longVersion ]['updateurl']}' target="_blank" class='ipsButton ipsButton_alternate ipsButton_small'>{lang="dashboard_version_moreinfo"}</a>
|
|
{{endif}}
|
|
</div>
|
|
</form>
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
]]></template>
|
|
<template template_group="system" template_name="warningRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[
|
|
{{foreach $rows as $row}}
|
|
<li class="ipsDataItem {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}} ">
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
<a href="{url="app=core&module=system&controller=warnings&id={$row->member}&w={$row->id}" seoTemplate="warn_view" seoTitle="\IPS\Member::load( $row->member )->members_seo_name"}" data-ipsDialog data-ipsDialog-size='narrow' class="ipsType_blendLinks" data-ipsTooltip title='{lang="wan_action_points" pluralize="$row->points"}'>
|
|
<span class="ipsPoints">{$row->points}</span>
|
|
</a>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'>
|
|
<a href='{$row->url()}' title='{lang="view_announcement"}' {{if $row->tableHoverUrl}}data-ipsHover{{endif}}>
|
|
{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}
|
|
</a>
|
|
</h4>
|
|
{{if $row->note_member}}
|
|
<div class='ipsDataItem_meta ipsType_richText ipsType_medium' data-ipsTruncate data-ipsTruncate-size='1 lines' data-ipsTruncate-type='remove'>
|
|
{lang="warn_member_note"}: {$row->note_member|raw}
|
|
</div>
|
|
{{endif}}
|
|
{{if $row->note_mods and member.modPermission('mod_see_warn')}}
|
|
<div class='ipsDataItem_meta ipsType_richText ipsType_medium' data-ipsTruncate data-ipsTruncate-size='1 lines' data-ipsTruncate-type='remove'>
|
|
{lang="warn_mod_note"}: {$row->note_mods|raw}
|
|
</div>
|
|
{{endif}}
|
|
<ul class='ipsList_inline ipsSpacer_top ipsSpacer_half'>
|
|
{{if \IPS\Settings::i()->warnings_acknowledge}}
|
|
<li>
|
|
{{if $row->acknowledged}}
|
|
<strong class='ipsType_success'><i class='fa fa-check-circle'></i> {lang="warning_acknowledged"}</strong>
|
|
{{else}}
|
|
<strong class='ipsType_light'><i class='fa fa-circle-o'></i> {lang="warning_not_acknowledged"}</strong>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
<li class='ipsType_light'>{lang="warned_by" sprintf="\IPS\Member::load( $row->moderator )->name"}{datetime="$row->__get( $row::$databaseColumnMap['date'] )"} {{if $row->expire_date > 0}}<em><strong>({lang="warning_expires" sprintf="\IPS\DateTime::ts( $row->expire_date )"})</em></strong>{{endif}}</li>
|
|
</div>
|
|
{{if $row->canDelete()}}
|
|
<div class='ipsDataItem_generic ipsDataItem_size3'>
|
|
<a href="{$row->url('delete')->csrf()}" title='{lang="revoke_this_warning"}' data-action="revoke" class='ipsPos_right ipsButton ipsButton_verySmall ipsButton_light' data-ipsDialog data-ipsDialog-title='{lang="revoke_this_warning"}' data-ipsDialog-size='medium'><i class="fa fa-undo"></i> {lang="revoke_this_warning"}</a>
|
|
</div>
|
|
{{endif}}
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck ipsType_noBreak ipsPos_center'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{{if !$row->active}}hidden{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="tables" template_name="commentRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
<li class='ipsDataItem'>
|
|
{{$idField = $row::$databaseColumnId;}}
|
|
<article itemscope itemtype="http://schema.org/Comment" id='elComment_{$row->$idField}' class='ipsComment {{if in_array( 'IPS\Content\Reputation', class_implements( $row ) ) and settings.reputation_highlight and $row->reputation() >= settings.reputation_highlight}}ipsComment_popular{{endif}} ipsComment_parent ipsClearfix ipsClear {{if $row->hidden()}}ipsModerated{{endif}}'>
|
|
|
|
{{if in_array( 'IPS\Content\Reputation', class_implements( $row ) ) and settings.reputation_highlight and $row->reputation() >= settings.reputation_highlight}}
|
|
<strong class='ipsComment_popularFlag' data-ipsTooltip title='{lang="this_is_a_popular_comment"}'><i class='fa fa-heart'></i></strong>
|
|
{{endif}}
|
|
|
|
<div id='comment-{$row->$idField}_wrap' class='ipsComment_content ipsType_normal ipsClearfix'>
|
|
{{if $table->canModerate() and ( $row->canSplit() or ( $row->hidden() === -1 AND $row->canUnhide() ) or ( $row->hidden() === 1 AND $row->canUnhide() ) or $row->canDelete() )}}
|
|
<div class='ipsDataItem_modCheck ipsPos_right'>
|
|
<span class='ipsCustomInput'>
|
|
<input type="checkbox" name="moderate[{$row->$idField}]" value="1" data-role="moderation" data-actions="{{if $row->canSplit()}}split merge{{endif}} {{if $row->hidden() === -1 AND $row->canUnhide()}}unhide{{elseif $row->hidden() === 1 AND $row->canUnhide()}}approve{{elseif $row->canHide()}}hide{{endif}} {{if $row->canDelete()}}delete{{endif}}" data-state='{{if $row->tableStates()}}{$row->tableStates()}{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsComment_header'>
|
|
{$row->contentTableHeader()|raw}
|
|
</div>
|
|
|
|
<div class='ipsPad_half'>
|
|
<div class='ipsAreaBackground_reset ipsPad'>
|
|
{{if \IPS\Request::i()->controller == 'activity'}}
|
|
<div class='ipsPhotoPanel ipsPhotoPanel_mini ipsClearfix'>
|
|
{template="userPhoto" group="global" app="core" params="$row->author(), 'mini'"}
|
|
<div>
|
|
<h3 class='ipsType_reset ipsType_normal'>{$row->author()->link()|raw}</h3>
|
|
{{endif}}
|
|
<p class='ipsComment_meta ipsType_light ipsType_medium ipsType_blendLinks'>
|
|
<a href='{$row->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $row->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$row->dateLine()|raw}</a>
|
|
{{if $row->editLine()}}
|
|
· {$row->editLine()|raw}
|
|
{{endif}}
|
|
{{if $row->hidden()}}
|
|
· {$row->hiddenBlurb()}
|
|
{{endif}}
|
|
{{if $row instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and $row->hidden() !== 1 }}
|
|
· <a href='{$row->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report_post"}" data-action='reportComment' title='{lang="report_content"}'><span class='ipsResponsive_showPhone ipsResponsive_inline'><i class='fa fa-flag'></i></span><span class='ipsResponsive_hidePhone ipsResponsive_inline'>{lang="report_post"}</span></a>
|
|
{{endif}}
|
|
</p>
|
|
{{if \IPS\Request::i()->controller == 'activity'}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<hr class='ipsHr'>
|
|
<div data-role='commentContent' class='ipsType_break ipsType_richText ipsContained' data-controller='core.front.core.lightboxedImages'>
|
|
{{if $row->hidden() === 1 && $row->author()->member_id == \IPS\Member::loggedIn()->member_id}}
|
|
<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
|
|
{{endif}}
|
|
{$row->content()|raw}
|
|
</div>
|
|
{{if $row->hidden() !== 1 && $row instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
|
{template="reputation" group="global" app="core" params="$row"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</article>
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="tables" template_name="container" template_data="$table, $header=NULL" template_location="front" template_app="core"><![CDATA[<div class='ipsPad'>
|
|
<h1 class='ipsType_pageTitle'>{{if $header}}{$header}{{else}}{expression="\IPS\Output::i()->title"}{{endif}}</h1>
|
|
<br>
|
|
{$table|raw}
|
|
</div>]]></template>
|
|
<template template_group="tables" template_name="content" template_data="$content" template_location="admin" template_app="core"><![CDATA[<div data-ipsTruncate data-ipsTruncate-size="5 lines">
|
|
{$content|raw}
|
|
</div>]]></template>
|
|
<template template_group="tables" template_name="icon" template_data="$class" template_location="front" template_app="core"><![CDATA[<i class='fa fa-{$class::$icon}'></i> {lang="$class::$title"}]]></template>
|
|
<template template_group="tables" template_name="manageFollowNodeRow" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
{{$contentItemClass = $row::$contentItemClass;}}
|
|
<li class="ipsDataItem {{if $contentItemClass::containerUnread( $row )}}ipsDataItem_unread{{endif}} {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}}" data-controller='core.front.system.manageFollowed' data-followID='{$row->_followData['follow_area']}-{$row->_followData['follow_rel_id']}'>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsType_sectionHead'>
|
|
{{if $row->_locked}}
|
|
<i class="fa fa-lock"></i>
|
|
{{endif}}
|
|
|
|
<a href='{$row->url()}'>
|
|
{$row->_title}
|
|
</a>
|
|
</h4>
|
|
<div class='ipsDataItem_meta ipsType_light' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
|
{$row->_description}
|
|
</div>
|
|
<ul class='ipsList_inline ipsType_light'>
|
|
{{if $row->_items}}
|
|
<li>{lang="node_content_items" pluralize="$row->_items"}</li>
|
|
{{endif}}
|
|
{{if $row->_comments}}
|
|
<li>{lang="node_content_comments" pluralize="$row->_comments"}</li>
|
|
{{endif}}
|
|
{{if $row->_reviews}}
|
|
<li>{lang="node_content_reviews" pluralize="$row->_reviews"}</li>
|
|
{{endif}}
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center ipsType_large'>
|
|
<span class='ipsBadge ipsBadge_icon ipsBadge_new {{if !$row->_followData['follow_is_anon']}}ipsHide{{endif}}' data-role='followAnonymous' data-ipsTooltip title='{lang="follow_is_anon"}'><i class='fa fa-eye-slash'></i></span>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6'>
|
|
<ul class='ipsList_reset'>
|
|
<li title='{lang="follow_when"}' data-role='followDate'><i class='fa fa-clock-o'></i> {datetime="$row->_followData['follow_added']"}</li>
|
|
<li title='{lang="follow_how"}' data-role='followFrequency'>
|
|
{{if $row->_followData['follow_notify_freq'] == 'none'}}
|
|
<i class='fa fa-bell-slash-o'></i>
|
|
{{else}}
|
|
<i class='fa fa-bell'></i>
|
|
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6 ipsType_center'>
|
|
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
|
|
</div>
|
|
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state=''>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="tables" template_name="manageFollowRow" template_data="$table, $headers, $rows, $includeFirstCommentInCommentCount=TRUE" template_location="front" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
{{foreach $rows as $row}}
|
|
{{$idField = $row::$databaseColumnId;}}
|
|
<li class="ipsDataItem ipsDataItem_responsivePhoto {{if $row->unread()}}ipsDataItem_unread{{endif}} {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}} {{if $row->hidden()}}ipsModerated{{endif}}" data-controller='core.front.system.manageFollowed' data-followID='{$row->_followData['follow_area']}-{$row->_followData['follow_rel_id']}'>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title ipsType_break ipsType_normal'>
|
|
{{if $row->mapped('locked')}}
|
|
<i class="fa fa-lock"></i>
|
|
{{endif}}
|
|
|
|
{{if $row->mapped('pinned') || $row->mapped('featured') || $row->hidden() === -1 || $row->hidden() === 1}}
|
|
<span>
|
|
{{if $row->hidden() === -1}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$row->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span>
|
|
{{elseif $row->hidden() === 1}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span>
|
|
{{endif}}
|
|
{{if $row->mapped('pinned')}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span>
|
|
{{endif}}
|
|
{{if $row->mapped('featured')}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span>
|
|
{{endif}}
|
|
</span>
|
|
{{endif}}
|
|
|
|
{{if $row->prefix()}}
|
|
{template="prefix" group="global" app="core" params="$row->prefix( TRUE ), $row->prefix()"}
|
|
{{endif}}
|
|
|
|
<a href='{$row->url()}'>
|
|
{{if $row->mapped('title')}}{wordbreak="$row->mapped('title')"}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}
|
|
</a>
|
|
</h4>
|
|
<div class='ipsDataItem_meta ipsType_light ipsType_blendLinks' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
|
{{if method_exists( $row, 'tableDescription' )}}
|
|
{$row->tableDescription()|raw}
|
|
{{else}}
|
|
{lang="byline" htmlsprintf="$row->author()->link( $row->warningRef() )"}{datetime="$row->__get( $row::$databaseColumnMap['date'] )"}
|
|
{lang="in"} <a href="{$row->container()->url()}">{$row->container()->_title}</a>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center ipsType_large'>
|
|
<span class='ipsBadge ipsBadge_icon ipsBadge_new {{if !$row->_followData['follow_is_anon']}}ipsHide{{endif}}' data-role='followAnonymous' data-ipsTooltip title='{lang="follow_is_anon"}'><i class='fa fa-eye-slash'></i></span>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6'>
|
|
<ul class='ipsList_reset'>
|
|
<li title='{lang="follow_when"}' data-role='followDate'><i class='fa fa-clock-o'></i> {datetime="$row->_followData['follow_added']"}</li>
|
|
<li title='{lang="follow_how"}' data-role='followFrequency'>
|
|
{{if $row->_followData['follow_notify_freq'] == 'none'}}
|
|
<i class='fa fa-bell-slash-o'></i>
|
|
{{else}}
|
|
<i class='fa fa-bell'></i>
|
|
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class='ipsDataItem_generic ipsDataItem_size6 ipsType_center'>
|
|
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
|
|
</div>
|
|
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->$idField}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{{if $row->tableStates()}}{$row->tableStates()}{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="tables" template_name="nodeRows" template_data="$table, $headers, $rows" template_location="front" template_app="core"><![CDATA[{{foreach $rows as $row}}
|
|
{{$contentItemClass = $row::$contentItemClass;}}
|
|
<li class="ipsDataItem {{if $contentItemClass::containerUnread( $row )}}ipsDataItem_unread{{endif}} {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}}">
|
|
{{if method_exists( $row, 'tableIcon' )}}
|
|
<div class='ipsDataItem_icon ipsType_center ipsType_noBreak'>
|
|
{$row->tableIcon()|raw}
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title'>
|
|
{{if $contentItemClass::containerUnread( $row )}}
|
|
<span class='ipsBadge ipsBadge_new'>{lang="new"}</span>
|
|
{{endif}}
|
|
|
|
{{if $row->_locked}}
|
|
<i class="fa fa-lock"></i>
|
|
{{endif}}
|
|
|
|
<a href='{$row->url()}'>
|
|
{$row->_title}
|
|
</a>
|
|
</h4>
|
|
<div class='ipsDataItem_meta ipsType_light' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
|
{$row->_description}
|
|
</div>
|
|
</div>
|
|
<ul class='ipsDataItem_stats'>
|
|
<li>
|
|
<span class='ipsDataItem_stats_number'>{number="$row->_items"}</span>
|
|
<span class='ipsDataItem_stats_type'>{lang="node_content_items" pluralize="$row->_items"}</span>
|
|
</li>
|
|
<li>
|
|
<span class='ipsDataItem_stats_number'>{number="$row->_comments"}</span>
|
|
<span class='ipsDataItem_stats_type'>{lang="node_content_comments" pluralize="$row->_comments"}</span>
|
|
</li>
|
|
<li>
|
|
<span class='ipsDataItem_stats_number'>{number="$row->_reviews"}</span>
|
|
<span class='ipsDataItem_stats_type'>{lang="node_content_reviews" pluralize="$row->_reviews"}</span>
|
|
</li>
|
|
</ul>
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state=''>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endforeach}}]]></template>
|
|
<template template_group="tables" template_name="rows" template_data="$table, $headers, $rows" template_location="admin" template_app="core"><![CDATA[{{if empty( $rows )}}
|
|
<tr>
|
|
<td colspan="{expression="count( $headers )"}">
|
|
<div class='ipsPad_double ipsType_light'>
|
|
{lang="no_results"}
|
|
{{if ( isset( $table->rootButtons['add'] ) )}}
|
|
|
|
<a
|
|
{{if isset( $table->rootButtons['add']['link'] )}}href='{$table->rootButtons['add']['link']}'{{endif}}
|
|
title='{lang="$table->rootButtons['add']['title']"}'
|
|
class='ipsButton ipsButton_alternate ipsButton_small {{if isset( $table->rootButtons['add']['class'] )}}{$table->rootButtons['add']['class']}{{endif}}'
|
|
role="button"
|
|
{{if isset( $table->rootButtons['add']['data'] )}}
|
|
{{foreach $table->rootButtons['add']['data'] as $k => $v}}
|
|
data-{$k}="{$v}"
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if isset( $table->rootButtons['add']['hotkey'] )}}
|
|
data-keyAction='{$table->rootButtons['add']['hotkey']}'
|
|
{{endif}}
|
|
>{lang="$table->rootButtons['add']['title']"}</a>
|
|
{{endif}}
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
{{else}}
|
|
{{foreach $rows as $r}}
|
|
<tr class='ipsClearfix' data-keyNavBlock>
|
|
{{foreach $r as $k => $v}}
|
|
<td class='{{if $k === 'photo'}}ipsTable_icon{{endif}} {{if $k === $table->mainColumn}}ipsTable_primary ipsType_break{{endif}} {{if $k === '_buttons'}}ipsTable_controls{{endif}}' {{if $k !== $table->mainColumn && $k !== '_buttons' && $k !== 'photo'}}data-title="{lang="{$table->langPrefix}{$k}"}"{{endif}}>
|
|
{{if $k === '_buttons'}}
|
|
{template="controlStrip" params="$v" group="global" app="core"}
|
|
{{else}}
|
|
{$v|raw}
|
|
{{endif}}
|
|
</td>
|
|
{{endforeach}}
|
|
</tr>
|
|
{{endforeach}}
|
|
{{endif}}]]></template>
|
|
<template template_group="tables" template_name="rows" template_data="$table, $headers, $rows, $includeFirstCommentInCommentCount=TRUE" template_location="front" template_app="core"><![CDATA[{{$rowIds = array();}}
|
|
{{foreach $rows as $row}}
|
|
{{$idField = $row::$databaseColumnId;}}
|
|
{{$rowIds[] = $row->$idField;}}
|
|
{{endforeach}}
|
|
{{if count( $rows )}}
|
|
{{foreach $rows as $row}}
|
|
{{$idField = $row::$databaseColumnId;}}
|
|
{{if $row->mapped('moved_to')}}
|
|
{{if $movedTo = $row->movedTo()}}
|
|
<li class="ipsDataItem">
|
|
<div class='ipsDataItem_icon ipsType_center ipsType_noBreak'>
|
|
<i class="fa fa-arrow-left ipsType_large"></i>
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title ipsType_break'>
|
|
<em><a href='{$movedTo->url()}' title='{lang="go_to_new_location"}'>{wordbreak="$row->mapped('title')"}</a></em>
|
|
</h4>
|
|
<div class='ipsDataItem_meta'>
|
|
<p class='ipsType_reset ipsType_light ipsType_blendLinks'>{lang="moved_to" sprintf="$movedTo->container()->url(), $movedTo->container()->_title"}</p>
|
|
</div>
|
|
</div>
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->$idField}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{{if $row->mapped('pinned')}}pinned{{endif}} {{if $row->mapped('featured')}}featured{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{else}}
|
|
<li class="ipsDataItem ipsDataItem_responsivePhoto {{if $row->unread()}}ipsDataItem_unread{{endif}} {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}} {{if $row->hidden()}}ipsModerated{{endif}}">
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
{{if $row->unread()}}
|
|
<a href='{$row->url( 'getNewComment' )}' title='{lang="first_unread_post"}' data-ipsTooltip>
|
|
{{if $row->containerWrapper() AND in_array( $row->$idField, $row->containerWrapper()->contentPostedIn( null, $rowIds ) )}}
|
|
<span class='ipsItemStatus'><i class="fa fa-star"></i></span>
|
|
{{else}}
|
|
<span class='ipsItemStatus'><i class="fa fa-circle"></i></span>
|
|
{{endif}}
|
|
</a>
|
|
{{else}}
|
|
{{if $row->containerWrapper() AND in_array( $row->$idField, $row->containerWrapper()->contentPostedIn( null, $rowIds ) )}}
|
|
<span class='ipsItemStatus ipsItemStatus_read ipsItemStatus_posted'><i class="fa fa-star"></i></span>
|
|
{{else}}
|
|
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<h4 class='ipsDataItem_title ipsType_break'>
|
|
{{if $row->mapped('locked')}}
|
|
<i class="fa fa-lock"></i>
|
|
{{endif}}
|
|
|
|
{{if $row->mapped('pinned') || $row->mapped('featured') || $row->hidden() === -1 || $row->hidden() === 1}}
|
|
<span>
|
|
{{if $row->hidden() === -1}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$row->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span>
|
|
{{elseif $row->hidden() === 1}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span>
|
|
{{endif}}
|
|
{{if $row->mapped('pinned')}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span>
|
|
{{endif}}
|
|
{{if $row->mapped('featured')}}
|
|
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span>
|
|
{{endif}}
|
|
</span>
|
|
{{endif}}
|
|
|
|
{{if $row->prefix()}}
|
|
{template="prefix" group="global" app="core" params="$row->prefix( TRUE ), $row->prefix()"}
|
|
{{endif}}
|
|
|
|
<a href='{$row->url()}' {{if $row->tableHoverUrl and $row->canView()}}data-ipsHover data-ipsHover-target='{$row->url()->setQueryString('preview', 1)}'data-ipsHover{{endif}} {{if $row->canEdit()}}data-role="editableTitle"{{endif}}>
|
|
{{if $row->mapped('title')}}{wordbreak="$row->mapped('title')"}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}
|
|
</a>
|
|
</h4>
|
|
{{if $row->commentPageCount() > 1}}
|
|
{$row->commentPagination( array(), 'miniPagination' )|raw}
|
|
{{endif}}
|
|
<div class='ipsDataItem_meta ipsType_light ipsType_blendLinks' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
|
{{if method_exists( $row, 'tableDescription' )}}
|
|
{$row->tableDescription()|raw}
|
|
{{else}}
|
|
{lang="byline" htmlsprintf="$row->author()->link( $row->warningRef() )"}{datetime="$row->__get( $row::$databaseColumnMap['date'] )"}
|
|
{{if in_array( \IPS\Request::i()->controller, array( 'search' ) )}}
|
|
{lang="in"} <a href="{$row->container()->url()}">{$row->container()->_title}</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if count( $row->tags() )}}
|
|
|
|
{template="tags" group="global" app="core" params="$row->tags(), true, true"}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
<ul class='ipsDataItem_stats'>
|
|
{{foreach $row->stats( $includeFirstCommentInCommentCount ) as $k => $v}}
|
|
<li {{if in_array( $k, $row->hotStats )}}class="ipsDataItem_stats_hot" data-text='{lang="hot_item"}' data-ipsTooltip title='{lang="hot_item_desc"}'{{endif}}>
|
|
<span class='ipsDataItem_stats_number'>{number="$v"}</span>
|
|
<span class='ipsDataItem_stats_type'>{lang="$k" pluralize="$v"}</span>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<ul class='ipsDataItem_lastPoster ipsDataItem_withPhoto ipsType_blendLinks'>
|
|
<li>
|
|
{{if $row->mapped('num_comments')}}
|
|
{template="userPhoto" app="core" group="global" params="$row->lastCommenter(), 'tiny'"}
|
|
{{else}}
|
|
{template="userPhoto" app="core" group="global" params="$row->author(), 'tiny'"}
|
|
{{endif}}
|
|
</li>
|
|
<li>
|
|
{{if $row->mapped('num_comments')}}
|
|
{$row->lastCommenter()->link()|raw}
|
|
{{else}}
|
|
{$row->author()->link()|raw}
|
|
{{endif}}
|
|
</li>
|
|
<li class="ipsType_light">
|
|
{{if $row->mapped('last_comment')}}
|
|
<a href="{$row->url('getLastComment')}">{datetime="$row->mapped('last_comment')"}</a>
|
|
{{else}}
|
|
{datetime="$row->mapped('date')"}
|
|
{{endif}}
|
|
</li>
|
|
</ul>
|
|
{{if $table->canModerate()}}
|
|
<div class='ipsDataItem_modCheck'>
|
|
<span class='ipsCustomInput'>
|
|
<input type='checkbox' data-role='moderation' name="moderate[{$row->$idField}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{{if $row->tableStates()}}{$row->tableStates()}{{endif}}'>
|
|
<span></span>
|
|
</span>
|
|
</div>
|
|
{{endif}}
|
|
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="tables" template_name="subRow" template_data="$subResult" template_location="front" template_app="core"><![CDATA[
|
|
<li class='cSearchSubResult ipsPhotoPanel ipsPhotoPanel_tiny'>
|
|
{template="userPhoto" group="global" app="core" params="$subResult->author(), 'tiny'"}
|
|
<div>
|
|
<p class='ipsType_reset'>
|
|
{{if $subResult instanceof \IPS\Content\Review}}
|
|
<a href='{$subResult->url()}' title='{lang="go_to_this_review"}'>
|
|
<strong>{lang="search_user_reviewed" sprintf="$subResult->author()->name"} <span class='ipsType_light ipsType_unbold'>{datetime="$subResult->mapped('date')"}</span></strong>
|
|
</a>
|
|
{{else}}
|
|
<a href='{$subResult->url()}' title='{lang="go_to_this_post"}'>
|
|
<strong>{lang="search_user_commented" sprintf="$subResult->author()->name"} <span class='ipsType_light ipsType_unbold'>{datetime="$subResult->mapped('date')"}</span></strong>
|
|
</a>
|
|
{{endif}}
|
|
</p>
|
|
{{if $subResult instanceof \IPS\Content\Review}}
|
|
{template="rating" group="global" app="core" params="'tiny', $subResult->mapped('rating'), \IPS\Settings::i()->reviews_rating_out_of"}
|
|
{{endif}}
|
|
<div class='ipsType_richText ipsType_medium ipsType_break' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
|
{$subResult->truncated()|raw}
|
|
</div>
|
|
</div>
|
|
</li>]]></template>
|
|
<template template_group="tables" template_name="table" template_data="$table, $headers, $rows, $quickSearch" template_location="admin" template_app="core"><![CDATA[<div data-baseurl="{$table->baseUrl}" data-resort='{$table->resortKey}' data-controller="core.global.core.table">
|
|
<div class='ipsClearfix'>
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
<br>
|
|
{{endif}}
|
|
{template="buttons" params="$table->rootButtons, ''" group="global" app="core" if="isset( $headers['_buttons'] )"}
|
|
</div>
|
|
<div class="acpBlock ipsClear">
|
|
{{if $quickSearch !== NULL or $table->advancedSearch or !empty( $table->filters )}}
|
|
<div class='ipsClearfix ipsClear ipsPad acpWidgetToolbar ipsAreaBackground_dark' data-role="tableSortBar">
|
|
{{if $quickSearch !== NULL or $table->advancedSearch}}
|
|
{{if $table->advancedSearch}}
|
|
<a class='ipsPos_right acpWidgetSearch' data-ipsTooltip aria-label='{lang="search"}' href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="search"}'><i class='fa fa-cog'></i></a>
|
|
{{endif}}
|
|
{{if $quickSearch !== NULL}}
|
|
<input type='text' class='ipsField_short ipsPos_right acpTable_search ipsJS_show' data-role='tableSearch' results placeholder="{{if is_string( $quickSearch )}}{lang="search_prefix" sprintf="\IPS\Member::loggedIn()->language()->addToStack( $table->langPrefix . $quickSearch )"}{{else}}{lang="search"}{{endif}}" value="{expression="\IPS\Request::i()->quicksearch"}">
|
|
{{endif}}
|
|
{{endif}}
|
|
|
|
{{if !empty( $table->filters )}}
|
|
<div class='ipsButtonBar ipsClearfix ipsResponsive_showDesktop'>
|
|
<ul class='ipsButtonRow ipsPos_left ipsClearfix'>
|
|
<li data-action="tableFilter" data-filter="">
|
|
<a href='{$table->baseUrl->setQueryString( array( 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1', 'filter' => '' ) )}' class='{{if !array_key_exists( $table->filter, $table->filters )}}ipsButtonRow_active{{endif}}'>{lang="all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-action="tableFilter" data-filter="{$k}">
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}' class='{{if $k === $table->filter}}ipsButtonRow_active{{endif}}'>{lang="$k"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsButtonBar ipsClearfix ipsResponsive_hideDesktop ipsResponsive_block'>
|
|
{{if !empty( $table->filters )}}
|
|
<ul class='ipsButtonRow ipsPos_left ipsClearfix'>
|
|
<li>
|
|
<a href='#elFilterMenu_menu' data-role="tableFilterMenu" id='elFilterMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="filter"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterMenu_menu'>
|
|
<li data-ipsMenuValue='' class='ipsMenu_item {{if !array_key_exists( $table->filter, $table->filters )}}ipsMenu_itemChecked{{endif}}'><a href={$table->baseUrl->setQueryString( array( 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="all"}</a></li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}' data-action="tableFilter" data-ipsMenuValue='{$k}'><a href={$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="$k"}</a></li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
<ul class='ipsButtonRow ipsPos_left ipsClearfix'>
|
|
<li>
|
|
<a href='#elSortMenu_menu' id='elSortMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="sort_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elSortMenu_menu'>
|
|
{{foreach $headers as $k => $header}}
|
|
{{if $header !== '_buttons' && !in_array( $header, $table->noSort )}}
|
|
<li class='ipsMenu_item {{if $header == $table->sortBy}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue=$k>
|
|
{{if $header == $table->sortBy and $table->sortDirection == 'desc'}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $header, 'sortdirection' => 'desc' ) )}'>
|
|
{{else}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $header, 'sortdirection' => 'asc' ) )}'>
|
|
{{endif}}
|
|
{lang="{$table->langPrefix}{$header}"}
|
|
</a>
|
|
</li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href='#elOrderMenu_menu' id='elOrderMenu' data-ipsMenu data-ipsMenu-activeClass='ipsButtonRow_active' data-ipsMenu-selectable="radio">{lang="order_by"} <i class='fa fa-caret-down'></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elOrderMenu_menu'>
|
|
<li class='ipsMenu_item {{if $table->sortDirection == 'asc'}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='asc'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => 'asc' ) )}'>{lang="ascending"}</a>
|
|
</li>
|
|
<li class='ipsMenu_item {{if $table->sortDirection == 'desc'}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='desc'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => 'desc' ) )}'>{lang="descending"}</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
|
|
<div data-role="extraHtml">{$table->extraHtml|raw}</div>
|
|
|
|
<table class='ipsTable ipsTable_responsive ipsTable_zebra {{foreach $table->classes as $class}}{$class} {{endforeach}}' data-role="table" data-ipsKeyNav data-ipsKeyNav-observe='e d return'>
|
|
<thead>
|
|
<tr class='ipsAreaBackground'>
|
|
{{foreach $headers as $k => $header}}
|
|
{{if $header !== '_buttons'}}
|
|
<th class='{{if !in_array( $header, $table->noSort )}}ipsTable_sortable {{if $header == ( mb_strrpos( $table->sortBy, ',' ) !== FALSE ? trim( mb_substr( $table->sortBy, mb_strrpos( $table->sortBy, ',' ) + 1 ) ) : $table->sortBy )}}ipsTable_sortableActive ipsTable_sortable{{if $table->sortDirection == 'asc'}}Asc{{else}}Desc{{endif}} {{else}}ipsTable_sortableAsc{{endif}}{{endif}} {{if array_key_exists( $header, $table->classes )}}{$table->classes[ $header ]}{{endif}}' data-key="{$header}" {{if !in_array( $header, $table->noSort )}}data-action="tableSort" {{if $header == ( mb_strrpos( $table->sortBy, ',' ) !== FALSE ? trim( mb_substr( $table->sortBy, mb_strrpos( $table->sortBy, ',' ) + 1 ) ) : $table->sortBy )}}aria-sort="{{if $table->sortDirection == 'asc'}}ascending{{else}}descending{{endif}}"{{endif}}{{endif}} {{if isset( $table->widths[ $header ] )}}style="width: {$table->widths[ $header ]}%"{{endif}}>
|
|
{{if !in_array( $header, $table->noSort )}}
|
|
{{if $header == $table->sortBy and $table->sortDirection == 'desc'}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $header, 'sortdirection' => 'asc' ) )}'>
|
|
{{else}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $header, 'sortdirection' => 'desc' ) )}'>
|
|
{{endif}}
|
|
{lang="{$table->langPrefix}{$header}"}
|
|
<span class='ipsTable_sortIcon'></span>
|
|
</a>
|
|
{{else}}
|
|
{lang="{$table->langPrefix}{$header}"}
|
|
{{endif}}
|
|
</th>
|
|
{{elseif $header === '_buttons'}}
|
|
<th> </th>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
</tr>
|
|
</thead>
|
|
<tbody data-role="tableRows">
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</tbody>
|
|
</table>
|
|
<br>
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</div>]]></template>
|
|
<template template_group="tables" template_name="table" template_data="$table, $headers, $rows, $quickSearch" template_location="front" template_app="core"><![CDATA[<div data-baseurl='{$table->baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table{{if $table->canModerate()}},core.front.core.moderation{{endif}}' {{if $table->getPaginationKey() != 'page'}}data-pageParam='{$table->getPaginationKey()}'{{endif}}>
|
|
{{if $table->title}}
|
|
<h2 class='ipsType_sectionTitle ipsType_reset ipsClear'>{lang="$table->title"}</h2>
|
|
{{endif}}
|
|
|
|
{{if $table->canModerate() OR ( $table->showAdvancedSearch AND ( (isset( $table->sortOptions ) and !empty( $table->sortOptions )) OR $table->advancedSearch ) ) OR !empty( $table->filters ) OR $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
{{if $table->canModerate() AND $table->showFilters}}
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
<li>
|
|
<a class="ipsJS_show" href="#elCheck_menu" id="elCheck_{$table->uniqueId}" title='{lang="{$table->langPrefix}select_rows_tooltip"}' data-ipsTooltip data-ipsAutoCheck data-ipsAutoCheck-context="#elTable_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active">
|
|
<span class="cAutoCheckIcon ipsType_medium"><i class="fa fa-square-o"></i></span> <i class="fa fa-caret-down"></i>
|
|
<span class='ipsNotificationCount' data-role='autoCheckCount'>0</span>
|
|
</a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide" id="elCheck_{$table->uniqueId}_menu">
|
|
<li class="ipsMenu_title">{lang="{$table->langPrefix}select_rows"}</li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="all"><a href="#">{lang="all"}</a></li>
|
|
<li class="ipsMenu_item" data-ipsMenuValue="none"><a href="#">{lang="none"}</a></li>
|
|
{{if count($table->getFilters())}}
|
|
<li class="ipsMenu_sep"><hr></li>
|
|
{{foreach $table->getFilters() as $filter}}
|
|
{{if $filter}}
|
|
<li class="ipsMenu_item" data-ipsMenuValue="{$filter}"><a href="#">{lang="$filter"}</a></li>
|
|
{{else}}
|
|
<li class="ipsMenu_sep"><hr></li>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
{{endif}}
|
|
|
|
<ul class="ipsButtonRow ipsPos_right ipsClearfix">
|
|
{{if $table->showAdvancedSearch AND ( ( isset( $table->sortOptions ) and count( $table->sortOptions ) > 1 ) OR $table->advancedSearch )}}
|
|
<li>
|
|
{{if isset($table->sortOptions) }}
|
|
<a href="#elSortByMenu_menu" id="elSortByMenu_{$table->uniqueId}" data-role="sortButton" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="sort_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class="ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide" id="elSortByMenu_{$table->uniqueId}_menu">
|
|
{{$custom = TRUE;}}
|
|
{{foreach $table->sortOptions as $k => $col}}
|
|
<li class="ipsMenu_item {{if $col === $table->sortBy}}{{$custom = FALSE;}}ipsMenu_itemChecked{{endif}}" data-ipsMenuValue="{$col}" data-sortDirection='{{if $col == 'title'}}asc{{else}}desc{{endif}}'><a href="{$table->baseUrl->setQueryString( array( 'filter' => $table->filter, 'sortby' => $col, 'sortdirection' => ( $col == 'title' ) ? 'asc' : 'desc', 'page' => '1' ) )}">{lang="{$table->langPrefix}sort_{$k}"}</a></li>
|
|
{{endforeach}}
|
|
{{if $table->advancedSearch}}
|
|
<li class="ipsMenu_item {{if $custom}}ipsMenu_itemChecked{{endif}}" data-noSelect="true">
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
{{elseif $table->advancedSearch}}
|
|
<a href='{$table->baseUrl->setQueryString( array( 'advancedSearchForm' => '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) )}' data-ipsDialog data-ipsDialog-title='{lang="custom_sort"}'>{lang="custom"}</a>
|
|
{{endif}}
|
|
</li>
|
|
{{endif}}
|
|
{{if !empty( $table->filters )}}
|
|
<li>
|
|
<a href="#elFilterByMenu_{$table->uniqueId}_menu" data-role="tableFilterMenu" id="elFilterByMenu_{$table->uniqueId}" data-ipsMenu data-ipsMenu-activeClass="ipsButtonRow_active" data-ipsMenu-selectable="radio">{lang="filter_by"} <i class="fa fa-caret-down"></i></a>
|
|
<ul class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsMenu_selectable ipsHide' id='elFilterByMenu_{$table->uniqueId}_menu'>
|
|
<li data-action="tableFilter" data-ipsMenuValue='' class='ipsMenu_item {{if !$table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => '', 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}all"}</a>
|
|
</li>
|
|
{{foreach $table->filters as $k => $q}}
|
|
<li data-action="tableFilter" data-ipsMenuValue='{$k}' class='ipsMenu_item {{if $k === $table->filter}}ipsMenu_itemChecked{{endif}}'>
|
|
<a href='{$table->baseUrl->setQueryString( array( 'filter' => $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection, 'page' => '1' ) )}'>{lang="{$table->langPrefix}{$k}"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</li>
|
|
{{endif}}
|
|
</ul>
|
|
|
|
{{if $table->pages > 1}}
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->canModerate()}}
|
|
<form action="{$table->baseUrl}" method="post" data-role='moderationTools' data-ipsPageAction>
|
|
{{endif}}
|
|
{{if count( $rows )}}
|
|
<ol class='ipsDataList ipsClear {{foreach $table->classes as $class}}{$class} {{endforeach}}' id='elTable_{$table->uniqueId}' data-role="tableRows" itemscope itemtype="http://schema.org/ItemList">
|
|
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
|
|
</ol>
|
|
{{else}}
|
|
<div class='ipsType_center ipsPad'>
|
|
<p class='ipsType_large ipsType_light'>{lang="no_rows_in_table"}</p>
|
|
{{if method_exists( $table, 'container' ) AND $table->container() !== NULL}}
|
|
{{if $table->container()->can('add')}}
|
|
<a href='{$table->container()->url()->setQueryString( 'do', 'add' )}' class='ipsButton ipsButton_primary ipsButton_medium'>
|
|
{lang="submit_first_row"}
|
|
</a>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if $table->canModerate()}}
|
|
<div class="ipsAreaBackground ipsPad ipsClearfix" data-role="pageActionOptions">
|
|
<div class="ipsPos_right">
|
|
<select name="modaction" data-role="moderationAction">
|
|
{{if $table->canModerate('unhide')}}
|
|
<option value='approve' data-icon='check-circle'>{lang="approve"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('feature') or $table->canModerate('unfeature')}}
|
|
<optgroup label="{lang="feature"}" data-icon='star' data-action='feature'>
|
|
{{if $table->canModerate('feature')}}
|
|
<option value='feature'>{lang="feature"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('unhide')}}
|
|
<option value='unfeature'>{lang="unfeature"}</option>
|
|
{{endif}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if $table->canModerate('pin') or $table->canModerate('unpin')}}
|
|
<optgroup label="{lang="pin"}" data-icon='thumb-tack' data-action='pin'>
|
|
{{if $table->canModerate('pin')}}
|
|
<option value='pin'>{lang="pin"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('unpin')}}
|
|
<option value='unpin'>{lang="unpin"}</option>
|
|
{{endif}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if $table->canModerate('hide') or $table->canModerate('unhide')}}
|
|
<optgroup label="{lang="hide"}" data-icon='eye' data-action='hide'>
|
|
{{if $table->canModerate('hide')}}
|
|
<option value='hide'>{lang="hide"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('unhide')}}
|
|
<option value='unhide'>{lang="unhide"}</option>
|
|
{{endif}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if $table->canModerate('lock') or $table->canModerate('unlock')}}
|
|
<optgroup label="{lang="lock"}" data-icon='lock' data-action='lock'>
|
|
{{if $table->canModerate('lock')}}
|
|
<option value='lock'>{lang="lock"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('unlock')}}
|
|
<option value='unlock'>{lang="unlock"}</option>
|
|
{{endif}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if $table->canModerate('move')}}
|
|
<option value='move' data-icon='arrow-right'>{lang="move"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('split_merge')}}
|
|
<option value='merge' data-icon='level-up'>{lang="merge"}</option>
|
|
{{endif}}
|
|
{{if method_exists( $table, 'customActions' )}}
|
|
{{foreach $table->customActions() as $action}}
|
|
{{if is_array( $action['action'] ) }}
|
|
<optgroup label="{lang="$action['grouplabel']"}" data-icon='{$action['icon']}' data-action='{$action['groupaction']}'>
|
|
{{foreach $action['action'] as $_action}}
|
|
<option value='{$_action['action']}'>{lang="$_action['label']"}</option>
|
|
{{endforeach}}
|
|
</optgroup>
|
|
{{else}}
|
|
<option value='{$action['action']}' data-icon='{$action['icon']}'>{lang="$action['label']"}</option>
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endif}}
|
|
{{if $table->savedActions}}
|
|
<optgroup label="{lang="saved_actions"}" data-icon='tasks' data-action='saved_actions'>
|
|
{{foreach $table->savedActions as $k => $v}}
|
|
<option value='savedAction-{$k}'>{$v}</option>
|
|
{{endforeach}}
|
|
</optgroup>
|
|
{{endif}}
|
|
{{if $table instanceof \IPS\core\Followed\Table}}
|
|
<optgroup label="{lang="adjust_follow"}" data-icon='bell' data-action='adjust_follow'>
|
|
<option value='follow_immediate'>{lang="follow_type_immediate_prefixed"}</option>
|
|
<option value='follow_daily'>{lang="follow_type_daily_prefixed"}</option>
|
|
<option value='follow_weekly'>{lang="follow_type_weekly_prefixed"}</option>
|
|
<option value='follow_none'>{lang="follow_type_none"}</option>
|
|
</optgroup>
|
|
<optgroup label="{lang="adjust_follow_privacy"}" data-icon='ban' data-action='adjust_follow_privacy'>
|
|
<option value='follow_public'>{lang="follow_public"}</option>
|
|
<option value='follow_anonymous'>{lang="follow_anonymous"}</option>
|
|
</optgroup>
|
|
<option value='unfollow' data-icon='times'>{lang="unfollow"}</option>
|
|
{{endif}}
|
|
{{if $table->canModerate('delete')}}
|
|
<option value='delete' data-icon='trash'>{lang="delete"}</option>
|
|
{{endif}}
|
|
</select>
|
|
<button type="submit" class="ipsButton ipsButton_alternate ipsButton_verySmall">{lang="submit"}</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
{{endif}}
|
|
{{if $table->pages > 1}}
|
|
<div class="ipsButtonBar ipsPad_half ipsClearfix ipsClear">
|
|
<div data-role="tablePagination">
|
|
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, $table->getPaginationKey()"}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="trees" template_name="row" template_data="$url,$id,$title,$hasChildren=FALSE,$buttons=array(),$description='',$icon=NULL,$draggablePosition=NULL,$root=FALSE,$toggleStatus=NULL,$locked=NULL,$badge=NULL,$titleHtml=FALSE,$descriptionHtml=FALSE,$acceptsChildren=TRUE,$canBeRoot=TRUE" template_location="admin" template_app="core"><![CDATA[<div class='ipsTree_row {{if !$root and $draggablePosition !== NULL}}ipsTree_sortable{{endif}} {{if $hasChildren}}ipsTree_parent{{endif}} {{if !$canBeRoot}}ipsTree_noRoot{{endif}} {{if $root}}ipsTree_open ipsTree_noToggle ipsTree_root{{endif}} {{if $acceptsChildren}}ipsTree_acceptsChildren{{endif}}' data-nodeid='{$id}' data-keyNavBlock data-keyAction='right'>
|
|
{{if !$root and $draggablePosition !== NULL}}
|
|
<div class='ipsTree_drag ipsDrag'>
|
|
<i class='ipsTree_dragHandle ipsDrag_dragHandle fa fa-bars ipsJS_show' data-ipsTooltip data-ipsTooltip-label='{lang="reorder"}'></i>
|
|
<noscript>
|
|
<input name='order[{$id}]' value="{$draggablePosition}" size='2' type='text'>
|
|
</noscript>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsTree_rowData ipsClearfix'>
|
|
<h4>
|
|
{{if $icon !== NULL}}
|
|
<i class="{{if mb_substr( $icon, 0, 3 ) !== 'fa '}}fa fa-{{endif}}{$icon}"></i>
|
|
{{endif}}
|
|
{{if $hasChildren}}
|
|
<a href='{$url->setQueryString( array( 'root' => $id ) )}' class='ipsJS_preventEvent'>
|
|
{{if !$titleHtml}}
|
|
{$title}
|
|
{{else}}
|
|
{$title|raw}
|
|
{{endif}}
|
|
</a>
|
|
{{else}}
|
|
{{if !$titleHtml}}
|
|
{$title}
|
|
{{else}}
|
|
{$title|raw}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $toggleStatus !== NULL}}
|
|
{{if $locked}}
|
|
<span class='ipsPos_right ipsBadge {{if $toggleStatus}}ipsBadge_positive{{else}}ipsBadge_negative{{endif}} ipsCursor_locked'>{lang="locked"}</span>
|
|
{{else}}
|
|
{{if is_array($toggleStatus) }}
|
|
<span class='ipsPos_right' data-ipsStatusToggle>
|
|
<a href='{$url->setQueryString( array( 'do' => 'enableToggle', 'status' => '0', 'id' => $id, 'root' => \IPS\Request::i()->root ) )}' {{if !$toggleStatus['status']}}class='ipsHide'{{endif}} data-ipsDialog-title="{lang="turn_offline"}" data-ipsDialog data-ipsTooltip data-state="enabled" title='{lang="node_disable_row"}'>
|
|
<span class='ipsBadge ipsBadge_positive'>{lang="$toggleStatus['enabled_lang']"}</span>
|
|
</a>
|
|
<a href='{$url->setQueryString( array( 'do' => 'enableToggle', 'status' => '1', 'id' => $id, 'root' => \IPS\Request::i()->root ) )}' {{if $toggleStatus['status']}}class='ipsHide'{{endif}} data-ipsDialog-title="{lang="turn_offline"}" data-ipsDialog data-ipsTooltip data-state="disabled" title='{lang="node_enable_row"}'>
|
|
<span class='ipsBadge ipsBadge_{$toggleStatus['disabled_badge']}'>{lang="$toggleStatus['disabled_lang']"}</span>
|
|
</a>
|
|
</span>
|
|
{{else}}
|
|
<span class='ipsPos_right' data-ipsStatusToggle>
|
|
<a href='{$url->setQueryString( array( 'do' => 'enableToggle', 'status' => '0', 'id' => $id, 'root' => \IPS\Request::i()->root ) )}' {{if !$toggleStatus}}class='ipsHide'{{endif}} data-state="enabled" data-ipsTooltip title='{lang="node_disable_row" sprintf="$title"}'>
|
|
<span class='ipsTree_toggleEnable ipsBadge ipsBadge_positive'>{lang="enabled"}</span>
|
|
</a>
|
|
<a href='{$url->setQueryString( array( 'do' => 'enableToggle', 'status' => '1', 'id' => $id, 'root' => \IPS\Request::i()->root ) )}' {{if $toggleStatus}}class='ipsHide'{{endif}} data-state="disabled" data-ipsTooltip title='{lang="node_enable_row" sprintf="$title"}'>
|
|
<span class='ipsTree_toggleDisable ipsBadge ipsBadge_negative'>{lang="disabled"}</span>
|
|
</a>
|
|
</span>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $badge}}
|
|
<span class="ipsBadge ipsBadge_{$badge[0]}">{{if !empty($badge[2])}}{$badge[2]|raw}{{else}}{lang="$badge[1]"}{{endif}}</span>
|
|
{{endif}}
|
|
</h4>
|
|
{{if $description}}
|
|
{{if !$descriptionHtml}}
|
|
<div class="ipsType_light">{$description}</div>
|
|
{{else}}
|
|
<div class="ipsType_light">{$description|raw}</div>
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
<div class='ipsTree_controls'>
|
|
{template="controlStrip" params="$buttons, $url" group="global" app="core"}
|
|
</div>
|
|
</div>
|
|
{{if !$hasChildren}}
|
|
<ol class='ipsTree ipsTree_node'></ol>
|
|
{{endif}}]]></template>
|
|
<template template_group="trees" template_name="rows" template_data="$rows, $uniqid, $root=false" template_location="admin" template_app="core"><![CDATA[{{if count( $rows )}}
|
|
<ol class='ipsTree ipsTree_node'>
|
|
{{foreach $rows as $id => $row}}
|
|
<li id="sortable-{$uniqid}_{$id}" data-role="node" class='mjs-nestedSortable-collapsed'>
|
|
{$row|raw}
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
{{endif}}]]></template>
|
|
<template template_group="trees" template_name="template" template_data="$url,$title,$root,$rootParent,$rows,$rootButtons=array(),$lockParents=FALSE,$protectRoots=FALSE,$searchable=FALSE,$pagination=NULL" template_location="admin" template_app="core"><![CDATA[
|
|
{{if $rootButtons}}
|
|
<div class='ipsClearfix'>
|
|
{template="buttons" params="$rootButtons, $url" group="global" app="core"}
|
|
</div>
|
|
{{endif}}
|
|
|
|
{{if ( $searchable && !empty( $rows ) ) or ( request.root and !request.noshowroot )}}
|
|
<div class='acpBlock'>
|
|
<div class='acpWidgetToolbar ipsPad ipsAreaBackground_dark ipsClearfix ipsClear'>
|
|
{{if $searchable && !empty( $rows )}}
|
|
<input type='text' class='ipsPos_right ipsField_short acpTable_search ipsJS_show' id='tree_search' placeholder="{lang="search_prefix_nofield"}">
|
|
{{endif}}
|
|
{{if ( request.root and !request.noshowroot )}}
|
|
<a href='{$url}' class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-angle-double-left'></i> {lang="$title"}</a>
|
|
{{if $rootParent !== NULL}}
|
|
{{if is_object( $rootParent )}}
|
|
<a href='{$url->setQueryString( array( 'root' => $rootParent->_id ) )}' class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-angle-left'></i> {$rootParent->_title}</a>
|
|
{{else}}
|
|
<a href='{$url->setQueryString( array( 'root' => $rootParent ) )}' class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-angle-left'></i></a>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsTree_wrapper' data-ipsTree {{if $lockParents}}data-ipsTree-lockParents{{endif}} {{if $protectRoots}}data-ipsTree-protectRoots{{endif}} data-ipsTree-url='{{if request.root}}{$url->setQueryString( array( 'root' => \IPS\Request::i()->root ) )}{{else}}{$url}{{endif}}' data-ipsTree-searchable='#tree_search'>
|
|
{$root|raw}
|
|
{{if empty( $rows )}}
|
|
<div class='ipsType_light ipsPad'>
|
|
{lang="no_results"}
|
|
</div>
|
|
{{else}}
|
|
<form accept-charset='utf-8' action="{$url->setQueryString( array( 'root' => \IPS\Request::i()->root ?: 0, 'do' => 'reorder' ) )}" method="post" data-role="treeListing">
|
|
<div class='ipsTree_rows'>
|
|
{template="rows" group="trees" app="core" params="$rows, md5(uniqid()), true"}
|
|
</div>
|
|
<noscript>
|
|
<div class='ipsBlock_actionbar clearfix'>
|
|
<button class="left">{lang="reorder"}</button>
|
|
</div>
|
|
</noscript>
|
|
</form>
|
|
{{if $searchable}}
|
|
<div data-role="treeResults"></div>
|
|
{{endif}}
|
|
{{endif}}
|
|
{{if $pagination}}
|
|
<div class="ipsSpacer_top">
|
|
{$pagination|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="vse" template_name="globalTemplate" template_data="$vseCss, $customCss, $settings, $form, $values" template_location="front" template_app="core"><![CDATA[<!DOCTYPE html>
|
|
<html lang="{expression="\IPS\Member::loggedIn()->language()->bcp47()"}" dir="{{if member.language()->isrtl}}rtl{{else}}ltr{{endif}}">
|
|
<head>
|
|
<title>{lang="easy_mode_editor_title"}</title>
|
|
{template="includeCSS" app="core" group="global" location="global" params=""}
|
|
{template="includeJS" app="core" group="global" location="global" params=""}
|
|
<script type="text/javascript">
|
|
var ipsResumeVse = {
|
|
data: {{if !empty($values)}}{$values|raw}{{else}}{}{{endif}},
|
|
form: {expression="json_encode($form)" raw="true"},
|
|
settings: {expression="json_encode($settings)" raw="true"}
|
|
};
|
|
</script>
|
|
</head>
|
|
<body class='ipsApp ipsApp_vse' data-controller='core.front.vse.main'>
|
|
<div id='vseMainWrapper'>
|
|
<iframe src='{setting="base_url"}' id='vseMainFrame' class='ipsScrollbar'></iframe>
|
|
</div>
|
|
<div id='vseToolbox' class='ipsToolbox'>
|
|
<div class='ipsTabs ipsTabs_stretch ipsClearfix' id='vseSection' data-ipsTabBar data-ipsTabBar-contentArea='#vseToolbox_tabs'>
|
|
<ul role='tablist' class='ipsList_reset'>
|
|
<li>
|
|
<a href='#' role='tab' aria-selected="true" id='vseCustomizeTab' class='ipsTabs_item ipsTabs_activeItem ipsType_center'>
|
|
{lang="vse_customize"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href='#' role='tab' aria-selected="false" id='vseSettingsTab' class='ipsTabs_item ipsType_center'>
|
|
{lang="vse_settings"}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href='#' role='tab' aria-selected="false" id='vseBuildTab' class='ipsTabs_item ipsType_center'>
|
|
{lang="vse_build"}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<section id='vseToolbox_tabs'>
|
|
<div id='ipsTabs_vseSection_vseCustomizeTab_panel' class='ipsTabs_panel'>
|
|
<div class='ipsPad'>
|
|
<div class='ipsGrid'>
|
|
<a href='#' class='ipsButton ipsButton_small ipsButton_primary ipsButton_narrow ipsGrid_span5' title='{lang="vse_colorize"}' id='vseColorize'><i class='fa fa-tint'></i> {lang="vse_colorize"}</a>
|
|
<a href='#' class='ipsButton ipsButton_small ipsButton_primary ipsButton_narrow ipsGrid_span5' title='{lang="vse_select_elem"}' id='vseStartXRay'><i class='fa fa-magic ipsType_normal'></i> {lang="vse_select_elem"}</a>
|
|
<a href='#' class='ipsButton ipsButton_small ipsButton_primary ipsButton_narrow ipsGrid_span2' title='{lang="vse_custom_css"}' data-ipsTooltip id='vseAddCustomCSS'><i class='fa fa-code ipsType_normal'></i></a>
|
|
</div>
|
|
</div>
|
|
|
|
<div id='vseClassWrap'>
|
|
<div id='vseClassList' class='ipsScrollbar'>
|
|
<ul class='ipsList_reset'></ul>
|
|
</div>
|
|
|
|
<div id='vseClassEditor' class='ipsPad'>
|
|
<div class='vseNavBack'>
|
|
<a href='#' data-action='back'>{lang="vse_back"}</a>
|
|
<h2 data-role='classTitle' class='ipsType_reset ipsType_sectionHead'></h2>
|
|
</div>
|
|
<div data-role='panels'></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id='vseColorizerPanel' class='ipsPad ipsHide'>
|
|
<div class='vseNavBack'>
|
|
<a href='#' data-action='colorizerBack'>{lang="vse_back"}</a>
|
|
<h2 class='ipsType_reset ipsType_sectionHead'>{lang="vse_colorizer"}</h2>
|
|
</div>
|
|
<div data-role="colorizer" data-controller='core.front.vse.colorizer'></div>
|
|
</div>
|
|
</div>
|
|
<div id='ipsTabs_vseSection_vseSettingsTab_panel' class='ipsTabs_panel'>
|
|
<div class='ipsPad'>
|
|
{$form|raw}
|
|
</div>
|
|
</div>
|
|
<div id='ipsTabs_vseSection_vseBuildTab_panel' class='ipsTabs_panel'>
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_light ipsType_center'>{lang="vse_ready_to_build"}</p>
|
|
|
|
<a href='#' class='ipsButton ipsButton_important ipsButton_large ipsButton_fullWidth' data-action='buildSkin'>{lang="vse_build_this_skin"}</a>
|
|
<br><br>
|
|
|
|
<a href='{setting="base_url"}' class='ipsButton ipsButton_primary ipsButton_fullWidth' data-action='cancelSkin'>{lang="vse_close_editor"}</a>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
<div id='vseCustomCSS' class='ipsToolbox'>
|
|
<h3 class='ipsToolbox_sectionTitle ipsType_reset'>{lang="vse_custom_css_title"}</h3>
|
|
<div class='ipsPad'>
|
|
<textarea id='vseCustomCSS_editor'>{$customCss}</textarea>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>]]></template>
|
|
<template template_group="widgets" template_name="activeUsers" template_data="$members, $memberCount, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[
|
|
<h3 class='ipsType_reset ipsWidget_title'>
|
|
{{if \IPS\Dispatcher::i()->application->directory !== 'core'}}
|
|
{lang="block_activeUsers"}
|
|
{{else}}
|
|
{lang="block_activeUsers_noApp"}
|
|
{{endif}}
|
|
{{if $orientation == 'horizontal'}}
|
|
<span class='ipsType_light ipsType_unbold ipsType_medium'>{lang="block_user_online_info" pluralize="$memberCount"}</span>
|
|
{{endif}}
|
|
</h3>
|
|
<div class='ipsWidget_inner {{if $orientation == 'vertical'}}ipsPad{{else}}ipsPad_half{{endif}}'>
|
|
{{if $memberCount}}
|
|
<ul class='ipsList_inline ipsList_csv ipsList_noSpacing'>
|
|
{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) ) }}
|
|
{{foreach $members as $row}}
|
|
<li>
|
|
<a href="{url="app=core&module=members&controller=profile&id={$row['member_id']}" seoTemplate="profile" seoTitle="$row['seo_name']"}" data-ipsHover data-ipsHover-target='{url="app=core&module=members&controller=profile&id={$row['member_id']}&do=hovercard" seoTemplate="profile" seoTitle="$row['seo_name']"}' title="{lang="view_user_profile" sprintf="$row['member_name']"}">{expression="\IPS\Member\Group::load( $row['member_group'] )->formatName( $row['member_name'] )" raw="true"}</a>
|
|
</li>
|
|
{{endforeach}}
|
|
{{else}}
|
|
{{foreach $members as $row}}
|
|
<li>
|
|
{expression="\IPS\Member\Group::load( $row['member_group'] )->formatName( $row['member_name'] )" raw="true"}
|
|
</li>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
</ul>
|
|
{{if $memberCount > 60 && $orientation == 'vertical'}}
|
|
<p class='ipsType_medium ipsType_reset'>
|
|
<a href='{url="app=core&module=online&controller=online" seoTemplate="online"}'>{lang="and_x_others" pluralize="$memberCount - 60"}</a>
|
|
</p>
|
|
{{endif}}
|
|
{{else}}
|
|
<p class='ipsType_reset ipsType_medium ipsType_light'>{lang="active_users_empty"}</p>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="widgets" template_name="announcements" template_data="$announcements, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_announcements"}</h3>
|
|
<div class='ipsWidget_inner'>
|
|
{{if !empty( $announcements ) }}
|
|
<ul class='ipsList_reset ipsPad'>
|
|
{{foreach $announcements as $announcement}}
|
|
<li class='ipsPhotoPanel ipsPhotoPanel_tiny cAnnouncement'>
|
|
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( $announcement->member_id ), 'tiny'"}
|
|
<div>
|
|
{{if $orientation == 'vertical'}}
|
|
<h4 class='ipsType_large ipsType_reset'><a href='{url="app=core&module=system&controller=announcement&id={$announcement->id}" seoTemplate="announcement" seoTitle="$announcement->seo_title"}'>{wordbreak="$announcement->title"}</a></h4>
|
|
{{if $announcement->start}}<span class='ipsType_light'>{datetime="$announcement->start" dateonly="true"}</span>{{endif}}
|
|
<br><br>
|
|
{{else}}
|
|
<h4 class='ipsType_large ipsType_reset'>
|
|
<a href='{url="app=core&module=system&controller=announcement&id={$announcement->id}" seoTemplate="announcement" seoTitle="$announcement->seo_title"}'>{$announcement->title}</a>{{if $announcement->start}} <span class='ipsType_light ipsType_medium ipsType_unbold'>{datetime="$announcement->start" dateonly="true"}</span>{{endif}}
|
|
</h4>
|
|
{{endif}}
|
|
<div class='ipsType_medium ipsType_textBlock ipsType_richText ipsContained' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='{{if $orientation == 'vertical'}}6 lines{{else}}2 lines{{endif}}'>
|
|
{$announcement->truncated( true )|raw}
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_reset'>{lang="no_announcements"}</p>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="widgets" template_name="blankWidget" template_data="$widget" template_location="front" template_app="core"><![CDATA[<div class="ipsWidgetBlank">
|
|
{{if method_exists( $widget, 'configuration' ) AND $widget->configuration( $form ) !== NULL}}
|
|
{lang="widget_blank_or_no_context"}
|
|
{{else}}
|
|
{lang="widget_blank_or_no_context_no_config"}
|
|
{{endif}}
|
|
</div>
|
|
]]></template>
|
|
<template template_group="widgets" template_name="blockList" template_data="$availableBlocks" template_location="front" template_app="core"><![CDATA[{{if isset( $availableBlocks['plugin'] )}}
|
|
{{foreach $availableBlocks['plugin'] as $pluginId => $blocks}}
|
|
<h3 class='ipsToolbox_sectionTitle ipsCursor_pointer cSidebarManager_closed' data-action='toggleSection'>{expression="\IPS\Plugin::load( $pluginId )->name"}</h3>
|
|
<ul class='ipsList_reset ipsHide'>
|
|
{{foreach $blocks as $block}}
|
|
<li data-blockTitle="{$block->title()}" data-blockID='plugin_{$block->plugin}_{$block->key}' {{if $block->hasConfiguration()}}data-blockConfig='true'{{endif}} {{if isset( $block->menuStyle)}}data-menuStyle='{$block->menuStyle}'{{endif}} {{if !empty( $block->allowReuse)}}data-allowReuse='true'{{endif}} class='ipsCursor_drag cSidebarManager_block'>
|
|
<h4 class='ipsType_reset'>{lang="block_{$block->key}"}</h4>
|
|
<p class='ipsType_reset ipsType_light ipsType_small'>{lang="block_{$block->key}_desc"}</p>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
|
|
{{if isset( $availableBlocks['apps'] )}}
|
|
{{foreach $availableBlocks['apps'] as $app => $blocks}}
|
|
<h3 class='ipsToolbox_sectionTitle ipsCursor_pointer cSidebarManager_closed' data-action='toggleSection'>{lang="__app_{$app}"}</h3>
|
|
<ul class='ipsList_reset ipsHide'>
|
|
{{foreach $blocks as $block}}
|
|
<li data-blockTitle="{$block->title()}" data-blockID='app_{$block->app}_{$block->key}' {{if $block->hasConfiguration()}}data-blockConfig='true'{{endif}} {{if isset( $block->menuStyle)}}data-menuStyle='{$block->menuStyle}'{{endif}} {{if !empty( $block->allowReuse)}}data-allowReuse='true'{{endif}} class='ipsCursor_drag cSidebarManager_block'>
|
|
<h4 class='ipsType_reset'>{lang="block_{$block->key}"}</h4>
|
|
<p class='ipsType_reset ipsType_light ipsType_small'>{lang="block_{$block->key}_desc"}</p>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
<p class='ipsType_light ipsType_center ipsPad_half ipsHide'><em>{lang="no_app_widgets"}</em></p>
|
|
{{endforeach}}
|
|
{{endif}}
|
|
]]></template>
|
|
<template template_group="widgets" template_name="formTemplate" template_data="$widget, $id, $action, $elements, $hiddenValues, $actionButtons, $uploadField, $class='', $attributes=array(), $sidebar, $form=NULL" template_location="front" template_app="core"><![CDATA[{template="includeJS" app="core" group="global" location="global" params=""}
|
|
<form accept-charset='utf-8' class="ipsForm ipsForm_vertical" action="{$action}" method="post" {{if $uploadField}}enctype="multipart/form-data"{{endif}} {{foreach $attributes as $k => $v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
|
|
<input type="hidden" name="{$id}_submitted" value="1">
|
|
{{foreach $hiddenValues as $k => $v}}
|
|
<input type="hidden" name="{$k}" value="{$v}">
|
|
{{endforeach}}
|
|
{{if $uploadField}}
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
|
<input type="hidden" name="plupload" value="{expression="md5( uniqid() )"}">
|
|
{{endif}}
|
|
<div class='ipsMenu_headerBar'>
|
|
<h4 class='ipsType_sectionHead'>{lang="editBlockSettings"}</h4>
|
|
</div>
|
|
{{if $widget->menuStyle === 'modal'}}
|
|
<div class='ipsPad'>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if is_object( $input ) }}
|
|
{$input->rowHtml($form)|raw}
|
|
{{else}}
|
|
{$input|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsMenu_innerContent ipsPad'>
|
|
<ul class='ipsList_reset'>
|
|
{{foreach $elements as $collection}}
|
|
{{foreach $collection as $input}}
|
|
{{if is_object( $input ) }}
|
|
{$input->rowHtml($form)|raw}
|
|
{{else}}
|
|
{$input|raw}
|
|
{{endif}}
|
|
{{endforeach}}
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>
|
|
{{endif}}
|
|
<div class='ipsMenu_footerBar ipsType_center'>
|
|
{{foreach $actionButtons as $button}}
|
|
{$button|raw}
|
|
{{endforeach}}
|
|
</div>
|
|
</form>]]></template>
|
|
<template template_group="widgets" template_name="members" template_data="$members, $title, $display='csv', $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>
|
|
{$title}
|
|
</h3>
|
|
{{if $display === 'csv'}}
|
|
<div class='ipsWidget_inner {{if $orientation == 'vertical'}}ipsPad{{endif}}'>
|
|
{{if count( $members )}}
|
|
<ul class='ipsList_inline ipsList_csv ipsList_noSpacing'>
|
|
{{foreach $members as $row}}
|
|
<li>{template="userLinkFromData" group="global" app="core" params="$row->member_id, $row->name, $row->members_seo_name, $row->member_group_id"}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<p class='ipsType_reset ipsType_medium ipsType_light'>{lang="widget_members_no_results"}</p>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsWidget_inner'>
|
|
{{if count( $members ) }}
|
|
<ul class='ipsList_reset ipsPad'>
|
|
{{foreach $members as $member}}
|
|
<li class='ipsPhotoPanel ipsPhotoPanel_tiny cAnnouncement'>
|
|
{template="userPhoto" group="global" app="core" params="$member, 'tiny'"}
|
|
<div>
|
|
<h4 class='ipsType_large ipsType_reset'>{$member->link()|raw} <a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}' class='ipsPos_right ipsRepBadge {{if $member->pp_reputation_points > 0}}ipsRepBadge_positive{{elseif $member->pp_reputation_points < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $member->pp_reputation_points > 0}}fa-plus-circle{{elseif $member->pp_reputation_points < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {$member->pp_reputation_points}</a></h4>
|
|
{$member->groupName|raw}
|
|
<br>
|
|
<span class='ipsType_light ipsType_small'>{lang="widget_member_joined_date" htmlsprintf="$member->joined->html()"}</span>
|
|
{{if $member->last_activity}}
|
|
<br><span class='ipsType_light ipsType_small'>{lang="widget_member_last_active_date" htmlsprintf="\IPS\DateTime::ts( $member->last_activity )->html()"}</span>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{else}}
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_reset'>{lang="widget_members_no_results"}</p>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="widgets" template_name="recentStatusUpdates" template_data="$statuses, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_recentStatusUpdates"}</h3>
|
|
<div class='ipsWidget_inner cStatusUpdateWidget' data-controller="core.front.core.statusFeedWidget">
|
|
{{if \IPS\core\Statuses\Status::canCreateFromCreateMenu()}}
|
|
<div class="ipsAreaBackground ipsPad_half" data-role='statusFormArea'>
|
|
<div class='ipsComposeArea_editor' data-role='statusDummy'>
|
|
<div class='ipsComposeArea_dummy ipsType_light' tabindex='-1'>
|
|
{lang="status_content"}
|
|
</div>
|
|
</div>
|
|
<div data-role='statusEditor' class='ipsHide'></div>
|
|
</div>
|
|
{{endif}}
|
|
<ul class='ipsDataList' data-role="statusFeed">
|
|
{{foreach $statuses as $status}}
|
|
{template="recentStatusUpdatesStatus" app="core" group="widgets" params="$status"}
|
|
{{endforeach}}
|
|
</ul>
|
|
{{if count( $statuses ) == 0}}
|
|
<div class='ipsType_center ipsType_light ipsPad_half' data-role="statusFeedEmpty">{lang="no_recent_statuses"}</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="widgets" template_name="recentStatusUpdatesStatus" template_data="$status" template_location="front" template_app="core"><![CDATA[<li class='ipsDataItem {{if $status->hidden()}} ipsModerated{{endif}}' data-statusID='{$status->id}'>
|
|
<div class='ipsDataItem_icon ipsPos_top'>
|
|
{template="userPhoto" group="global" app="core" params="$status->author(), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main ipsType_medium ipsType_break'>
|
|
<p class='ipsType_medium ipsType_reset'>
|
|
{{if $status->member_id != $status->author()->member_id}}
|
|
<strong class='ipsType_light'>{$status->author()->link()|raw}</strong> » <strong>{expression="\IPS\Member::load( $status->member_id )->link()" raw="true"}</strong>
|
|
{{else}}
|
|
<strong>{$status->author()->link()|raw}</strong>
|
|
{{endif}}
|
|
</p>
|
|
<div class='ipsType_richText ipsContained' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='3 lines'>
|
|
{$status->truncated()|raw}
|
|
</div>
|
|
<span class='ipsType_light ipsType_small ipsType_blendLinks'><a href='{$status->url()}'>{datetime="$status->date"}</a>{{if $status->replies or $status->canComment()}} · <a href="{$status->url()}">{lang="status_num_replies" pluralize="$status->replies"}</a>{{endif}}</span>
|
|
</div>
|
|
</li>
|
|
]]></template>
|
|
<template template_group="widgets" template_name="relatedContent" template_data="$similar" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_relatedContent"}</h3>
|
|
<div class='ipsPad_half ipsWidget_inner'>
|
|
<ul class='ipsDataList ipsDataList_reducedSpacing'>
|
|
{{foreach $similar as $item}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_icon'>
|
|
{template="userPhoto" app="core" group="global" params="$item->author(), 'tiny'"}
|
|
</div>
|
|
<div class='ipsDataItem_main'>
|
|
<a href="{$item->url()}" title='{lang="view_this" sprintf="$item->mapped('title')"}'>{wordbreak="$item->mapped('title')"}</a><br>
|
|
<span class='ipsType_light ipsType_medium'>{lang="byline_nodate" htmlsprintf="$item->author()->link()"}</span><br>
|
|
{{if $content = $item->truncated()}}
|
|
<div class='ipsType_richText ipsType_normal' data-ipsTruncate data-ipsTruncate-type="remove" data-ipsTruncate-size="2 lines">
|
|
{$content|raw}
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
</div>]]></template>
|
|
<template template_group="widgets" template_name="stats" template_data="$stats, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_stats"}</h3>
|
|
<div class='ipsWidget_inner'>
|
|
{{if $orientation == 'vertical'}}
|
|
<div class='ipsPad_half'>
|
|
<ul class="ipsDataList">
|
|
<li class="ipsDataItem">
|
|
<div class="ipsDataItem_main ipsPos_middle">
|
|
<strong>{lang="stats_total_members"}</strong>
|
|
</div>
|
|
<div class="ipsDataItem_stats ipsDataItem_statsLarge">
|
|
<span class="ipsDataItem_stats_number">{number="$stats['member_count']"}</span>
|
|
</div>
|
|
</li>
|
|
<li class="ipsDataItem">
|
|
<div class="ipsDataItem_main ipsPos_middle">
|
|
<strong>{lang="stats_most_online"}</strong>
|
|
</div>
|
|
<div class="ipsDataItem_stats ipsDataItem_statsLarge">
|
|
<span class="ipsDataItem_stats_number">{number="$stats['most_online']['count']"}</span><br>
|
|
<span class="ipsType_light ipsType_small"><time>{$stats['most_online']['time']}</time></span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<hr class='ipsHr'>
|
|
{{if $stats['last_registered']}}
|
|
<div class='ipsClearfix ipsPad_bottom'>
|
|
<div class='ipsPos_left ipsType_center cNewestMember'>
|
|
{template="userPhoto" app="core" group="global" params="$stats['last_registered'], 'small'"}
|
|
</div>
|
|
<div class='ipsWidget_latestItem'>
|
|
<strong class='ipsType_minorHeading'>{lang="stats_newest_member"}</strong><br>
|
|
<span class='ipsType_normal'>{$stats['last_registered']->link()|raw}</span><br>
|
|
<span class='ipsType_medium ipsType_light'>{lang="members_joined"} <time>{$stats['last_registered']->joined->getTimestamp()}</time></span>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>
|
|
{{else}}
|
|
<div class='ipsGrid ipsGrid_collapsePhone ipsWidget_stats'>
|
|
<div class='ipsGrid_span4 ipsType_center'>
|
|
<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['member_count']"}</span><br>
|
|
<span class='ipsType_light ipsType_medium'>{lang="stats_total_members"}</span>
|
|
</div>
|
|
<div class='ipsGrid_span4 ipsType_center'>
|
|
<span class='ipsType_large ipsWidget_statsCount' data-ipsTooltip title='<time data-norelative="true">{$stats['most_online']['time']}</time>'>{number="$stats['most_online']['count']"}</span><br>
|
|
<span class='ipsType_light ipsType_medium'>{lang="stats_most_online"}</span>
|
|
</div>
|
|
<div class='ipsGrid_span4 ipsType_left ipsPhotoPanel ipsPhotoPanel_mini cNewestMember'>
|
|
{template="userPhoto" app="core" group="global" params="$stats['last_registered'], 'mini'"}
|
|
<div>
|
|
<span class='ipsType_minorHeading'>{lang="stats_newest_member"}</span><br>
|
|
<span class='ipsType_normal'>{$stats['last_registered']->link()|raw}</span><br>
|
|
<span class='ipsType_small ipsType_light'>{lang="members_joined"} <time>{$stats['last_registered']->joined->getTimestamp()}</time></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<template template_group="widgets" template_name="topContributorRows" template_data="$results, $timeframe, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[{{if count( $results )}}
|
|
{{if $orientation == 'vertical'}}
|
|
<ol class='ipsDataList ipsDataList_reducedSpacing cTopContributors'>
|
|
{{$idx = 1;}}
|
|
{{foreach $results as $memberId => $rep}}
|
|
{{$member = \IPS\Member::load( $memberId );}}
|
|
<li class='ipsDataItem'>
|
|
<div class='ipsDataItem_icon ipsPos_middle ipsType_center ipsType_large ipsType_light'><strong>{expression="$idx++"}</strong></div>
|
|
<div class='ipsDataItem_main ipsPhotoPanel ipsPhotoPanel_tiny'>
|
|
{template="userPhoto" app="core" group="global" params="$member, 'tiny'"}
|
|
<div>
|
|
{$member->link()|raw}
|
|
<br>
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}' title="{lang="reputation_badge_tooltip_period"}" data-ipsTooltip class='ipsRepBadge {{if $rep > 0}}ipsRepBadge_positive{{elseif $rep < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $rep > 0}}fa-plus-circle{{elseif $rep < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {$rep}</a>
|
|
{{else}}
|
|
<span title="{lang="reputation_badge_tooltip_period"}" data-ipsTooltip class='ipsRepBadge {{if $rep > 0}}ipsRepBadge_positive{{elseif $rep < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $rep > 0}}fa-plus-circle{{elseif $rep < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {$rep}</span>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</li>
|
|
{{endforeach}}
|
|
</ol>
|
|
{{else}}
|
|
<div class="ipsGrid ipsGrid_collapsePhone">
|
|
{{$count = 0;}}
|
|
{{foreach $results as $memberId => $rep}}
|
|
{{if $count == 4}}
|
|
{{break;}}
|
|
{{else}}
|
|
{{$count++;}}
|
|
{{endif}}
|
|
{{$member = \IPS\Member::load( $memberId );}}
|
|
<div class='ipsGrid_span3'>
|
|
<div class='ipsPad_half ipsPhotoPanel ipsPhotoPanel_tiny'>
|
|
{template="userPhoto" app="core" group="global" params="$member, 'tiny'"}
|
|
<div>
|
|
<p class='ipsType_reset ipsTruncate ipsTruncate_line'>
|
|
{$member->link()|raw}
|
|
</p>
|
|
{{if member.group['gbw_view_reps']}}
|
|
<a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}' title="{lang="reputation_badge_tooltip_period"}" data-ipsTooltip class='ipsRepBadge {{if $rep > 0}}ipsRepBadge_positive{{elseif $rep < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $rep > 0}}fa-plus-circle{{elseif $rep < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {$rep}</a>
|
|
{{else}}
|
|
<span title="{lang="reputation_badge_tooltip_period"}" data-ipsTooltip class='ipsRepBadge {{if $rep > 0}}ipsRepBadge_positive{{elseif $rep < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $rep > 0}}fa-plus-circle{{elseif $rep < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {$rep}</span>
|
|
{{endif}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{endforeach}}
|
|
</div>
|
|
{{endif}}
|
|
{{else}}
|
|
<div class='ipsPad'>
|
|
<p class='ipsType_reset'>{lang="top_contributors_empty__{$timeframe}"}</p>
|
|
</div>
|
|
{{endif}}]]></template>
|
|
<template template_group="widgets" template_name="topContributors" template_data="$topContributorsThisWeek, $limit, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_topContributors"}</h3>
|
|
<div class='ipsTabs ipsTabs_small ipsTabs_stretch ipsClearfix' id='elTopContributors' data-ipsTabBar data-ipsTabBar-updateURL='false' data-ipsTabBar-contentArea='#elTopContributors_content'>
|
|
<a href='#elTopContributors' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
|
<ul role="tablist" class='ipsList_reset'>
|
|
<li>
|
|
<a href='#ipsTabs_elTopContributors_el_topContributorsWeek_panel' id='el_topContributorsWeek' class='ipsTabs_item ipsTabs_activeItem' role="tab" aria-selected='true'>{lang="week"}</a>
|
|
</li>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=ajax&do=topContributors&time=month&limit={$limit}&orientation={$orientation}"}' id='el_topContributorsMonth' class='ipsTabs_item' role="tab" aria-selected='false'>{lang="month"}</a>
|
|
</li>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=ajax&do=topContributors&time=year&limit={$limit}&orientation={$orientation}"}' id='el_topContributorsYear' class='ipsTabs_item' role="tab" aria-selected='false'>{lang="year"}</a>
|
|
</li>
|
|
<li>
|
|
<a href='{url="app=core&module=system&controller=ajax&do=topContributors&time=all&limit={$limit}&orientation={$orientation}"}' id='el_topContributorsAll' class='ipsTabs_item' role="tab" aria-selected='false'>{lang="alltime"}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<section id='elTopContributors_content' class='ipsWidget_inner'>
|
|
<div id="ipsTabs_elTopContributors_el_topContributorsWeek_panel" class='ipsTabs_panel'>
|
|
{template="topContributorRows" group="widgets" app="core" params="$topContributorsThisWeek, 'week', $orientation"}
|
|
</div>
|
|
</section>]]></template>
|
|
<template template_group="widgets" template_name="whosOnline" template_data="$members, $memberCount, $guests, $anonymous, $orientation='vertical'" template_location="front" template_app="core"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>
|
|
{lang="block_whosOnline"}
|
|
{{if $orientation == 'horizontal'}}
|
|
<span class='ipsType_light ipsType_unbold ipsType_medium'>{lang="block_whos_online_info_members" pluralize="$memberCount"}, {lang="block_whos_online_info_anonymous" pluralize="$anonymous"}, {lang="block_whos_online_info_guests" pluralize="$guests"}</span>
|
|
{{endif}}
|
|
<span class='ipsType_medium ipsType_light ipsType_unbold ipsType_blendLinks'><a href='{url="app=core&module=online&controller=online" seoTemplate="online"}'>{lang="see_full_list"}</a></span>
|
|
</h3>
|
|
<div class='ipsWidget_inner {{if $orientation == 'vertical'}}ipsPad{{else}}ipsPad_half{{endif}}'>
|
|
{{if $memberCount}}
|
|
<ul class='ipsList_inline ipsList_csv ipsList_noSpacing'>
|
|
{{foreach $members as $row}}
|
|
<li>{template="userLinkFromData" group="global" app="core" params="$row['member_id'], $row['member_name'], $row['seo_name'], $row['member_group']"}</li>
|
|
{{endforeach}}
|
|
</ul>
|
|
{{if $orientation == 'vertical' and $memberCount > 60}}
|
|
<p class='ipsType_medium ipsType_reset'>
|
|
<a href='{url="app=core&module=online&controller=online" seoTemplate="online"}'>{lang="and_x_others" pluralize="$memberCount - 60"}</a>
|
|
</p>
|
|
{{endif}}
|
|
{{else}}
|
|
<p class='ipsType_reset ipsType_medium ipsType_light'>{lang="whos_online_users_empty"}</p>
|
|
{{endif}}
|
|
</div>]]></template>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="." css_name="core_responsive.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.cUserHovercard {
|
|
min-width: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #elInboxContent .ipsDataItem_main {
|
|
margin-right: 0 !important;
|
|
}
|
|
html[dir="rtl"] #elInboxContent .ipsDataItem_main {
|
|
margin-left: 0 !important;
|
|
}
|
|
|
|
html[dir="ltr"] .cTopContributors .ipsDataItem_main {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="rtl"] .cTopContributors .ipsDataItem_main {
|
|
margin-right: 30px;
|
|
}
|
|
}
|
|
|
|
/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
#elWidgetControls {
|
|
display: none;
|
|
}
|
|
|
|
.cPollChoices .ipsDataItem {
|
|
padding: 7px 0 !important;
|
|
}
|
|
|
|
.cPollChoices .ipsDataItem:first-child {
|
|
display: none;
|
|
}
|
|
|
|
.cPollChoices .cPollChoiceNumber {
|
|
width: 30px;
|
|
min-width: 0;
|
|
float: left;
|
|
font-size: 20px;
|
|
line-height: 28px;
|
|
}
|
|
html[dir="rtl"] .cPollChoices .cPollChoiceNumber {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .cPollChoices .ipsDataItem_main {
|
|
margin: 0 30px 5px 40px;
|
|
}
|
|
html[dir="rtl"] .cPollChoices .ipsDataItem_main {
|
|
margin: 0 40px 5px 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .cPollChoices .ipsDataItem_main + .ipsDataItem_generic {
|
|
margin-left: 40px;
|
|
}
|
|
html[dir="rtl"] .cPollChoices .ipsDataItem_main + .ipsDataItem_generic {
|
|
margin-right: 40px;
|
|
}
|
|
|
|
.cPollChoices .ipsDataItem_main + .ipsDataItem_generic:after {
|
|
content: attr( data-voteText );
|
|
font-size: 13px;
|
|
}
|
|
|
|
.cPollChoices .ipsDataItem_main + .ipsDataItem_generic input {
|
|
max-width: 50px;
|
|
}
|
|
html[dir="ltr"] .cPollChoices .ipsDataItem_main + .ipsDataItem_generic input {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .cPollChoices .ipsDataItem_main + .ipsDataItem_generic input {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.cPollChoices [data-action="removeChoice"] {
|
|
position: absolute;
|
|
top: 7px;
|
|
}
|
|
html[dir="ltr"] .cPollChoices [data-action="removeChoice"] {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .cPollChoices [data-action="removeChoice"] {
|
|
left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #elNotifyContent .ipsDataItem_main {
|
|
margin-left: 55px;
|
|
}
|
|
html[dir="rtl"] #elNotifyContent .ipsDataItem_main {
|
|
margin-right: 55px;
|
|
}
|
|
}
|
|
</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="." css_name="core.css"><![CDATA[/* My Media */
|
|
.cMyMedia [data-role='status'] {
|
|
/*display: none;*/
|
|
}
|
|
|
|
.cMyMedia [data-role="myMediaContent"] {
|
|
overflow-y: auto;
|
|
overflow-x: hidden;
|
|
}
|
|
html[dir="ltr"] .cMyMedia .ipsColumn [data-role="myMediaContent"] {
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] .cMyMedia .ipsColumn [data-role="myMediaContent"] {
|
|
padding-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cMyMedia .ipsSideMenu {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="rtl"] .cMyMedia .ipsSideMenu {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.cMyMedia_controls {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
}
|
|
|
|
/* Core app, non-framework styles */
|
|
#elError .fa {
|
|
margin-bottom: 10px;
|
|
}
|
|
#elErrorMessage {
|
|
margin-top: 0;
|
|
font-size: 24px;
|
|
font-weight: 500;
|
|
line-height: 1.4;
|
|
max-width: 800px;
|
|
}
|
|
|
|
#elRSS {
|
|
color: #F28826;
|
|
font-size: 22px;
|
|
}
|
|
|
|
html[dir="ltr"] #elRSS {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] #elRSS {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
/* USER HOVERCARDS */
|
|
.cUserHovercard {
|
|
min-height: 200px;
|
|
min-width: 450px;
|
|
}
|
|
|
|
.cUserHovercard .ipsPageHead_special {
|
|
background-repeat: no-repeat;
|
|
background-size: cover;
|
|
background-position: bottom;
|
|
height: 85px;
|
|
width: 100%;
|
|
background-color: {theme="profile_header"};
|
|
}
|
|
|
|
.cUserHovercard .ipsPageHead_special .ipsUserPhoto {
|
|
position: absolute;
|
|
top: 35px;
|
|
}
|
|
html[dir="ltr"] .cUserHovercard .ipsPageHead_special .ipsUserPhoto {
|
|
left: 15px;
|
|
}
|
|
html[dir="rtl"] .cUserHovercard .ipsPageHead_special .ipsUserPhoto {
|
|
right: 15px;
|
|
}
|
|
|
|
.cUserHovercard .ipsPageHead_special .ipsType_sectionHead,
|
|
.cUserHovercard .ipsPageHead_special p {
|
|
position: absolute;
|
|
color: #fff;
|
|
font-weight: 400;
|
|
text-shadow: 0px 0px 4px rgba(0,0,0,0.5);
|
|
}
|
|
html[dir="ltr"] .cUserHovercard .ipsPageHead_special .ipsType_sectionHead,
|
|
html[dir="ltr"] .cUserHovercard .ipsPageHead_special p {
|
|
left: 110px;
|
|
}
|
|
html[dir="rtl"] .cUserHovercard .ipsPageHead_special .ipsType_sectionHead,
|
|
html[dir="rtl"] .cUserHovercard .ipsPageHead_special p {
|
|
right: 110px;
|
|
}
|
|
|
|
.cUserHovercard .ipsPageHead_special p {
|
|
top: 60px;
|
|
}
|
|
|
|
.cUserHovercard .ipsPageHead_special .ipsType_sectionHead {
|
|
top: 28px;
|
|
font-size: 30px;
|
|
max-width: 325px;
|
|
line-height: 36px;
|
|
}
|
|
|
|
.cUserHovercard .ipsDataList .ipsDataItem_generic,
|
|
.cUserHovercard .ipsDataList .ipsDataItem_main {
|
|
padding: 2px 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cUserHovercard .ipsDataList .ipsDataItem_main {
|
|
padding-left: 5px;
|
|
}
|
|
html[dir="rtl"] .cUserHovercard .ipsDataList .ipsDataItem_main {
|
|
padding-right: 5px;
|
|
}
|
|
|
|
.cUserHovercard .cUserHovercard_data {
|
|
max-width: 330px;
|
|
}
|
|
html[dir="ltr"] .cUserHovercard .cUserHovercard_data {
|
|
margin-left: 105px;
|
|
}
|
|
html[dir="rtl"] .cUserHovercard .cUserHovercard_data {
|
|
margin-right: 105px;
|
|
}
|
|
|
|
.cUserToggleFriend {
|
|
position: absolute;
|
|
top: 50px;
|
|
}
|
|
html[dir="ltr"] .cUserToggleFriend {
|
|
right: 15px;
|
|
}
|
|
html[dir="rtl"] .cUserToggleFriend {
|
|
left: 15px;
|
|
}
|
|
|
|
.cUserHovercard .ipsRepBadge {
|
|
width: 80px;
|
|
position: absolute;
|
|
top: 120px;
|
|
text-align: center;
|
|
}
|
|
html[dir="ltr"] .cUserHovercard .ipsRepBadge {
|
|
left: 20px;
|
|
}
|
|
html[dir="rtl"] .cUserHovercard .ipsRepBadge {
|
|
right: 20px;
|
|
}
|
|
|
|
/* Sidebar Manager */
|
|
.cWidgetContainer[data-widgetArea="header"] {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.cWidgetContainer[data-widgetArea="footer"] {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.cWidgetsManaging #ipsLayout_sidebar {
|
|
overflow: visible;
|
|
}
|
|
|
|
.cWidgetContainer.cWidgetContainer_managing {
|
|
display: block;
|
|
min-height: 100px;
|
|
position: relative;
|
|
background-color: #eaf3f8;
|
|
}
|
|
|
|
.cWidgetContainer.cWidgetContainer_managing > ul {
|
|
display: block;
|
|
min-height: 100px;
|
|
}
|
|
|
|
.cWidgetContainer > ul > li:first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.cWidgetContainer.cWidgetContainer_managing:before {
|
|
content: '';
|
|
position: absolute;
|
|
top: -2px;
|
|
left: -2px;
|
|
right: -2px;
|
|
bottom: -2px;
|
|
border: 1px dashed #5f95c7;
|
|
}
|
|
|
|
.cWidgetContainer_managing li.ipsWidget[data-blockconfig="true"] {
|
|
min-height: 100px;
|
|
}
|
|
.cSidebarBlock_managing {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
padding-top: 50px;
|
|
background: rgba(255,255,255,0.6);
|
|
border: 1px dotted rgba(0,0,0,0.2);
|
|
cursor: move;
|
|
}
|
|
|
|
.cSidebarBlock_managing [data-action="removeBlock"] {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 14px;
|
|
background: #000;
|
|
color: #fff;
|
|
line-height: 28px;
|
|
text-align: center;
|
|
position: absolute;
|
|
top: -5px;
|
|
}
|
|
html[dir="ltr"] .cSidebarBlock_managing [data-action="removeBlock"] {
|
|
right: -5px;
|
|
}
|
|
html[dir="rtl"] .cSidebarBlock_managing [data-action="removeBlock"] {
|
|
left: -5px;
|
|
}
|
|
|
|
.cSidebarBlock_managing h4 {
|
|
position: absolute;
|
|
top: 5px;
|
|
background: #151515;
|
|
color: #fff;
|
|
line-height: 20px;
|
|
font-size: 12px;
|
|
font-weight: 400;
|
|
padding: 0 15px;
|
|
margin: 0;
|
|
border-radius: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .cSidebarBlock_managing h4 {
|
|
left: 9px;
|
|
}
|
|
html[dir="rtl"] .cSidebarBlock_managing h4 {
|
|
right: 9px;
|
|
}
|
|
|
|
.cSidebarBlock_loading {
|
|
min-height: 120px;
|
|
}
|
|
|
|
#elWidgetControls {
|
|
position: fixed;
|
|
top: 50%;
|
|
width: 18px;
|
|
opacity: 0.5;
|
|
font-size: 12px;
|
|
padding-left: 2px;
|
|
padding-right: 2px;
|
|
z-index: 10000;
|
|
}
|
|
|
|
/* Hide widget control on phones */
|
|
@media screen and (max-width: 767px) {
|
|
#elWidgetControls {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
html[dir="ltr"] #elWidgetControls {
|
|
left: 0;
|
|
border-radius: 0 3px 3px 0;
|
|
}
|
|
html[dir="rtl"] #elWidgetControls {
|
|
right: 0;
|
|
border-radius: 3px 0 0 3px;
|
|
}
|
|
|
|
#elWidgetControls:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
#elSidebarWidgets.cSidebarManaging {
|
|
min-height: 100px;
|
|
}
|
|
|
|
#elSidebarWidgets.cSidebarManaging > li {
|
|
min-height: 100px;
|
|
}
|
|
|
|
#elSidebarManager {
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
padding-bottom: 70px;
|
|
width: 300px;
|
|
z-index: 1000; /* Make sure it shows on top of things when page horizontally scrolls */
|
|
}
|
|
html[dir="ltr"] #elSidebarManager {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #elSidebarManager {
|
|
right: 0;
|
|
}
|
|
|
|
#elSidebarManager > div:first-child {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 70px;
|
|
width: 300px;
|
|
overflow: auto;
|
|
}
|
|
|
|
#elSidebarManager [data-role='availableBlocks'] {
|
|
min-height: 100px;
|
|
}
|
|
|
|
#elSidebarManager .cSidebarManager_open,
|
|
#elSidebarManager .cSidebarManager_closed {
|
|
position: relative;
|
|
}
|
|
html[dir="ltr"] #elSidebarManager .cSidebarManager_open,
|
|
html[dir="ltr"] #elSidebarManager .cSidebarManager_closed {
|
|
padding-left: 26px;
|
|
}
|
|
html[dir="rtl"] #elSidebarManager .cSidebarManager_open,
|
|
html[dir="rtl"] #elSidebarManager .cSidebarManager_closed {
|
|
padding-right: 26px;
|
|
}
|
|
|
|
#elSidebarManager .cSidebarManager_open:before,
|
|
#elSidebarManager .cSidebarManager_closed:before {
|
|
font-family: "FontAwesome";
|
|
position: absolute;
|
|
font-size: 18px;
|
|
}
|
|
html[dir="ltr"] #elSidebarManager .cSidebarManager_open:before,
|
|
html[dir="ltr"] #elSidebarManager .cSidebarManager_closed:before {
|
|
left: 12px;
|
|
}
|
|
html[dir="rtl"] #elSidebarManager .cSidebarManager_open:before,
|
|
html[dir="rtl"] #elSidebarManager .cSidebarManager_closed:before {
|
|
right: 12px;
|
|
}
|
|
|
|
#elSidebarManager .cSidebarManager_open:before {
|
|
content: '\f0d7';
|
|
}
|
|
|
|
html[dir="ltr"] #elSidebarManager .cSidebarManager_closed:before {
|
|
content: '\f0da';
|
|
}
|
|
html[dir="rtl"] #elSidebarManager .cSidebarManager_closed:before {
|
|
content: '\f0d9';
|
|
}
|
|
|
|
#elSidebarManager_submit {
|
|
position: fixed;
|
|
bottom: 0;
|
|
width: 300px;
|
|
background: #000;
|
|
z-index: 5500;
|
|
}
|
|
html[dir="ltr"] #elSidebarManager_submit {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #elSidebarManager_submit {
|
|
right: 0 !important;
|
|
}
|
|
|
|
.cSidebarManager_block {
|
|
background: #313233;
|
|
padding: 7px;
|
|
margin: 0 0 10px 10px;
|
|
color: #fff;
|
|
}
|
|
html[dir="rtl"] .cSidebarManager_block {
|
|
margin: 0 10px 10px 0;
|
|
}
|
|
|
|
.cSidebarManager_placeholder {
|
|
background: #bcd3e3;
|
|
height: 75px;
|
|
margin-top: 20px;
|
|
}
|
|
|
|
#elSidebarManager .cSidebarManager_placeholder {
|
|
background: transparent;
|
|
margin-top: 0;
|
|
}
|
|
|
|
.cAnnouncement {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
/* Registration validation */
|
|
#username + [data-role="validationCheck"],
|
|
#email_address + [data-role="validationCheck"] {
|
|
position: relative;
|
|
top: 3px;
|
|
font-size: 18px;
|
|
}
|
|
html[dir="ltr"] #username + [data-role="validationCheck"],
|
|
html[dir="ltr"] #email_address + [data-role="validationCheck"] {
|
|
margin-left: -28px;
|
|
}
|
|
html[dir="rtl"] #username + [data-role="validationCheck"],
|
|
html[dir="rtl"] #email_address + [data-role="validationCheck"] {
|
|
margin-right: -28px;
|
|
}
|
|
|
|
/* Sign in popup */
|
|
#elUserSignIn_menu {
|
|
max-width: 560px;
|
|
}
|
|
|
|
/* Poll editor */
|
|
.cPoll [data-action='addQuestion'] {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.cPoll [data-role='question'] {
|
|
margin-bottom: 7px;
|
|
}
|
|
|
|
.cPoll [data-role='question']:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cPollChoices [data-role="choiceRow"] {
|
|
padding-left: 35px;
|
|
}
|
|
html[dir="rtl"] .cPollChoices [data-role="choiceRow"] {
|
|
padding-right: 35px;
|
|
}
|
|
|
|
.cPollChoices > li {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
.cPollChoices > li > div {
|
|
padding-top: 5px;
|
|
}
|
|
|
|
/* Poll view */
|
|
.cPollList .ipsType_sectionHead {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.cPollList > li:not( :last-child ) {
|
|
border-bottom: 1px solid rgba(0,0,0,0.2);
|
|
padding-bottom: 15px;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.cPollList_choices > li {
|
|
border: 0;
|
|
}
|
|
|
|
.cPollVoteBar {
|
|
display: block;
|
|
border-radius: 2px;
|
|
background: #ebebeb;
|
|
height: 20px;
|
|
}
|
|
|
|
.cPollVoteBar > span {
|
|
background: {theme="poll_bar"};
|
|
position: relative;
|
|
display: block;
|
|
height: 20px;
|
|
border-radius: 2px;
|
|
}
|
|
|
|
.cPollVoteBar > span:after {
|
|
content: attr( data-votes );
|
|
line-height: 18px;
|
|
color: #666;
|
|
font-size: 10px;
|
|
font-weight: bold;
|
|
position: absolute;
|
|
width: 60px;
|
|
}
|
|
html[dir="ltr"] .cPollVoteBar > span:after {
|
|
right: -65px;
|
|
}
|
|
html[dir="rtl"] .cPollVoteBar > span:after {
|
|
left: -65px;
|
|
}
|
|
|
|
.cPollVoteBar > span.cPollVoteBar_inside:after {
|
|
color: #fff;
|
|
}
|
|
html[dir="ltr"] .cPollVoteBar > span.cPollVoteBar_inside:after {
|
|
right: 5px;
|
|
text-align: right;
|
|
}
|
|
html[dir="rtl"] .cPollVoteBar > span.cPollVoteBar_inside:after {
|
|
left: 5px;
|
|
text-align: left;
|
|
}
|
|
|
|
/* Online users */
|
|
.cOnlineUser {
|
|
height: 60px;
|
|
}
|
|
|
|
#elCopyright a {
|
|
font-size: 12px;
|
|
}
|
|
|
|
#elSiteOffline {
|
|
text-align: center;
|
|
background: rgba(0,0,0,0.8);
|
|
padding: 7px;
|
|
color: #fff;
|
|
font-size: 12px;
|
|
z-index: 50000;
|
|
{prefix="transition" value="0.3s all linear"}
|
|
}
|
|
|
|
#elSiteOffline h2 {
|
|
margin-bottom: 5px;
|
|
font-size: 16px;
|
|
}
|
|
|
|
/* Share Links */
|
|
.cShareLink {
|
|
width: 28px;
|
|
height: 28px;
|
|
line-height: 28px;
|
|
text-align: center;
|
|
background: red;
|
|
border-radius: 16px;
|
|
display: inline-block;
|
|
color: white;
|
|
font-size: 15px;
|
|
}
|
|
.cShareLink:hover {
|
|
color: white;
|
|
}
|
|
|
|
.cShareLink_delicious { background: #3274D1; }
|
|
.cShareLink_digg { background: #14589E; }
|
|
.cShareLink_email { background: #444; }
|
|
.cShareLink_facebook { background: #3B5998; }
|
|
.cShareLink_google { background: #D14836; }
|
|
.cShareLink_linkedin { background: #007FB1; }
|
|
.cShareLink_reddit { background: #FF4500; }
|
|
.cShareLink_stumble { background: #EB4924; }
|
|
.cShareLink_twitter { background: #00ACED; }
|
|
|
|
#elIgnoreUsers > li {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.cAutoCheckIcon {
|
|
font-size: 14px;
|
|
position: relative;
|
|
top: 1px;
|
|
}
|
|
|
|
.ipsApp .ipsButton.cMultiQuote {
|
|
line-height: 22px;
|
|
padding: 0 6px;
|
|
}
|
|
|
|
/* Member stats widget */
|
|
.ipsWidget_vertical .cNewestMember {
|
|
width: 85px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsWidget_horizontal .cNewestMember {
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
padding-left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsWidget_horizontal .cNewestMember {
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
padding-right: 15px;
|
|
}
|
|
|
|
.ipsWidget_horizontal .cNewestMember .ipsType_normal {
|
|
line-height: 1;
|
|
}
|
|
|
|
/* Status update widget */
|
|
.ipsWidget .cStatusUpdateWidget .ipsComposeArea_dummy {
|
|
padding: 7px 10px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsWidget .cStatusUpdateWidget .ipsComposeArea_dummy .fa {
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.ipsWidget .cStatusUpdateWidget [data-role="attachmentArea"] {
|
|
display: none !important;
|
|
}
|
|
|
|
.cTagPopup .ipsTags {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
/* New post flash message */
|
|
#elFlashMessage.cPostFlash {
|
|
height: 48px;
|
|
line-height: 32px;
|
|
}
|
|
|
|
.cNotifcationFlash .ipsType_veryLarge {
|
|
font-size: 38px;
|
|
line-height: 1;
|
|
}
|
|
]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="." css_name="flags.css">/* Normal */
|
|
|
|
.ipsFlag {
|
|
width: 16px;
|
|
height: 16px;
|
|
background: url("{resource="flags16.png" app="core" location="global"}") no-repeat;
|
|
display: inline-block;
|
|
vertical-align:text-top;
|
|
line-height:16px;
|
|
}
|
|
|
|
.ipsFlag.ipsFlag-ad{background-position:0 -352px;}
|
|
.ipsFlag.ipsFlag-ae{background-position:0 -368px;}
|
|
.ipsFlag.ipsFlag-af{background-position:0 -384px;}
|
|
.ipsFlag.ipsFlag-ag{background-position:0 -400px;}
|
|
.ipsFlag.ipsFlag-ai{background-position:0 -416px;}
|
|
.ipsFlag.ipsFlag-al{background-position:0 -432px;}
|
|
.ipsFlag.ipsFlag-am{background-position:0 -448px;}
|
|
.ipsFlag.ipsFlag-ao{background-position:0 -464px;}
|
|
.ipsFlag.ipsFlag-aq{background-position:0 -480px;}
|
|
.ipsFlag.ipsFlag-ar{background-position:0 -496px;}
|
|
.ipsFlag.ipsFlag-as{background-position:0 -512px;}
|
|
.ipsFlag.ipsFlag-at{background-position:0 -528px;}
|
|
.ipsFlag.ipsFlag-au{background-position:0 -544px;}
|
|
.ipsFlag.ipsFlag-aw{background-position:0 -560px;}
|
|
.ipsFlag.ipsFlag-ax{background-position:0 -576px;}
|
|
.ipsFlag.ipsFlag-az{background-position:0 -592px;}
|
|
.ipsFlag.ipsFlag-ba{background-position:0 -608px;}
|
|
.ipsFlag.ipsFlag-bb{background-position:0 -624px;}
|
|
.ipsFlag.ipsFlag-bd{background-position:0 -640px;}
|
|
.ipsFlag.ipsFlag-be{background-position:0 -656px;}
|
|
.ipsFlag.ipsFlag-bf{background-position:0 -672px;}
|
|
.ipsFlag.ipsFlag-bg{background-position:0 -688px;}
|
|
.ipsFlag.ipsFlag-bh{background-position:0 -704px;}
|
|
.ipsFlag.ipsFlag-bi{background-position:0 -720px;}
|
|
.ipsFlag.ipsFlag-bj{background-position:0 -736px;}
|
|
.ipsFlag.ipsFlag-bm{background-position:0 -752px;}
|
|
.ipsFlag.ipsFlag-bn{background-position:0 -768px;}
|
|
.ipsFlag.ipsFlag-bo{background-position:0 -784px;}
|
|
.ipsFlag.ipsFlag-br{background-position:0 -800px;}
|
|
.ipsFlag.ipsFlag-bs{background-position:0 -816px;}
|
|
.ipsFlag.ipsFlag-bt{background-position:0 -832px;}
|
|
.ipsFlag.ipsFlag-bw{background-position:0 -848px;}
|
|
.ipsFlag.ipsFlag-by{background-position:0 -864px;}
|
|
.ipsFlag.ipsFlag-bz{background-position:0 -880px;}
|
|
.ipsFlag.ipsFlag-ca{background-position:0 -896px;}
|
|
.ipsFlag.ipsFlag-cg{background-position:0 -912px;}
|
|
.ipsFlag.ipsFlag-cf{background-position:0 -928px;}
|
|
.ipsFlag.ipsFlag-cd{background-position:0 -944px;}
|
|
.ipsFlag.ipsFlag-ch{background-position:0 -960px;}
|
|
.ipsFlag.ipsFlag-ci{background-position:0 -976px;}
|
|
.ipsFlag.ipsFlag-ck{background-position:0 -992px;}
|
|
.ipsFlag.ipsFlag-cl{background-position:0 -1008px;}
|
|
.ipsFlag.ipsFlag-cm{background-position:0 -1024px;}
|
|
.ipsFlag.ipsFlag-cn{background-position:0 -1040px;}
|
|
.ipsFlag.ipsFlag-co{background-position:0 -1056px;}
|
|
.ipsFlag.ipsFlag-cr{background-position:0 -1072px;}
|
|
.ipsFlag.ipsFlag-cu{background-position:0 -1088px;}
|
|
.ipsFlag.ipsFlag-cv{background-position:0 -1104px;}
|
|
.ipsFlag.ipsFlag-cy{background-position:0 -1120px;}
|
|
.ipsFlag.ipsFlag-cz{background-position:0 -1136px;}
|
|
.ipsFlag.ipsFlag-de{background-position:0 -1152px;}
|
|
.ipsFlag.ipsFlag-dj{background-position:0 -1168px;}
|
|
.ipsFlag.ipsFlag-dk{background-position:0 -1184px;}
|
|
.ipsFlag.ipsFlag-dm{background-position:0 -1200px;}
|
|
.ipsFlag.ipsFlag-do{background-position:0 -1216px;}
|
|
.ipsFlag.ipsFlag-dz{background-position:0 -1232px;}
|
|
.ipsFlag.ipsFlag-ec{background-position:0 -1248px;}
|
|
.ipsFlag.ipsFlag-ee{background-position:0 -1264px;}
|
|
.ipsFlag.ipsFlag-eg{background-position:0 -1280px;}
|
|
.ipsFlag.ipsFlag-eh{background-position:0 -1296px;}
|
|
.ipsFlag.ipsFlag-er{background-position:0 -1312px;}
|
|
.ipsFlag.ipsFlag-es{background-position:0 -1328px;}
|
|
.ipsFlag.ipsFlag-et{background-position:0 -1344px;}
|
|
.ipsFlag.ipsFlag-fi{background-position:0 -1360px;}
|
|
.ipsFlag.ipsFlag-fj{background-position:0 -1376px;}
|
|
.ipsFlag.ipsFlag-fm{background-position:0 -1392px;}
|
|
.ipsFlag.ipsFlag-fo{background-position:0 -1408px;}
|
|
.ipsFlag.ipsFlag-fr{background-position:0 -1424px;}
|
|
.ipsFlag.ipsFlag-bl{background-position:0 -1424px;}
|
|
.ipsFlag.ipsFlag-cp{background-position:0 -1424px;}
|
|
.ipsFlag.ipsFlag-mf{background-position:0 -1424px;}
|
|
.ipsFlag.ipsFlag-yt{background-position:0 -1424px;}
|
|
.ipsFlag.ipsFlag-ga{background-position:0 -1440px;}
|
|
.ipsFlag.ipsFlag-gb{background-position:0 -1456px;}
|
|
.ipsFlag.ipsFlag-sh{background-position:0 -1456px;}
|
|
.ipsFlag.ipsFlag-gd{background-position:0 -1472px;}
|
|
.ipsFlag.ipsFlag-ge{background-position:0 -1488px;}
|
|
.ipsFlag.ipsFlag-gg{background-position:0 -1504px;}
|
|
.ipsFlag.ipsFlag-gh{background-position:0 -1520px;}
|
|
.ipsFlag.ipsFlag-gi{background-position:0 -1536px;}
|
|
.ipsFlag.ipsFlag-gl{background-position:0 -1552px;}
|
|
.ipsFlag.ipsFlag-gm{background-position:0 -1568px;}
|
|
.ipsFlag.ipsFlag-gn{background-position:0 -1584px;}
|
|
.ipsFlag.ipsFlag-gp{background-position:0 -1600px;}
|
|
.ipsFlag.ipsFlag-gq{background-position:0 -1616px;}
|
|
.ipsFlag.ipsFlag-gr{background-position:0 -1632px;}
|
|
.ipsFlag.ipsFlag-gt{background-position:0 -1648px;}
|
|
.ipsFlag.ipsFlag-gu{background-position:0 -1664px;}
|
|
.ipsFlag.ipsFlag-gw{background-position:0 -1680px;}
|
|
.ipsFlag.ipsFlag-gy{background-position:0 -1696px;}
|
|
.ipsFlag.ipsFlag-hk{background-position:0 -1712px;}
|
|
.ipsFlag.ipsFlag-hn{background-position:0 -1728px;}
|
|
.ipsFlag.ipsFlag-hr{background-position:0 -1744px;}
|
|
.ipsFlag.ipsFlag-ht{background-position:0 -1760px;}
|
|
.ipsFlag.ipsFlag-hu{background-position:0 -1776px;}
|
|
.ipsFlag.ipsFlag-id{background-position:0 -1792px;}
|
|
.ipsFlag.ipsFlag-mc{background-position:0 -1792px;}
|
|
.ipsFlag.ipsFlag-ie{background-position:0 -1808px;}
|
|
.ipsFlag.ipsFlag-il{background-position:0 -1824px;}
|
|
.ipsFlag.ipsFlag-im{background-position:0 -1840px;}
|
|
.ipsFlag.ipsFlag-in{background-position:0 -1856px;}
|
|
.ipsFlag.ipsFlag-iq{background-position:0 -1872px;}
|
|
.ipsFlag.ipsFlag-ir{background-position:0 -1888px;}
|
|
.ipsFlag.ipsFlag-is{background-position:0 -1904px;}
|
|
.ipsFlag.ipsFlag-it{background-position:0 -1920px;}
|
|
.ipsFlag.ipsFlag-je{background-position:0 -1936px;}
|
|
.ipsFlag.ipsFlag-jm{background-position:0 -1952px;}
|
|
.ipsFlag.ipsFlag-jo{background-position:0 -1968px;}
|
|
.ipsFlag.ipsFlag-jp{background-position:0 -1984px;}
|
|
.ipsFlag.ipsFlag-ke{background-position:0 -2000px;}
|
|
.ipsFlag.ipsFlag-kg{background-position:0 -2016px;}
|
|
.ipsFlag.ipsFlag-kh{background-position:0 -2032px;}
|
|
.ipsFlag.ipsFlag-ki{background-position:0 -2048px;}
|
|
.ipsFlag.ipsFlag-km{background-position:0 -2064px;}
|
|
.ipsFlag.ipsFlag-kn{background-position:0 -2080px;}
|
|
.ipsFlag.ipsFlag-kp{background-position:0 -2096px;}
|
|
.ipsFlag.ipsFlag-kr{background-position:0 -2112px;}
|
|
.ipsFlag.ipsFlag-kw{background-position:0 -2128px;}
|
|
.ipsFlag.ipsFlag-ky{background-position:0 -2144px;}
|
|
.ipsFlag.ipsFlag-kz{background-position:0 -2160px;}
|
|
.ipsFlag.ipsFlag-la{background-position:0 -2176px;}
|
|
.ipsFlag.ipsFlag-lb{background-position:0 -2192px;}
|
|
.ipsFlag.ipsFlag-lc{background-position:0 -2208px;}
|
|
.ipsFlag.ipsFlag-li{background-position:0 -2224px;}
|
|
.ipsFlag.ipsFlag-lk{background-position:0 -2240px;}
|
|
.ipsFlag.ipsFlag-lr{background-position:0 -2256px;}
|
|
.ipsFlag.ipsFlag-ls{background-position:0 -2272px;}
|
|
.ipsFlag.ipsFlag-lt{background-position:0 -2288px;}
|
|
.ipsFlag.ipsFlag-lu{background-position:0 -2304px;}
|
|
.ipsFlag.ipsFlag-lv{background-position:0 -2320px;}
|
|
.ipsFlag.ipsFlag-ly{background-position:0 -2336px;}
|
|
.ipsFlag.ipsFlag-ma{background-position:0 -2352px;}
|
|
.ipsFlag.ipsFlag-md{background-position:0 -2368px;}
|
|
.ipsFlag.ipsFlag-me{background-position:0 -2384px;}
|
|
.ipsFlag.ipsFlag-mg{background-position:0 -2400px;}
|
|
.ipsFlag.ipsFlag-mh{background-position:0 -2416px;}
|
|
.ipsFlag.ipsFlag-mk{background-position:0 -2432px;}
|
|
.ipsFlag.ipsFlag-ml{background-position:0 -2448px;}
|
|
.ipsFlag.ipsFlag-mm{background-position:0 -2464px;}
|
|
.ipsFlag.ipsFlag-mn{background-position:0 -2480px;}
|
|
.ipsFlag.ipsFlag-mo{background-position:0 -2496px;}
|
|
.ipsFlag.ipsFlag-mq{background-position:0 -2512px;}
|
|
.ipsFlag.ipsFlag-mr{background-position:0 -2528px;}
|
|
.ipsFlag.ipsFlag-ms{background-position:0 -2544px;}
|
|
.ipsFlag.ipsFlag-mt{background-position:0 -2560px;}
|
|
.ipsFlag.ipsFlag-mu{background-position:0 -2576px;}
|
|
.ipsFlag.ipsFlag-mv{background-position:0 -2592px;}
|
|
.ipsFlag.ipsFlag-mw{background-position:0 -2608px;}
|
|
.ipsFlag.ipsFlag-mx{background-position:0 -2624px;}
|
|
.ipsFlag.ipsFlag-my{background-position:0 -2640px;}
|
|
.ipsFlag.ipsFlag-mz{background-position:0 -2656px;}
|
|
.ipsFlag.ipsFlag-na{background-position:0 -2672px;}
|
|
.ipsFlag.ipsFlag-nc{background-position:0 -2688px;}
|
|
.ipsFlag.ipsFlag-ne{background-position:0 -2704px;}
|
|
.ipsFlag.ipsFlag-ng{background-position:0 -2720px;}
|
|
.ipsFlag.ipsFlag-ni{background-position:0 -2736px;}
|
|
.ipsFlag.ipsFlag-nl{background-position:0 -2752px;}
|
|
.ipsFlag.ipsFlag-bq{background-position:0 -2752px;}
|
|
.ipsFlag.ipsFlag-no{background-position:0 -2768px;}
|
|
.ipsFlag.ipsFlag-bv{background-position:0 -2768px;}
|
|
.ipsFlag.ipsFlag-nq{background-position:0 -2768px;}
|
|
.ipsFlag.ipsFlag-sj{background-position:0 -2768px;}
|
|
.ipsFlag.ipsFlag-np{background-position:0 -2784px;}
|
|
.ipsFlag.ipsFlag-nr{background-position:0 -2800px;}
|
|
.ipsFlag.ipsFlag-nz{background-position:0 -2816px;}
|
|
.ipsFlag.ipsFlag-om{background-position:0 -2832px;}
|
|
.ipsFlag.ipsFlag-pa{background-position:0 -2848px;}
|
|
.ipsFlag.ipsFlag-pe{background-position:0 -2864px;}
|
|
.ipsFlag.ipsFlag-pf{background-position:0 -2880px;}
|
|
.ipsFlag.ipsFlag-pg{background-position:0 -2896px;}
|
|
.ipsFlag.ipsFlag-ph{background-position:0 -2912px;}
|
|
.ipsFlag.ipsFlag-pk{background-position:0 -2928px;}
|
|
.ipsFlag.ipsFlag-pl{background-position:0 -2944px;}
|
|
.ipsFlag.ipsFlag-pr{background-position:0 -2960px;}
|
|
.ipsFlag.ipsFlag-ps{background-position:0 -2976px;}
|
|
.ipsFlag.ipsFlag-pt{background-position:0 -2992px;}
|
|
.ipsFlag.ipsFlag-pw{background-position:0 -3008px;}
|
|
.ipsFlag.ipsFlag-py{background-position:0 -3024px;}
|
|
.ipsFlag.ipsFlag-qa{background-position:0 -3040px;}
|
|
.ipsFlag.ipsFlag-re{background-position:0 -3056px;}
|
|
.ipsFlag.ipsFlag-ro{background-position:0 -3072px;}
|
|
.ipsFlag.ipsFlag-rs{background-position:0 -3088px;}
|
|
.ipsFlag.ipsFlag-ru{background-position:0 -3104px;}
|
|
.ipsFlag.ipsFlag-rw{background-position:0 -3120px;}
|
|
.ipsFlag.ipsFlag-sa{background-position:0 -3136px;}
|
|
.ipsFlag.ipsFlag-sb{background-position:0 -3152px;}
|
|
.ipsFlag.ipsFlag-sc{background-position:0 -3168px;}
|
|
.ipsFlag.ipsFlag-sd{background-position:0 -3184px;}
|
|
.ipsFlag.ipsFlag-se{background-position:0 -3200px;}
|
|
.ipsFlag.ipsFlag-sg{background-position:0 -3216px;}
|
|
.ipsFlag.ipsFlag-si{background-position:0 -3232px;}
|
|
.ipsFlag.ipsFlag-sk{background-position:0 -3248px;}
|
|
.ipsFlag.ipsFlag-sl{background-position:0 -3264px;}
|
|
.ipsFlag.ipsFlag-sm{background-position:0 -3280px;}
|
|
.ipsFlag.ipsFlag-sn{background-position:0 -3296px;}
|
|
.ipsFlag.ipsFlag-so{background-position:0 -3312px;}
|
|
.ipsFlag.ipsFlag-sr{background-position:0 -3328px;}
|
|
.ipsFlag.ipsFlag-st{background-position:0 -3344px;}
|
|
.ipsFlag.ipsFlag-sv{background-position:0 -3360px;}
|
|
.ipsFlag.ipsFlag-sy{background-position:0 -3376px;}
|
|
.ipsFlag.ipsFlag-sz{background-position:0 -3392px;}
|
|
.ipsFlag.ipsFlag-tc{background-position:0 -3408px;}
|
|
.ipsFlag.ipsFlag-td{background-position:0 -3424px;}
|
|
.ipsFlag.ipsFlag-tg{background-position:0 -3440px;}
|
|
.ipsFlag.ipsFlag-th{background-position:0 -3456px;}
|
|
.ipsFlag.ipsFlag-tj{background-position:0 -3472px;}
|
|
.ipsFlag.ipsFlag-tl{background-position:0 -3488px;}
|
|
.ipsFlag.ipsFlag-tm{background-position:0 -3504px;}
|
|
.ipsFlag.ipsFlag-tn{background-position:0 -3520px;}
|
|
.ipsFlag.ipsFlag-to{background-position:0 -3536px;}
|
|
.ipsFlag.ipsFlag-tr{background-position:0 -3552px;}
|
|
.ipsFlag.ipsFlag-tt{background-position:0 -3568px;}
|
|
.ipsFlag.ipsFlag-tv{background-position:0 -3584px;}
|
|
.ipsFlag.ipsFlag-tw{background-position:0 -3600px;}
|
|
.ipsFlag.ipsFlag-tz{background-position:0 -3616px;}
|
|
.ipsFlag.ipsFlag-ua{background-position:0 -3632px;}
|
|
.ipsFlag.ipsFlag-ug{background-position:0 -3648px;}
|
|
.ipsFlag.ipsFlag-us{background-position:0 -3664px;}
|
|
.ipsFlag.ipsFlag-uy{background-position:0 -3680px;}
|
|
.ipsFlag.ipsFlag-uz{background-position:0 -3696px;}
|
|
.ipsFlag.ipsFlag-va{background-position:0 -3712px;}
|
|
.ipsFlag.ipsFlag-vc{background-position:0 -3728px;}
|
|
.ipsFlag.ipsFlag-ve{background-position:0 -3744px;}
|
|
.ipsFlag.ipsFlag-vg{background-position:0 -3760px;}
|
|
.ipsFlag.ipsFlag-vi{background-position:0 -3776px;}
|
|
.ipsFlag.ipsFlag-vn{background-position:0 -3792px;}
|
|
.ipsFlag.ipsFlag-vu{background-position:0 -3808px;}
|
|
.ipsFlag.ipsFlag-ws{background-position:0 -3824px;}
|
|
.ipsFlag.ipsFlag-ye{background-position:0 -3840px;}
|
|
.ipsFlag.ipsFlag-za{background-position:0 -3856px;}
|
|
.ipsFlag.ipsFlag-zm{background-position:0 -3872px;}
|
|
.ipsFlag.ipsFlag-zw{background-position:0 -3888px;}
|
|
.ipsFlag.ipsFlag-sx{background-position:0 -3904px;}
|
|
.ipsFlag.ipsFlag-cw{background-position:0 -3920px;}
|
|
.ipsFlag.ipsFlag-ss{background-position:0 -3936px;}
|
|
|
|
/* Retina */
|
|
@media
|
|
(-webkit-min-device-pixel-ratio: 2),
|
|
(min-resolution: 192dpi) {
|
|
.ipsFlag {
|
|
background: url("{resource="flags32.png" app="core" location="global"}") no-repeat;
|
|
background-size: 16px 3952px;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="buttons.css">.ipsApp_admin .ipsButton_simple {
|
|
font-weight: 400;
|
|
font-size: 13px;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="controlstrip.css">.ipsControlStrip {
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
display: inline-block;
|
|
border-radius: 4px;
|
|
opacity: 0.8;
|
|
float: right;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip {
|
|
float: left;
|
|
}
|
|
|
|
.ipsControlStrip li {
|
|
display: inline-block;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsControlStrip a {
|
|
display: block;
|
|
background: rgb(252,252,252);
|
|
background: -moz-linear-gradient(top, rgba(252,252,252,1) 0%, rgba(244,244,244,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(252,252,252,1)), color-stop(100%,rgba(244,244,244,1)));
|
|
background: -webkit-linear-gradient(top, rgba(252,252,252,1) 0%,rgba(244,244,244,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(252,252,252,1) 0%,rgba(244,244,244,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(252,252,252,1) 0%,rgba(244,244,244,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(252,252,252,1) 0%,rgba(244,244,244,1) 100%);
|
|
color: #000;
|
|
width: 30px;
|
|
height: 24px;
|
|
text-align: center;
|
|
}
|
|
html[dir="ltr"] .ipsControlStrip a {
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip a {
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
.ipsControlStrip a:active {
|
|
background: rgb(244,244,244);
|
|
background: -moz-linear-gradient(top, rgba(244,244,244,1) 0%, rgba(252,252,252,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(244,244,244,1)), color-stop(100%,rgba(252,252,252,1)));
|
|
background: -webkit-linear-gradient(top, rgba(244,244,244,1) 0%,rgba(252,252,252,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(244,244,244,1) 0%,rgba(252,252,252,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(244,244,244,1) 0%,rgba(252,252,252,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(244,244,244,1) 0%,rgba(252,252,252,1) 100%);
|
|
box-shadow: 0px 1px 2px rgba(0,0,0,0.4) inset;
|
|
}
|
|
|
|
.ipsControlStrip .ipsControlStrip_icon {
|
|
font-size: 18px;
|
|
line-height: 24px;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsControlStrip .ipsControlStrip_item {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsControlStrip li:first-child a {
|
|
border-radius: 3px 0 0 3px;
|
|
border-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip li:first-child a {
|
|
border-radius: 0 3px 3px 0;
|
|
border-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsControlStrip li:last-child a {
|
|
border-radius: 0 3px 3px 0;
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip li:last-child a {
|
|
border-radius: 3px 0 0 3px;
|
|
}
|
|
|
|
/* Relationships with other css modules */
|
|
.ipsTable tr .ipsControlStrip a, .ipsTree_row .ipsControlStrip a {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.ipsTable tr:hover .ipsControlStrip a, .ipsTree_row:hover .ipsControlStrip a {
|
|
opacity: 1;
|
|
}
|
|
|
|
/* Show text option */
|
|
.ipsControlStrip.ipsControlStrip_showText a {
|
|
width: auto;
|
|
padding: 0 7px;
|
|
}
|
|
|
|
.ipsControlStrip.ipsControlStrip_showText .ipsControlStrip_icon {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsControlStrip.ipsControlStrip_showText .ipsControlStrip_item {
|
|
display: inline-block;
|
|
font-size: 12px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsControlStrip.ipsControlStrip_showText .ipsControlStrip_item {
|
|
margin-left: 3px;
|
|
}
|
|
html[dir="rtl"] .ipsControlStrip.ipsControlStrip_showText .ipsControlStrip_item {
|
|
margin-right: 3px;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="forms.css"><![CDATA[.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label,
|
|
.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
width: 340px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-left: 345px;
|
|
}
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-right: 345px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-left: 1;
|
|
}
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-right: 1;
|
|
}
|
|
|
|
.ipsWidthHeight {
|
|
background: white;
|
|
border: black dashed 1px;
|
|
margin-bottom: 10px;
|
|
}
|
|
/* jQuery UI doesn't support resizing RTL */
|
|
html[dir="rtl"] .ipsWidthHeight {
|
|
display: none;
|
|
}
|
|
|
|
.ui-icon-gripsmall-diagonal-se {
|
|
background: url( "{resource="resizable.png" app="core" location="global"}" );
|
|
}
|
|
|
|
.ui-resizable {
|
|
position: relative;
|
|
}
|
|
.ui-resizable-handle {
|
|
position: absolute;
|
|
font-size: 0.1px;
|
|
display: block;
|
|
}
|
|
.ui-resizable-se {
|
|
cursor: nwse-resize;
|
|
width: 12px;
|
|
height: 12px;
|
|
right: 0px;
|
|
bottom: 0px;
|
|
}
|
|
|
|
a.matrixDelete {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.cCopyNode + textarea.ipsField_fullWidth {
|
|
width: 90%;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="global.css"><![CDATA[body {
|
|
background: transparent;
|
|
position: absolute;
|
|
width: 100%;
|
|
}
|
|
|
|
footer {
|
|
background: none repeat scroll 0 0 #262e33;
|
|
}
|
|
footer a, #ipsLayout_footer a, #ipsLayout_footer p {
|
|
color: #eee;
|
|
}
|
|
|
|
#ipsLayout_footer {
|
|
margin: 0;
|
|
padding: 20px 0;
|
|
}
|
|
|
|
.pac-container {
|
|
z-index: 20000 !important;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin {
|
|
padding-top: 58px;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header {
|
|
position: fixed;
|
|
top: 0;
|
|
width: 100%;
|
|
z-index: 2000;
|
|
border-bottom: 0 !important;
|
|
}
|
|
html[dir="ltr"] .ipsApp.ipsApp_admin #ipsLayout_header {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsApp.ipsApp_admin #ipsLayout_header {
|
|
right: 0;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header header {
|
|
line-height: 58px;
|
|
height: 58px;
|
|
padding: 0 15px;
|
|
background: #417ba3;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header header a {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header #elSiteTitle {
|
|
line-height: 1;
|
|
margin-top: 14px;
|
|
}
|
|
.ipsApp.ipsApp_admin #ipsLayout_header #elTitle {
|
|
font-size: 20px;
|
|
margin-top: -2px;
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
}
|
|
.ipsApp.ipsApp_admin #ipsLayout_header #elVersion {
|
|
display: block;
|
|
font-size: 13px;
|
|
font-weight: normal;
|
|
opacity: 0.6;
|
|
}
|
|
html[dir="ltr"] .ipsApp.ipsApp_admin #ipsLayout_header #elSiteTitle {
|
|
float: left;
|
|
margin-right: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsApp.ipsApp_admin #ipsLayout_header #elSiteTitle {
|
|
float: right;
|
|
margin-left: 30px;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #elLogo img {
|
|
display: none;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #elLogo {
|
|
display: inline-block;
|
|
width: 26px;
|
|
height: 25px;
|
|
vertical-align: middle;
|
|
margin: -3px 5px 0 0;
|
|
background-image: url( "{resource="logo.png" app="core" location="admin"}" );
|
|
background-repeat: no-repeat;
|
|
background-size: 26px 25px;
|
|
}
|
|
html[dir="rtl"] .ipsApp.ipsApp_admin #elLogo {
|
|
margin: -3px 0 0 5px;
|
|
}
|
|
|
|
#acpLiveSearch {
|
|
position: absolute;
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] #acpLiveSearch {
|
|
margin: 6px 10px 0 0;
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #acpLiveSearch {
|
|
margin: 6px 0 0 10px;
|
|
left: 0;
|
|
}
|
|
|
|
#acpLiveSearch input {
|
|
width: 300px;
|
|
}
|
|
|
|
#acpMainLayout {
|
|
height: 100%;
|
|
position: relative;
|
|
z-index: 1500;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin .ipsSubNavigation {
|
|
padding: 0 0 15px 0;
|
|
background: transparent;
|
|
}
|
|
|
|
#acpJumpToContent {
|
|
position: absolute;
|
|
top: 2px;
|
|
color: #fff;
|
|
font-size: 11px;
|
|
margin-left: -1000px;
|
|
}
|
|
|
|
html[dir="ltr"] #acpJumpToContent {
|
|
left: 53px;
|
|
}
|
|
|
|
html[dir="rtl"] #acpJumpToContent {
|
|
right: 53px;
|
|
}
|
|
|
|
html[dir="ltr"] #acpJumpToContent:focus {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] #acpJumpToContent:focus {
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* MAIN APP MENU */
|
|
#acpAppMenu {
|
|
background: #262e33;
|
|
width: 320px !important;
|
|
}
|
|
|
|
#acpAppList {
|
|
text-align: center;
|
|
height: 100%;
|
|
}
|
|
|
|
#acpAppList > li {
|
|
width: 120px;
|
|
}
|
|
|
|
#acpAppList > li:not( #elReorderAppMenu ) > a {
|
|
display: block;
|
|
color: rgba(255,255,255,0.5);
|
|
padding: 15px 0;
|
|
z-index: 2000;
|
|
position: relative;
|
|
}
|
|
|
|
#acpAppList > li.acpAppList_dragging > ul {
|
|
display: none !important;
|
|
}
|
|
|
|
#acpAppList > li:not( #elReorderAppMenu ).acpAppList_active > a {
|
|
color: #fff;
|
|
background: #394248;
|
|
}
|
|
|
|
#acpAppList .acpAppList_icon {
|
|
font-size: 40px;
|
|
display: block;
|
|
}
|
|
|
|
#acpAppList > li > ul {
|
|
display: none;
|
|
position: absolute;
|
|
right: 0;
|
|
left: 120px;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 200px;
|
|
text-align: left;
|
|
background: #394248;
|
|
padding: 15px;
|
|
opacity: 0;
|
|
display: none;
|
|
z-index: 1500;
|
|
overflow: auto;
|
|
overflow-x: hidden;
|
|
{prefix="transition" value="0.3s all linear"}
|
|
}
|
|
html[dir="rtl"] #acpAppList > li > ul {
|
|
right: 120px;
|
|
left: 0;
|
|
text-align: right;
|
|
}
|
|
|
|
#acpAppList > li.acpAppList_active > ul {
|
|
display: block;
|
|
opacity: 1;
|
|
}
|
|
|
|
#acpAppList > li > ul {
|
|
line-height: 1.8;
|
|
}
|
|
|
|
#acpAppList > li > ul a {
|
|
color: rgba(255,255,255,0.6);
|
|
}
|
|
|
|
#acpAppList > li > ul h3 {
|
|
font-size: 17px;
|
|
font-weight: normal;
|
|
color: #fff;
|
|
margin: 0 0 4px 0;
|
|
}
|
|
|
|
#acpAppList > li > ul > li {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
#acpAppList > li > ul .acpModuleMenu_active {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Styles for the collapsing admin menu */
|
|
.cAdminHideMenu #acpAppList > li.acpAppList_active > ul,
|
|
body:not( .cAdminHideMenu ) #elHideMenu [data-action='toggleOpen'] {
|
|
display: none;
|
|
}
|
|
|
|
.cAdminHideMenu #acpAppList, .cAdminHideMenu #acpAppMenu {
|
|
width: 120px !important;
|
|
}
|
|
|
|
.cAdminHideMenu #acpAppList > li.acpAppList_active:hover > ul {
|
|
display: block;
|
|
}
|
|
|
|
.cAdminHideMenu #acpAppList > li:hover > ul {
|
|
box-shadow: 0px -2px 36px rgba(0,0,0,0.2);
|
|
}
|
|
|
|
.cAdminHideMenu #elHideMenu [data-action='toggleClose'] {
|
|
display: none;
|
|
}
|
|
|
|
/* Hover fallbacks for non-js */
|
|
.ipsJS_none #acpAppList:hover > li:not( #elReorderAppMenu ) > a {
|
|
background: transparent;
|
|
}
|
|
|
|
.ipsJS_none #acpAppList > li:not( #elReorderAppMenu ):hover > a {
|
|
color: #fff;
|
|
background: #394248;
|
|
}
|
|
|
|
.ipsJS_none #acpAppList:hover > li > ul {
|
|
display: none;
|
|
}
|
|
|
|
.ipsJS_none #acpAppList > li:hover > a + ul {
|
|
display: block;
|
|
opacity: 1;
|
|
}
|
|
|
|
/* Hide menu stuff */
|
|
#acpAppList #elHideMenu {
|
|
width: 16px;
|
|
height: 32px;
|
|
line-height: 32px;
|
|
position: fixed;
|
|
bottom: 0;
|
|
z-index: 6000;
|
|
background: #394248;
|
|
border-radius: 3px 0 0 0;
|
|
}
|
|
|
|
html[dir="ltr"] #acpAppList #elHideMenu {
|
|
left: 104px;
|
|
}
|
|
html[dir="rtl"] #acpAppList #elHideMenu {
|
|
right: 104px;
|
|
}
|
|
|
|
#acpAppList #elHideMenu a {
|
|
padding: 0 !important;
|
|
}
|
|
|
|
#acpAppList #elHideMenu a:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
/* Tab reordering stuff */
|
|
#acpAppList #elReorderAppMenu {
|
|
background: #262e33;
|
|
position: fixed;
|
|
bottom: 0;
|
|
z-index: 5000;
|
|
}
|
|
|
|
html[dir="ltr"] #acpAppList #elReorderAppMenu {
|
|
padding: 7px 23px 7px 7px;
|
|
}
|
|
html[dir="rtl"] #acpAppList #elReorderAppMenu {
|
|
padding: 7px 7px 7px 23px;
|
|
}
|
|
|
|
#acpAppList #elReorderAppMenu a {
|
|
color: rgba(255,255,255,0.4);
|
|
opacity: 0.5;
|
|
}
|
|
|
|
#acpAppList #elReorderAppMenu a[data-action="reorder"]:hover,
|
|
#acpAppList #elReorderAppMenu a[data-action="saveOrder"] {
|
|
opacity: 1;
|
|
color: #fff;
|
|
}
|
|
|
|
#acpAppList > li > a > span[data-role='reorder'] {
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -20px;
|
|
}
|
|
html[dir="ltr"] #acpAppList > li > a > span[data-role='reorder'] {
|
|
left: 5px;
|
|
}
|
|
html[dir="rtl"] #acpAppList > li > a > span[data-role='reorder'] {
|
|
left: auto;
|
|
right: 5px;
|
|
}
|
|
|
|
#acpAppList > li > ul > li span[data-role="reorder"] {
|
|
display: inline-block;
|
|
width: 18px;
|
|
height: 18px;
|
|
line-height: 18px;
|
|
font-size: 10px;
|
|
}
|
|
html[dir="ltr"] #acpAppList > li > ul > li span[data-role="reorder"] {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] #acpAppList > li > ul > li span[data-role="reorder"] {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
#acpAppList span[data-role="reorder"] {
|
|
background: #f5f5f5;
|
|
color: #000;
|
|
width: 27px;
|
|
height: 27px;
|
|
line-height: 27px;
|
|
border-radius: 27px;
|
|
text-align: center;
|
|
display: block;
|
|
cursor: move;
|
|
}
|
|
|
|
/* CONTENT AREA */
|
|
#acpMainArea {
|
|
background: #fff;
|
|
}
|
|
|
|
#acpContent {
|
|
padding: 30px 15px;
|
|
}
|
|
|
|
#acpPageHeader {
|
|
background: #d9e8f3;
|
|
padding: 30px 15px 15px;
|
|
}
|
|
|
|
#acpPageHeader .ipsType_pageTitle {
|
|
color: #262e33;
|
|
}
|
|
|
|
#acpPageHeader .ipsSubNavigation {
|
|
margin-top: -15px;
|
|
}
|
|
|
|
.acpToolbar {
|
|
background: #d9e8f3;
|
|
padding: 0 15px 10px;
|
|
}
|
|
|
|
.acpToolbar > ul {
|
|
margin: 0;
|
|
}
|
|
|
|
.acpToolbar li {
|
|
margin: 0 5px 5px 0;
|
|
}
|
|
html[dir="rtl"] .acpToolbar li {
|
|
margin: 0 0 5px 5px;
|
|
}
|
|
|
|
.acpWidgetToolbar {
|
|
position: relative;
|
|
}
|
|
|
|
.acpWidgetSearch {
|
|
width: 26px;
|
|
height: 26px;
|
|
line-height: 26px;
|
|
border-radius: 3px;
|
|
display: inline-block;
|
|
text-align: center;
|
|
color: #fff;
|
|
background: rgba(255,255,255,0.2);
|
|
font-size: 15px;
|
|
}
|
|
html[dir="ltr"] .acpWidgetSearch {
|
|
margin-left: 4px;
|
|
}
|
|
html[dir="rtl"] .acpWidgetSearch {
|
|
margin-right: 4px;
|
|
}
|
|
|
|
.acpWidgetSearch:hover {
|
|
background: rgba(255,255,255,0.1);
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_dark,
|
|
.ipsSideMenu_itemActive a, a.ipsSideMenu_itemActive {
|
|
background: #394248;
|
|
}
|
|
|
|
.ipsButtonBar {
|
|
background: #4e5b62;
|
|
}
|
|
|
|
.ipsButtonRow li > a, .ipsButtonRow li > span {
|
|
background: rgba(255,255,255,0.2);
|
|
color: #fff;
|
|
text-shadow: none;
|
|
}
|
|
|
|
.ipsButtonRow li > a:not( .ipsButtonRow_active ):hover, .ipsButtonRow li > span:not( .ipsButtonRow_active ):hover {
|
|
background: rgba(255,255,255,0.1);
|
|
}
|
|
|
|
/* BLOCKS */
|
|
.acpBlock_title {
|
|
padding: 15px;
|
|
margin: 0;
|
|
background: #f0f0f0;
|
|
color: #151515;
|
|
font-size: 16px;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.acpBlock_title.acpBlock_titleDark {
|
|
color: #fff;
|
|
background: #394248;
|
|
}
|
|
|
|
.ipsDialog_content .acpBlock {
|
|
padding: 15px;
|
|
}
|
|
|
|
.acpBlock_titleSmall {
|
|
font-size: 14px;
|
|
padding: 10px;
|
|
}
|
|
|
|
/* MOBILE STUFF */
|
|
#elAdminMobileNav {
|
|
position: absolute;
|
|
top: 0px;
|
|
}
|
|
|
|
#elAdminMobileNav li a {
|
|
width: 50px;
|
|
height: 50px;
|
|
line-height: 50px;
|
|
color: #fff;
|
|
text-align: center;
|
|
font-size: 26px;
|
|
margin: 0;
|
|
position: relative;
|
|
display: block;
|
|
}
|
|
|
|
#elUserNav_mobile a {
|
|
color: #fff;
|
|
}
|
|
|
|
#elMobileDrawer > .ipsDrawer_menu {
|
|
z-index: 10000;
|
|
}
|
|
|
|
#elMobileDrawer .acpAppList_icon {
|
|
font-size: 20px;
|
|
display: inline-block;
|
|
width: 26px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsToolList_horizontal {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* BUTTON BAR & SEARCH */
|
|
.ipsApp input.acpTable_search {
|
|
padding: 4px;
|
|
color: #000;
|
|
}
|
|
|
|
/* DRAGGING */
|
|
.ipsDrag .ipsDrag_dragHandle {
|
|
cursor: move;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
|
|
.ipsDrag:hover .ipsDrag_dragHandle {
|
|
opacity: 0.4;
|
|
}
|
|
|
|
.ipsDrag .ipsDrag_dragHandle:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsTabs .ipsNotificationCount {
|
|
position: relative;
|
|
top: 0px;
|
|
right: 0px !important;
|
|
}
|
|
|
|
/* HIGH RES IMAGES */
|
|
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
|
|
.ipsApp.ipsApp_admin #elLogo {
|
|
background-image: url( "{resource="logo@2x.png" app="core" location="admin"}" );
|
|
}
|
|
}
|
|
|
|
/* My Media */
|
|
.cMyMedia [data-role='status'] {
|
|
/*display: none;*/
|
|
}
|
|
|
|
.cMyMedia [data-role="myMediaContent"] {
|
|
overflow-y: auto;
|
|
overflow-x: hidden;
|
|
}
|
|
html[dir="ltr"] .cMyMedia .ipsColumn [data-role="myMediaContent"] {
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] .cMyMedia .ipsColumn [data-role="myMediaContent"] {
|
|
padding-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cMyMedia .ipsSideMenu {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="rtl"] .cMyMedia .ipsSideMenu {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.cMyMedia_controls {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="livesearch.css">#acpLiveSearchResults {
|
|
width: 650px;
|
|
top: 58px;
|
|
bottom: 0;
|
|
position: fixed;
|
|
background: #fff;
|
|
}
|
|
html[dir="ltr"] #acpLiveSearchResults {
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] #acpLiveSearchResults {
|
|
left: 10px;
|
|
}
|
|
|
|
#acpLiveSearchResults .ipsColumns {
|
|
height: 100%;
|
|
}
|
|
|
|
#acpLiveSearchResults [data-role="searchMenu"] {
|
|
background: #f9f9f9;
|
|
}
|
|
html[dir="ltr"] #acpLiveSearchResults [data-role="searchMenu"] {
|
|
border-right: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
html[dir="rtl"] #acpLiveSearchResults [data-role="searchMenu"] {
|
|
border-left: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
|
|
#acpLiveSearchResults [data-role="searchResults"] {
|
|
overflow: auto;
|
|
}
|
|
|
|
#acpLiveSearchResults:before {
|
|
content: '';
|
|
display: block;
|
|
border-width: 15px;
|
|
border-style: solid;
|
|
border-color: transparent transparent #fff transparent;
|
|
position: absolute;
|
|
top: -30px;
|
|
width: 0;
|
|
height: 0;
|
|
pointer-events: none;
|
|
}
|
|
html[dir="ltr"] #acpLiveSearchResults:before {
|
|
right: 250px;
|
|
}
|
|
html[dir="rtl"] #acpLiveSearchResults:before {
|
|
left: 250px;
|
|
}
|
|
|
|
#acpLiveSearchResults [data-resultsSection] {
|
|
overflow: auto;
|
|
height: 100%;
|
|
}
|
|
|
|
#acpLiveSearchResults .ipsPad_top {
|
|
padding-top: 2px;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="support.css">.cSupportQuery {
|
|
border: 0 !important;
|
|
white-space: pre-wrap;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="tabs.css">/* TAB BAR */
|
|
.acpFormTabBar {
|
|
background: #4e5b62;
|
|
}
|
|
|
|
.ipsTabs_item { position: relative; }
|
|
|
|
.acpFormTabBar .ipsTabs_item:not( .ipsTabs_activeItem ) {
|
|
color: #fff;
|
|
background: rgba(255,255,255,0.2);
|
|
}
|
|
|
|
.acpFormTabBar .ipsTabs_activeItem {
|
|
background: #f9f9f9;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.acpFormTabContent {
|
|
border: 10px solid #f9f9f9;
|
|
}
|
|
|
|
.acpFormTabContent .ipsToolList {
|
|
background: #f9f9f9;
|
|
padding-bottom: 10px;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsApp_admin .ipsTabs_activeItem {
|
|
border-top: 0;
|
|
}
|
|
|
|
.ipsApp_admin .ipsTabs_item {
|
|
border-top: 1px solid #4e5b62;
|
|
}
|
|
html[dir="ltr"] .ipsApp_admin .ipsTabs_item {
|
|
border-right: 1px solid #4e5b62;
|
|
}
|
|
html[dir="rtl"] .ipsApp_admin .ipsTabs_item {
|
|
border-left: 1px solid #4e5b62;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="treelist.css"><![CDATA[.ipsTreeList, .ipsTreeList ul {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
.ipsTreeList a {
|
|
color: #333;
|
|
padding: 7px 0;
|
|
font-size: 14px;
|
|
display: block;
|
|
position: relative;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTreeList li a { padding-left: 15px; }
|
|
html[dir="ltr"] .ipsTreeList li li a { padding-left: 30px; }
|
|
html[dir="ltr"] .ipsTreeList li li li a { padding-left: 45px; }
|
|
html[dir="ltr"] .ipsTreeList li li li li a { padding-left: 60px; }
|
|
html[dir="rtl"] .ipsTreeList li a { padding-right: 15px; }
|
|
html[dir="rtl"] .ipsTreeList li li a { padding-right: 30px; }
|
|
html[dir="rtl"] .ipsTreeList li li li a { padding-right: 45px; }
|
|
html[dir="rtl"] .ipsTreeList li li li li a { padding-right: 60px; }
|
|
|
|
.ipsTreeList_inactiveBranch > ul {
|
|
display: none;
|
|
}
|
|
|
|
.ipsTreeList_inactiveBranch > a:before,
|
|
.ipsTreeList_activeBranch > a:before {
|
|
font-family: 'FontAwesome';
|
|
font-size: 14px;
|
|
line-height: 6px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTreeList_inactiveBranch > a:before,
|
|
html[dir="ltr"] .ipsTreeList_activeBranch > a:before {
|
|
margin-right: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsTreeList_inactiveBranch > a:before,
|
|
html[dir="rtl"] .ipsTreeList_activeBranch > a:before {
|
|
margin-right: 7px;
|
|
}
|
|
|
|
.ipsTreeList_inactiveBranch > a:before {
|
|
content: '\f0da';
|
|
}
|
|
.ipsTreeList_activeBranch > a:before {
|
|
content: '\f0d7';
|
|
}
|
|
|
|
.ipsTreeList_activeNode > a {
|
|
background: #748391;
|
|
color: #fff;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="trees.css"><![CDATA[.ipsTree, .ipsTree ol {
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsTree_row {
|
|
display: table;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsTree_row + form > .ipsTree_rows {
|
|
padding-left: 15px;
|
|
}
|
|
|
|
.ipsTree_row > div {
|
|
display: table-cell;
|
|
}
|
|
|
|
.ipsTree_row:hover .ipsControlStrip {
|
|
opacity: 1;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTree_loadingRow {
|
|
padding: 10px 10px 10px 30px;
|
|
}
|
|
html[dir="ltr"] .ipsTree_loadingRow:before {
|
|
left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_loadingRow {
|
|
padding: 10px 30px 10px 10px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_loadingRow:before {
|
|
right: 15px;
|
|
}
|
|
|
|
/* Cell types */
|
|
.ipsTree_drag {
|
|
min-width: 30px;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsTree_drag .ipsTree_dragHandle {
|
|
opacity: 0.2;
|
|
}
|
|
|
|
.ipsTree_controls {
|
|
width: 110px;
|
|
min-width: 110px;
|
|
vertical-align: top;
|
|
padding-top: 12px;
|
|
}
|
|
html[dir="ltr"] .ipsTree_controls {
|
|
padding-right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_controls {
|
|
padding-left: 10px;
|
|
}
|
|
|
|
.ipsTree_controls .ipsControlStrip {
|
|
float: right;
|
|
}
|
|
html[dir="rtl"] .ipsTree_controls .ipsControlStrip {
|
|
float: left;
|
|
}
|
|
|
|
.ipsTree_rowData {
|
|
width: 100%;
|
|
padding: 15px 10px;
|
|
position: relative;
|
|
}
|
|
|
|
/* Stack styles */
|
|
.ipsTree_rowData h4 {
|
|
margin: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsTree_parent.ipsTree_row:not( .ipsTree_noToggle ):hover > div {
|
|
background: rgba(0,0,0,0.03);
|
|
cursor: pointer;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData {
|
|
padding-left: 25px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData {
|
|
padding-right: 25px;
|
|
}
|
|
|
|
.ipsTree_parent.ipsTree_row > .ipsTree_rowData h4 {
|
|
font-weight: bold;
|
|
font-size: 14px;
|
|
position: relative;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsJS_has .ipsTree_parent.ipsTree_row > .ipsTree_rowData h4 a {
|
|
color: inherit;
|
|
}
|
|
|
|
.ipsTree_parent.ipsTree_row > .ipsTree_rowData h4:before {
|
|
position: absolute;
|
|
top: 0;
|
|
content: '\f04b';
|
|
font-family: 'FontAwesome';
|
|
font-size: 11px;
|
|
text-align: center;
|
|
display: block;
|
|
opacity: 0.8;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
html[dir="ltr"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData h4:before {
|
|
left: -20px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData h4:before {
|
|
right: -20px;
|
|
}
|
|
|
|
.ipsTree_parent.ipsTree_row > .ipsTree_rowData h4:before {
|
|
{prefix="transform" value="rotate(0deg)"}
|
|
}
|
|
html[dir="rtl"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData h4:before {
|
|
{prefix="transform" value="rotate(180deg)"}
|
|
}
|
|
|
|
.ipsTree_parent.ipsTree_open.ipsTree_row > .ipsTree_rowData h4:before {
|
|
{prefix="transform" value="rotate(90deg)"}
|
|
opacity: 1;
|
|
}
|
|
html[dir="rtl"] .ipsTree_parent.ipsTree_open.ipsTree_row > .ipsTree_rowData h4:before {
|
|
{prefix="transform" value="rotate(90deg)"}
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsTree_row {
|
|
border-bottom: 1px solid #f5f5f5;
|
|
}
|
|
|
|
.ipsTree_row.ipsTree_parent {
|
|
background: #f3f3f3;
|
|
border-bottom: 1px solid #e5e5e5;
|
|
}
|
|
|
|
.ipsTree_row.ipsTree_draggingInto {
|
|
background: #cfcfcf;
|
|
}
|
|
|
|
.ipsTree_row + ol .ipsTree_row {
|
|
background: #fafafa;
|
|
border-bottom: 1px solid #ececec;
|
|
}
|
|
|
|
.ipsTree_row + ol .ipsTree_row + ol .ipsTree_row {
|
|
background: #fff;
|
|
border-bottom: 1px solid #f4f4f4;
|
|
}
|
|
|
|
html[dir="ltr"] ol ol {
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] ol ol {
|
|
margin-right: 15px;
|
|
}
|
|
|
|
/* Nested sortable classes */
|
|
.mjs-nestedSortable-error {
|
|
border: 1px solid #e85959 !important;
|
|
background: #f3d9d9 !important;
|
|
min-height: 48px !important;
|
|
position: relative;
|
|
}
|
|
|
|
.mjs-nestedSortable-error:before,
|
|
.mjs-nestedSortable-error:after {
|
|
display: block;
|
|
position: absolute;
|
|
line-height: 48px;
|
|
font-size: 11px;
|
|
color: #e85959;
|
|
}
|
|
|
|
.mjs-nestedSortable-error:before {
|
|
content: attr(data-error);
|
|
left: 30px;
|
|
}
|
|
|
|
.mjs-nestedSortable-error:after {
|
|
content: '\f071';
|
|
font-family: 'FontAwesome';
|
|
left: 10px;
|
|
}
|
|
|
|
.sortable-placeholder {
|
|
border: 1px solid #59aee8;
|
|
background: #d9e8f3;
|
|
min-height: 48px;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="core" css_name="typography.css">@media screen and (min-width: 767px) {
|
|
.ipsType_pageTitle {
|
|
font-weight: 300;
|
|
font-size: 30px;
|
|
}
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="custom" css_name="custom.css">/**
|
|
* This file is for your custom CSS.
|
|
* This file is not modified or overwritten during upgrades
|
|
*/</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="emoticons.css"><![CDATA[#emoticonsManagement ul {
|
|
width: 100%;
|
|
min-height: 50px;
|
|
}
|
|
|
|
#emoticonsManagement li {
|
|
cursor: move;
|
|
}
|
|
|
|
.cEmoticons_box {
|
|
text-align: center;
|
|
height: 100%;
|
|
position: relative;
|
|
padding-bottom: 40px;
|
|
}
|
|
|
|
.cEmoticons_box > .ipsPad_half:first-child {
|
|
display: table;
|
|
width: 100%;
|
|
height: 100%;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.cEmoticons_hd {
|
|
position: absolute;
|
|
right: 13px;
|
|
bottom: 11px;
|
|
}
|
|
.cEmoticons_input {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.cEmoticons_box [data-delete] {
|
|
background: #222;
|
|
width: 18px;
|
|
height: 18px;
|
|
line-height: 18px;
|
|
color: #fff;
|
|
position: absolute;
|
|
top: -5px;
|
|
right: -5px;
|
|
border-radius: 30px;
|
|
}
|
|
|
|
#emoticonsManagement img {
|
|
max-height: 100px;
|
|
}
|
|
|
|
#emoticonsManagement input {
|
|
padding: 3px 40px 3px 3px;
|
|
width: 100%;
|
|
font-size: 13px;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="languages.css">.cTranslateTable_field {
|
|
position: relative;
|
|
}
|
|
|
|
.cTranslateTable_field a[data-action] {
|
|
display: none;
|
|
position: absolute;
|
|
height: 22px;
|
|
bottom: -22px;
|
|
z-index: 4000;
|
|
line-height: 20px;
|
|
border-top-left-radius: 0;
|
|
border-top-right-radius: 0;
|
|
}
|
|
|
|
.cTranslateTable_field_focus textarea ~ a[data-action] {
|
|
display: block;
|
|
}
|
|
|
|
.cTranslateTable_field a[data-action="saveWords"] {
|
|
right: 0;
|
|
}
|
|
|
|
.cTranslateTable_field a[data-action="revertWords"] {
|
|
right: 55px;
|
|
}
|
|
|
|
.cTranslateTable textarea {
|
|
height: 100%;
|
|
min-height: 50px;
|
|
min-width: 300px;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="templates.css"><![CDATA[/* ----- */
|
|
|
|
html[dir="ltr"] #elTemplateEditor_panelWrap,
|
|
html[dir="ltr"] #elTemplateEditor_panelToolbar {
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] #elTemplateEditor_panelWrap,
|
|
html[dir="rtl"] #elTemplateEditor_panelToolbar {
|
|
margin-left: 15px;
|
|
direction: ltr;
|
|
}
|
|
|
|
#elTemplateEditor .ipsTabs {
|
|
padding: 0;
|
|
}
|
|
|
|
#elTemplateEditor .ipsTabs_item {
|
|
border: 0 !important;
|
|
text-overflow: clip !important;
|
|
margin-right: 0;
|
|
}
|
|
|
|
#elTemplateEditor .ipsTabs_item.ipsTabs_activeItem {
|
|
background: #fff;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="editor"],
|
|
#elTemplateEditor .CodeMirror {
|
|
border-width: 0px !important;
|
|
border-radius: 0px !important;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="editor"] {
|
|
font-family: monospace;
|
|
font-size: 13px;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="templateToolbar"] {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
#elTemplateEditor_panelWrap {
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
}
|
|
|
|
#elTemplateEditor_outerPanelWrap {
|
|
position: relative;
|
|
height: 633px;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="templatePanelWrap"] {
|
|
width: 100%;
|
|
background-color: #fff;
|
|
position: absolute;
|
|
top: 38px;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="templatePanelWrap"] textarea {
|
|
height: 550px;
|
|
}
|
|
|
|
#elTemplateEditor [data-action="closeTab"] {
|
|
font-size: 12px;
|
|
color: #b4b4b4;
|
|
margin: 0 0px 0 3px;
|
|
}
|
|
html[dir="rtl"] #elTemplateEditor [data-action="closeTab"] {
|
|
margin: 0 3px 0 0px;
|
|
}
|
|
|
|
#elTemplateEditor [data-action="closeTab"]:hover,
|
|
#elTemplateEditor [data-state="unsaved"] [data-action="closeTab"] {
|
|
color: #333;
|
|
}
|
|
|
|
#elTemplateEditor input[data-role="templateSearch"] {
|
|
background-color: #ffffff;
|
|
border: 1px solid #cccccc;
|
|
border-radius: 3px;
|
|
box-shadow: 0 2px 4px rgba(0,0,0,0.075) inset;
|
|
width: 75%;
|
|
max-width: 350px;
|
|
padding: 7px;
|
|
}
|
|
#elTemplateFilterMenu {
|
|
line-height: 30px;
|
|
}
|
|
|
|
/* FILE LISTING STYLES */
|
|
#elTemplateEditor_fileList {
|
|
height: 550px;
|
|
overflow: auto;
|
|
}
|
|
|
|
#elTemplateEditor [data-role="fileList"] .ipsTabs {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.cTemplateList a {
|
|
padding: 5px 0;
|
|
display: block;
|
|
position: relative;
|
|
color: #333;
|
|
}
|
|
|
|
.cTemplateList li.cTemplateList_inactiveBranch > a:before,
|
|
.cTemplateList li.cTemplateList_activeBranch > a:before {
|
|
font-family: 'FontAwesome';
|
|
display: inline-block;
|
|
line-height: 6px;
|
|
font-size: 14px;
|
|
}
|
|
html[dir="ltr"] .cTemplateList li.cTemplateList_inactiveBranch > a:before,
|
|
html[dir="ltr"] .cTemplateList li.cTemplateList_activeBranch > a:before {
|
|
content: '\f0da';
|
|
margin-right: 7px;
|
|
}
|
|
html[dir="rtl"] .cTemplateList li.cTemplateList_inactiveBranch > a:before,
|
|
html[dir="rtl"] .cTemplateList li.cTemplateList_activeBranch > a:before {
|
|
content: '\f0d9';
|
|
margin-left: 7px;
|
|
}
|
|
|
|
html[dir="ltr"] .cTemplateList li.cTemplateList_activeBranch > a:before,
|
|
html[dir="rtl"] .cTemplateList li.cTemplateList_activeBranch > a:before {
|
|
content: '\f0d7';
|
|
}
|
|
|
|
.cTemplateList li.cTemplateList_inactiveBranch > ul {
|
|
display: none;
|
|
}
|
|
|
|
.cTemplateList_highlight {
|
|
background: rgb(237, 245, 247);
|
|
}
|
|
|
|
html[dir="ltr"] .cTemplateList li a {
|
|
padding-left: 15px;
|
|
}
|
|
html[dir="rtl"] .cTemplateList li a {
|
|
padding-right: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .cTemplateList li li a {
|
|
padding-left: 30px;
|
|
}
|
|
html[dir="rtl"] .cTemplateList li li a {
|
|
padding-right: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .cTemplateList li li li a {
|
|
padding-left: 45px;
|
|
}
|
|
html[dir="rtl"] .cTemplateList li li li a {
|
|
padding-right: 45px;
|
|
}
|
|
|
|
html[dir="ltr"] .cTemplateList li li li li a {
|
|
padding-left: 70px;
|
|
}
|
|
html[dir="rtl"] .cTemplateList li li li li a {
|
|
padding-right: 70px;
|
|
}
|
|
|
|
.cTemplateList li.cTemplateList_activeNode > a {
|
|
background: #748391;
|
|
color: #fff;
|
|
}
|
|
|
|
.cTemplateList li:not( .cTemplateList_activeNode ) > a:hover {
|
|
background: #fafafa;
|
|
}
|
|
|
|
/* INHERITED VALUES */
|
|
a[data-inherited-value]:after {
|
|
position: absolute;
|
|
margin-top: 2px;
|
|
}
|
|
html[dir="ltr"] a[data-inherited-value]:after {
|
|
right: 5px;
|
|
}
|
|
html[dir="rtl"] a[data-inherited-value]:after {
|
|
left: 5px;
|
|
}
|
|
|
|
li[class^="cTemplateState_"]:before {
|
|
display: inline-block;
|
|
color: #fff !important;
|
|
}
|
|
|
|
a[data-inherited-value]:after, li[class^="cTemplateState_"]:before {
|
|
font-size: 9px;
|
|
font-weight: bold;
|
|
text-transform: uppercase;
|
|
font-family: monospace;
|
|
padding: 0 5px;
|
|
color: #b3b3b3;
|
|
line-height: 14px;
|
|
border-radius: 10px;
|
|
opacity: 0.1;
|
|
{prefix="transition" value="0.4s all linear"}
|
|
}
|
|
|
|
a[data-inherited-value="original"]:after {
|
|
display: none;
|
|
}
|
|
|
|
.cTemplateList:hover a[data-inherited-value]:after, li[class^="cTemplateState_"]:before {
|
|
opacity: 1;
|
|
}
|
|
|
|
.cTemplateList a[data-inherited-value="custom"]:after, .cTemplateState_custom:before {
|
|
content: 'C';
|
|
background: #c9c030;
|
|
color: #fff;
|
|
}
|
|
|
|
.cTemplateList a[data-inherited-value="inherit"]:after, .cTemplateState_inherit:before {
|
|
content: 'I';
|
|
background: #83b256;
|
|
color: #fff;
|
|
}
|
|
|
|
.cTemplateList a[data-inherited-value="changed"]:after, .cTemplateState_changed:before {
|
|
content: 'M';
|
|
background: #eb841d;
|
|
color: #fff;
|
|
}
|
|
|
|
.cTemplateList a[data-inherited-value="outofdate"]:after, .cTemplateState_outofdate:before {
|
|
content: 'M';
|
|
background: #c93054;
|
|
color: #fff;
|
|
}
|
|
|
|
.cTemplateMergeHeaders {
|
|
border: 1px solid #ddd;
|
|
border-bottom: 0;
|
|
}
|
|
.cTemplateMergeHeader {
|
|
width: 47%;
|
|
display: inline-block;
|
|
}
|
|
.cTemplateMergeHeader_spacer {
|
|
width: 6%;
|
|
display: inline-block;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="themes.css">.ipsCms_theme_image_preview
|
|
{
|
|
max-height: 100px;
|
|
max-width: 100px;
|
|
}
|
|
|
|
.ipsThemeKey
|
|
{
|
|
border-bottom: 1px dotted black;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="toolbars.css">.editor_dummy {
|
|
border: rgb(204, 204, 204) 1px solid !important;
|
|
margin: auto !important;
|
|
}
|
|
.editor_dummy_desktop {
|
|
width: 700px !important;
|
|
}
|
|
.editor_dummy_tablet {
|
|
width: 400px !important;
|
|
}
|
|
.editor_dummy_phone {
|
|
width: 320px !important;
|
|
}
|
|
.editor_dummy .dummy_toolbars {
|
|
background-color: rgb( 247, 247, 247 );
|
|
}
|
|
.editor_dummy .dummy_toolbars li {
|
|
display: inline;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .editor_dummy .dummy_toolbars li {
|
|
float: right;
|
|
}
|
|
.editor_dummy .dummy_toolbar {
|
|
/*height: 40px;
|
|
margin: 0;
|
|
padding: 0;*/
|
|
clear: both;
|
|
}
|
|
.editor_dummy .dummy_contents {
|
|
background: white !important;
|
|
padding-left: 15px;
|
|
padding-right: 15px;
|
|
}
|
|
.editor_dummy .dummy_contents p {
|
|
padding: 5px;
|
|
}
|
|
.editor_dummy .cke_toolbar_separator {
|
|
margin-left: 3px;
|
|
margin-right: 3px;
|
|
display: block;
|
|
}
|
|
|
|
.dummy_button {
|
|
z-index: 10000 !important;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="customization" css_name="visuallanguage.css">[data-vle]:hover {
|
|
background: #eeebd6;
|
|
cursor: pointer;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="extra" css_name="ie8.css"><![CDATA[/* Styles that fix the mess IE causes */
|
|
|
|
/* misc.css */
|
|
.ipsSubNavigation li {
|
|
display: inline !important;
|
|
}
|
|
|
|
.ipsClearfix {
|
|
*zoom: 1;
|
|
}
|
|
|
|
/* Pagination */
|
|
.ipsButtonBar .ipsPagination .ipsPagination_page a,
|
|
.ipsButtonBar .ipsPagination .ipsPagination_next a,
|
|
.ipsButtonBar .ipsPagination .ipsPagination_prev a,
|
|
.ipsButtonBar .ipsPagination .ipsPagination_first a,
|
|
.ipsButtonBar .ipsPagination .ipsPagination_last a,
|
|
.ipsButtonBar .ipsButtonRow li > a,
|
|
.ipsButtonBar .ipsButtonRow li > button,
|
|
.ipsButtonBar .ipsButtonRow li > span {
|
|
color: #000 !important;
|
|
}
|
|
|
|
#elSearchNavContainer {
|
|
height: 46px !important;
|
|
}
|
|
|
|
#ipsLayout_header nav a.active {
|
|
background: #000 !important;
|
|
}
|
|
|
|
#elWidgetControls {
|
|
display: none !important;
|
|
}
|
|
|
|
#elUserNav li {
|
|
display: inline-block !important;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="animation.css">/* Animation: classes used by javascript to add predefined animations to elements */
|
|
/* ======================================================== */
|
|
.ipsAnim {
|
|
{prefix="animation-duration" value="0.5s"}
|
|
{prefix="animation-fill-mode" value="both"}
|
|
{prefix="animation-timing-function" value="ease-out"}
|
|
/* By setting an invisible 3d transform, we can cause */
|
|
/* browsers to render the animation with the GPU instead */
|
|
{prefix="transform" value="translate3d(0,0,0)"}
|
|
}
|
|
|
|
.ipsAnim.ipsAnim_fast {
|
|
{prefix="animation-duration" value="0.25s"}
|
|
}
|
|
|
|
.ipsAnim.ipsAnim_slow {
|
|
{prefix="animation-duration" value="0.8s"}
|
|
}
|
|
|
|
.ipsAnim.ipsAnim_verySlow {
|
|
{prefix="animation-duration" value="1.2s"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* FADE IN/OUT */
|
|
@-webkit-keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
|
|
@-moz-keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
|
|
@-o-keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
|
|
@keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
|
|
|
|
@-webkit-keyframes fadeOut {0% { opacity: 1; } 100% { opacity: 0; } }
|
|
@-moz-keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; } }
|
|
@-o-keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; } }
|
|
@keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; } }
|
|
|
|
@-webkit-keyframes fadeInDown {
|
|
0% { opacity: 0; -webkit-transform: translateY(-20px); }
|
|
100% { opacity: 1; -webkit-transform: translateY(0); }
|
|
}
|
|
@-moz-keyframes fadeInDown {
|
|
0% { opacity: 0; -moz-transform: translateY(-20px); }
|
|
100% { opacity: 1; -moz-transform: translateY(0); }
|
|
}
|
|
@-o-keyframes fadeInDown {
|
|
0% { opacity: 0; -o-transform: translateY(-20px); }
|
|
100% { opacity: 1; -o-transform: translateY(0); }
|
|
}
|
|
@keyframes fadeInDown {
|
|
0% { opacity: 0; transform: translateY(-20px); }
|
|
100% { opacity: 1; transform: translateY(0); }
|
|
}
|
|
@-webkit-keyframes fadeOutDown {
|
|
0% { opacity: 1; -webkit-transform: translateY(0); }
|
|
100% { opacity: 0; -webkit-transform: translateY(20px); }
|
|
}
|
|
@-moz-keyframes fadeOutDown {
|
|
0% { opacity: 1; -moz-transform: translateY(0); }
|
|
100% { opacity: 0; -moz-transform: translateY(20px); }
|
|
}
|
|
@-o-keyframes fadeOutDown {
|
|
0% { opacity: 1; -o-transform: translateY(0); }
|
|
100% { opacity: 0; -o-transform: translateY(20px); }
|
|
}
|
|
@keyframes fadeOutDown {
|
|
0% { opacity: 1; transform: translateY(0); }
|
|
100% { opacity: 0; transform: translateY(20px); }
|
|
}
|
|
|
|
.ipsAnim_fade.ipsAnim_in {
|
|
opacity: 1;
|
|
{prefix="animation-name" value="fadeIn"}
|
|
}
|
|
.ipsAnim_fade.ipsAnim_out {
|
|
opacity: 1;
|
|
{prefix="animation-name" value="fadeOut"}
|
|
}
|
|
.ipsAnim_fade.ipsAnim_in.ipsAnim_down {
|
|
{prefix="animation-name" value="fadeInDown"}
|
|
}
|
|
.ipsAnim_fade.ipsAnim_out.ipsAnim_down {
|
|
{prefix="animation-name" value="fadeOutDown"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* BLIND DOWN */
|
|
@-webkit-keyframes blindDown {
|
|
0% { height: 0; }
|
|
100% { height: auto; }
|
|
}
|
|
@-moz-keyframes blindDown {
|
|
0% { height: 0; }
|
|
100% { height: auto; }
|
|
}
|
|
@-o-keyframes blindDown {
|
|
0% { height: 0; }
|
|
100% { height: auto; }
|
|
}
|
|
@keyframes blindDown {
|
|
0% { height: 0; }
|
|
100% { height: auto; }
|
|
}
|
|
|
|
.ipsAnim_blind.ipsAnim_down {
|
|
height: auto;
|
|
{prefix="animation-name" value="blindDown"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* BLIND Up */
|
|
@-webkit-keyframes blindUp {
|
|
0% { height: auto; }
|
|
100% { height: 0; }
|
|
}
|
|
|
|
.ipsAnim_blind.ipsAnim_up {
|
|
height: 0;
|
|
-webkit-animation-name: blindUp;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SLIDE */
|
|
@-webkit-keyframes slideFromRight {
|
|
0% { right: -100%; }
|
|
100% { right: 0; }
|
|
}
|
|
@-moz-keyframes slideFromRight {
|
|
0% { right: -100%; }
|
|
100% { right: 0; }
|
|
}
|
|
@-o-keyframes slideFromRight {
|
|
0% { right: -100%; }
|
|
100% { right: 0; }
|
|
}
|
|
@keyframes slideFromRight {
|
|
0% { right: -100%; }
|
|
100% { right: 0; }
|
|
}
|
|
|
|
.ipsAnim_slide.ipsAnim_left {
|
|
right: 0;
|
|
{prefix="animation-name" value="slideFromRight"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ZOOM */
|
|
@-webkit-keyframes zoomIn {
|
|
0% { -webkit-transform: scale(0); }
|
|
100% { -webkit-transform: scale(1); }
|
|
}
|
|
@-moz-keyframes zoomIn {
|
|
0% { -moz-transform: scale(0); }
|
|
100% { -moz-transform: scale(1); }
|
|
}
|
|
@-o-keyframes zoomIn {
|
|
0% { -o-transform: scale(0); }
|
|
100% { -o-transform: scale(1); }
|
|
}
|
|
@keyframes zoomIn {
|
|
0% { transform: scale(0); }
|
|
100% { transform: scale(1); }
|
|
}
|
|
|
|
.ipsAnim_zoom.ipsAnim_in {
|
|
{prefix="animation-name" value="zoomIn"}
|
|
}
|
|
|
|
@-webkit-keyframes zoomOut {
|
|
0% { -webkit-transform: scale(1); }
|
|
100% {
|
|
-webkit-transform: scale(0);
|
|
opacity: 0;
|
|
}
|
|
}
|
|
@-moz-keyframes zoomOut {
|
|
0% { -moz-transform: scale(1); }
|
|
100% {
|
|
-moz-transform: scale(0);
|
|
opacity: 0;
|
|
}
|
|
}
|
|
@-o-keyframes zoomOut {
|
|
0% { -o-transform: scale(1); }
|
|
100% {
|
|
-o-transform: scale(0);
|
|
opacity: 0;
|
|
}
|
|
}
|
|
@keyframes zoomOut {
|
|
0% { transform: scale(1); }
|
|
100% {
|
|
transform: scale(0);
|
|
opacity: 0;
|
|
}
|
|
}
|
|
|
|
.ipsAnim_zoom.ipsAnim_out {
|
|
{prefix="animation-name" value="zoomOut"}
|
|
opacity: 1;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* WOBBLE */
|
|
@-webkit-keyframes wobble {
|
|
0% { -webkit-transform: translateX(0%); }
|
|
15% { -webkit-transform: translateX(-5%) rotate(-4deg); }
|
|
30% { -webkit-transform: translateX(5%) rotate(2deg); }
|
|
45% { -webkit-transform: translateX(-4%) rotate(-2deg); }
|
|
60% { -webkit-transform: translateX(4%) rotate(1deg); }
|
|
75% { -webkit-transform: translateX(-3%) rotate(-1deg); }
|
|
100% { -webkit-transform: translateX(0%); }
|
|
}
|
|
|
|
@-moz-keyframes wobble {
|
|
0% { -moz-transform: translateX(0%); }
|
|
15% { -moz-transform: translateX(-5%) rotate(-4deg); }
|
|
30% { -moz-transform: translateX(5%) rotate(2deg); }
|
|
45% { -moz-transform: translateX(-4%) rotate(-2deg); }
|
|
60% { -moz-transform: translateX(4%) rotate(1deg); }
|
|
75% { -moz-transform: translateX(-3%) rotate(-1deg); }
|
|
100% { -moz-transform: translateX(0%); }
|
|
}
|
|
|
|
@-o-keyframes wobble {
|
|
0% { -o-transform: translateX(0%); }
|
|
15% { -o-transform: translateX(-5%) rotate(-4deg); }
|
|
30% { -o-transform: translateX(5%) rotate(2deg); }
|
|
45% { -o-transform: translateX(-4%) rotate(-2deg); }
|
|
60% { -o-transform: translateX(4%) rotate(1deg); }
|
|
75% { -o-transform: translateX(-3%) rotate(-1deg); }
|
|
100% { -o-transform: translateX(0%);}
|
|
}
|
|
|
|
@keyframes wobble {
|
|
0% { transform: translateX(0%); }
|
|
15% { transform: translateX(-5%) rotate(-4deg); }
|
|
30% { transform: translateX(5%) rotate(2deg); }
|
|
45% { transform: translateX(-4%) rotate(-2deg); }
|
|
60% { transform: translateX(4%) rotate(1deg); }
|
|
75% { transform: translateX(-3%) rotate(-1deg); }
|
|
100% { transform: translateX(0%);}
|
|
}
|
|
|
|
.ipsAnim_wobble {
|
|
{prefix="animation-name" value="wobble"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* JIGGLE */
|
|
@-webkit-keyframes jiggle {
|
|
0% { -webkit-transform: rotate(-3deg); }
|
|
50% { -webkit-transform: rotate(3deg); }
|
|
}
|
|
|
|
@-moz-keyframes jiggle {
|
|
0% { -moz-transform: rotate(-3deg); }
|
|
50% { -moz-transform: rotate(3deg); }
|
|
}
|
|
|
|
@-o-keyframes jiggle {
|
|
0% { -o-transform: rotate(-3deg); }
|
|
50% { -o-transform: rotate(3deg); }
|
|
}
|
|
|
|
@keyframes jiggle {
|
|
0% { transform: rotate(-3deg); }
|
|
50% { transform: rotate(3deg); }
|
|
}
|
|
|
|
.ipsAnim_jiggle {
|
|
{prefix="animation" value="jiggle 0.3s infinite"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
|
|
@-webkit-keyframes fadeOutDown {
|
|
0% {
|
|
opacity: 1;
|
|
-webkit-transform: translateY(0);
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
-webkit-transform: translateY(20px);
|
|
}
|
|
}
|
|
|
|
@-moz-keyframes fadeOutDown {
|
|
0% {
|
|
opacity: 1;
|
|
-moz-transform: translateY(0);
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
-moz-transform: translateY(20px);
|
|
}
|
|
}
|
|
|
|
@-o-keyframes fadeOutDown {
|
|
0% {
|
|
opacity: 1;
|
|
-o-transform: translateY(0);
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
-o-transform: translateY(20px);
|
|
}
|
|
}
|
|
|
|
@keyframes fadeOutDown {
|
|
0% {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
transform: translateY(20px);
|
|
}
|
|
}
|
|
|
|
.ipsAnim_fadeOutDown {
|
|
{prefix="animation-name" value="fadeOutDown"}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
|
|
@-webkit-keyframes pulseOnce {
|
|
0% { -webkit-transform: scale(1); }
|
|
50% { -webkit-transform: scale(1.15); }
|
|
100% { -webkit-transform: scale(1); }
|
|
}
|
|
|
|
@-moz-keyframes pulseOnce {
|
|
0% { -moz-transform: scale(1); }
|
|
50% { -moz-transform: scale(1.15); }
|
|
100% { -moz-transform: scale(1); }
|
|
}
|
|
|
|
@-o-keyframes pulseOnce {
|
|
0% { -o-transform: scale(1); }
|
|
50% { -o-transform: scale(1.15); }
|
|
100% { -o-transform: scale(1); }
|
|
}
|
|
|
|
@keyframes pulseOnce {
|
|
0% { transform: scale(1); }
|
|
50% { transform: scale(1.15); }
|
|
100% { transform: scale(1); }
|
|
}
|
|
|
|
.ipsAnim_pulseOnce {
|
|
{prefix="animation-name" value="pulseOnce"}
|
|
}
|
|
</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="badges.css">/* Badges: various indicators */
|
|
/* ======================================================== */
|
|
/* STANDARD BADGE */
|
|
.ipsBadge {
|
|
padding: 0 8px;
|
|
border-radius: 2px;
|
|
font-weight: 500;
|
|
display: inline-block;
|
|
color: #fff;
|
|
vertical-align: middle;
|
|
text-shadow: none;
|
|
letter-spacing: 0;
|
|
}
|
|
.ipsBadge a,
|
|
a.ipsBadge:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_icon {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 28px;
|
|
font-size: 14px;
|
|
text-align: center;
|
|
line-height: 28px;
|
|
vertical-align: middle;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_icon.ipsBadge_small {
|
|
width: 19px;
|
|
height: 19px;
|
|
border-radius: 19px;
|
|
line-height: 19px;
|
|
font-size: 11px;
|
|
vertical-align: baseline;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_icon.ipsBadge_large {
|
|
width: 38px;
|
|
height: 38px;
|
|
border-radius: 38px;
|
|
line-height: 38px;
|
|
font-size: 17px;
|
|
}
|
|
|
|
.ipsType_pageTitle .ipsBadge {
|
|
vertical-align: middle !important;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SIZES */
|
|
.ipsBadge, .ipsBadge.ipsBadge_normal {
|
|
height: 17px;
|
|
line-height: 17px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_medium {
|
|
height: 18px;
|
|
line-height: 18px;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsBadge.ipsBadge_large {
|
|
height: 23px;
|
|
line-height: 23px;
|
|
padding: 0 10px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* STYLES */
|
|
.ipsBadge_new, .ipsBadge_style1 {
|
|
background: #323232;
|
|
}
|
|
|
|
.ipsBadge_style2 {
|
|
background: #6a4fa8;
|
|
}
|
|
|
|
.ipsBadge_warning, .ipsBadge_style3 {
|
|
background: #873661;
|
|
}
|
|
|
|
.ipsBadge_positive, .ipsBadge_style4 {
|
|
background: #598f5b;
|
|
}
|
|
|
|
.ipsBadge_negative, .ipsBadge_style5 {
|
|
background: #c75050;
|
|
}
|
|
|
|
.ipsBadge_neutral, .ipsBadge_style6 {
|
|
background: #616161;
|
|
}
|
|
|
|
.ipsBadge_intermediary, .ipsBadge_style7 {
|
|
background: #f09348;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ITEM STATUS BADGES */
|
|
.ipsItemStatus:not( .ipsItemStatus_large ) {
|
|
color: {theme="item_status"};
|
|
font-size: 14px;
|
|
line-height: inherit;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsDataItem_subList .ipsItemStatus:not( .ipsItemStatus_large ) {
|
|
vertical-align: text-top;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_read:not( .ipsItemStatus_large ) {
|
|
color: #dbdbdb;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_tiny {
|
|
font-size: 9px;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_small {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_large {
|
|
background: {theme="item_status"};
|
|
color: #fff;
|
|
width: 40px;
|
|
height: 40px;
|
|
line-height: 40px;
|
|
border-radius: 20px;
|
|
display: inline-block;
|
|
text-align: center;
|
|
font-size: 18px;
|
|
{prefix="transition" value="0.15s all linear"}
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read {
|
|
background: #dbdbdb;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_read {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
.ipsItemStatus.ipsItemStatus_read:not( .ipsItemStatus_large ):not( .ipsItemStatus_posted ):not( .ipsItemStatus_custom ) {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* POINTS (for warnings) */
|
|
.ipsPoints {
|
|
display: inline-block;
|
|
background: #b14848;
|
|
color: #fff;
|
|
width: 36px;
|
|
height: 36px;
|
|
border-radius: 36px;
|
|
font-size: 18px;
|
|
text-align: center;
|
|
line-height: 36px;
|
|
}
|
|
|
|
.ipsPoints_small {
|
|
width: 22px;
|
|
height: 22px;
|
|
line-height: 22px;
|
|
font-size: 12px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* REP BADGE */
|
|
.ipsRepBadge {
|
|
font-size: 11px;
|
|
font-weight: bold;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsRepBadge_positive,
|
|
.ipsRepBadge_positive:hover {
|
|
color: #5f7a47 !important;
|
|
}
|
|
|
|
.ipsRepBadge_negative,
|
|
.ipsRepBadge_negative:hover {
|
|
color: #8c3737 !important;
|
|
}
|
|
|
|
.ipsRepBadge_neutral,
|
|
.ipsRepBadge_neutral:hover {
|
|
color: #b3b3b3 !important;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="blocks.css"><![CDATA[/* Blocks - styles for various widgets */
|
|
|
|
.ipsWidget {
|
|
position: relative;
|
|
padding: 0;
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_vertical {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_vertical .ipsWidget_title {
|
|
padding: 10px;
|
|
margin: 0;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
position: relative;
|
|
color: #fff;
|
|
background: {theme="widget_title_bar"};
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_vertical .ipsWidget_inner {
|
|
color: #575757;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_horizontal {
|
|
padding: 0 0 10px 0;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_horizontal:not( .ipsWidgetHide ) + .ipsWidget {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_horizontal .ipsWidget_title {
|
|
font-weight: 400;
|
|
margin-bottom: 10px;
|
|
background: #f5f5f5;
|
|
padding: 10px;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_vertical .ipsWidget_inner {
|
|
color: #575757;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_horizontal .ipsTabs {
|
|
margin: -5px 0 5px 0;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_horizontal .ipsTabs_panel {
|
|
background: #fff;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsWidget_columns > [class*="ipsGrid"] {
|
|
margin-bottom: 0;
|
|
border-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsWidget_columns > [class*="ipsGrid"] {
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
padding-right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsWidget_columns > [class*="ipsGrid"] {
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
padding-left: 10px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsWidget_columns > [class*="ipsGrid"]:last-child {
|
|
border-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsWidget_columns > [class*="ipsGrid"]:last-child {
|
|
border-left: 0;
|
|
}
|
|
|
|
.ipsWidget_horizontal .ipsWidget_statsCount {
|
|
font-size: 22px;
|
|
line-height: 32px !important;
|
|
font-weight: 300;
|
|
}
|
|
|
|
.ipsWidget_horizontal .ipsWidget_stats {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.ipsWidget .ipsTabs_small {
|
|
padding: 0;
|
|
background: transparent;
|
|
}
|
|
|
|
.ipsWidget .ipsTabs_small .ipsTabs_item:not( .ipsTabs_activeItem ) {
|
|
color: rgba(50,50,50,0.6);
|
|
border-bottom: 1px solid transparent;
|
|
}
|
|
|
|
.ipsWidget .ipsTabs_small .ipsTabs_activeItem {
|
|
border-bottom: 1px solid rgba(0,0,0,0.25);
|
|
}
|
|
|
|
.ipsWidget .ipsDataItem_title {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_primary {
|
|
background: #262e33;
|
|
}
|
|
|
|
.ipsWidget.ipsWidget_primary h3 {
|
|
color: #fff;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsWidget_latestItem {
|
|
margin-left: 85px;
|
|
}
|
|
html[dir="rtl"] .ipsWidget_latestItem {
|
|
margin-right: 85px;
|
|
}
|
|
|
|
.ipsWidgetBlank {
|
|
margin-top: 16px;
|
|
padding-top: 30px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="buttons.css"><![CDATA[/* Buttons: various buttons used in the interface */
|
|
/* ======================================================== */
|
|
/* BASE BUTTONS */
|
|
.ipsApp .ipsButton {
|
|
font-size: 13px;
|
|
font-weight: 500;
|
|
text-align: center;
|
|
text-decoration: none;
|
|
text-shadow: none;
|
|
white-space: nowrap;
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
padding: 10px 20px;
|
|
border-radius: 3px;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
{prefix="transition" value="0.1s all linear"}
|
|
{prefix="user-select" value="none"}
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
|
|
.ipsApp .ipsButton:not( .ipsButton_noHover ):hover {
|
|
cursor: pointer;
|
|
text-decoration: none;
|
|
background-image: -moz-linear-gradient(top, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.08) 100%);
|
|
background-image: -webkit-linear-gradient(top, rgba(255,255,255,0.08) 0%,rgba(255,255,255,0.08) 100%);
|
|
background-image: -o-linear-gradient(top, rgba(255,255,255,0.08) 0%,rgba(255,255,255,0.08) 100%);
|
|
background-image: -ms-linear-gradient(top, rgba(255,255,255,0.08) 0%,rgba(255,255,255,0.08) 100%);
|
|
background-image: linear-gradient(to bottom, rgba(255,255,255,0.08) 0%,rgba(255,255,255,0.08) 100%);
|
|
}
|
|
|
|
.ipsApp .ipsButton:active {
|
|
box-shadow: 1px 1px 4px rgba(0,0,0,0.3) inset;
|
|
border: 1px solid rgba(0,0,0,0.4);
|
|
background-image: -moz-linear-gradient(top, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.2) 100%);
|
|
background-image: -webkit-linear-gradient(top, rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.2) 100%);
|
|
background-image: -o-linear-gradient(top, rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.2) 100%);
|
|
background-image: -ms-linear-gradient(top, rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.2) 100%);
|
|
background-image: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.2) 100%);
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* COLORS */
|
|
.ipsApp .ipsButton_normal {
|
|
background: {theme="normal_button"};
|
|
color: {theme="normal_button_font"};
|
|
}
|
|
|
|
.ipsApp .ipsButton_primary {
|
|
background: {theme="primary_button"};
|
|
color: {theme="primary_button_font"};
|
|
}
|
|
|
|
.ipsApp .ipsButton_alternate {
|
|
background: {theme="alternate_button"};
|
|
color: {theme="alternate_button_font"};
|
|
}
|
|
|
|
.ipsApp .ipsButton_important {
|
|
background: {theme="important_button"};
|
|
color: {theme="important_button_font"};
|
|
}
|
|
|
|
.ipsApp .ipsButton_positive {
|
|
background: #598f5b;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp .ipsButton_intermediate {
|
|
background: #f09348;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp .ipsButton_negative {
|
|
background: #c75050;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp .ipsButton_light {
|
|
background: {theme="light_button"};
|
|
border-color: rgba(0,0,0,0.03);
|
|
color: {theme="light_button_font"};
|
|
}
|
|
|
|
.ipsApp .ipsButton_light:hover {
|
|
background-image: -moz-linear-gradient(top, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0.3) 100%);
|
|
background-image: -webkit-linear-gradient(top, rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.3) 100%);
|
|
background-image: -o-linear-gradient(top, rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.3) 100%);
|
|
background-image: -ms-linear-gradient(top, rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.3) 100%);
|
|
background-image: linear-gradient(to bottom, rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.3) 100%);
|
|
}
|
|
|
|
.ipsApp .ipsButton:active, .ipsApp .ipsButton_active {
|
|
box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
background-image: -moz-linear-gradient(top, rgba(0,0,0,0.02) 0%, rgba(0,0,0,0.02) 100%);
|
|
background-image: -webkit-linear-gradient(top, rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.02) 100%);
|
|
background-image: -o-linear-gradient(top, rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.02) 100%);
|
|
background-image: -ms-linear-gradient(top, rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.02) 100%);
|
|
background-image: linear-gradient(to bottom, rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.02) 100%);
|
|
}
|
|
|
|
.ipsApp .ipsButton_veryLight {
|
|
background: {theme="very_light_button"}; /* #fff */
|
|
border-color: #e8e8e8;
|
|
color: {theme="very_light_button_font"};
|
|
}
|
|
|
|
/* Overlaid button - allows content behind to be seen */
|
|
.ipsApp .ipsButton_overlaid {
|
|
background: rgba(0,0,0,0.5);
|
|
opacity: 0.6;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp .ipsButton_overlaid:hover {
|
|
background: #000;
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsApp .ipsButton_overlaid:active {
|
|
background: #000;
|
|
}
|
|
|
|
/* Link button - works like a button, but looks like text */
|
|
.ipsApp .ipsButton_link {
|
|
background: transparent;
|
|
color: inherit;
|
|
border: 0;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsApp .ipsButton_link:active {
|
|
border: 0;
|
|
box-shadow: none;
|
|
background-image: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SIZES */
|
|
.ipsApp .ipsButton_medium {
|
|
font-size: 13px;
|
|
line-height: 38px;
|
|
padding: 0 20px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_large {
|
|
font-size: 14px;
|
|
line-height: 42px;
|
|
padding: 0 20px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_veryLarge {
|
|
font-size: 16px;
|
|
line-height: 46px;
|
|
padding: 0 22px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_small {
|
|
font-size: 12px;
|
|
line-height: 34px;
|
|
padding: 0 18px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_verySmall {
|
|
font-size: 12px;
|
|
line-height: 28px;
|
|
padding: 0 15px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_veryVerySmall {
|
|
font-size: 10px;
|
|
line-height: 20px;
|
|
padding: 0 8px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* OTHER BUTTON STYLES */
|
|
.ipsApp .ipsButton_fullWidth {
|
|
display: block;
|
|
width: 100%;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsApp .ipsButton_action {
|
|
min-width: 200px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_narrow {
|
|
padding-left: 8px;
|
|
padding-right: 8px;
|
|
}
|
|
|
|
.ipsApp .ipsButton_shouting {
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
/* Disabled */
|
|
.ipsApp .ipsButton[disabled], .ipsApp .ipsButton.ipsButton_disabled {
|
|
opacity: 0.5;
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
.ipsApp .ipsButton[disabled]:hover, .ipsApp .ipsButton.ipsButton_disabled:hover,
|
|
.ipsApp .ipsButton[disabled]:active, .ipsApp .ipsButton.ipsButton_disabled:active {
|
|
background-image: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SPLIT BUTTONS */
|
|
ul.ipsButton_split {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
display: inline-block;
|
|
}
|
|
|
|
ul.ipsButton_split > li {
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] ul.ipsButton_split > li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsButton_split > .ipsButton,
|
|
.ipsButton_split > li > .ipsButton {
|
|
border-radius: 0;
|
|
border-right-width: 0;
|
|
border-left-width: 0;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsButton_split > .ipsButton,
|
|
html[dir="rtl"] .ipsButton_split > li > .ipsButton {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButton_split > .ipsButton:not( :last-child ),
|
|
html[dir="ltr"] .ipsButton_split > li:not( :last-child ) > .ipsButton {
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
html[dir="rtl"] .ipsButton_split > .ipsButton:not( :last-child ),
|
|
html[dir="rtl"] .ipsButton_split > li:not( :last-child ) > .ipsButton {
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButton_split > .ipsButton:not( :first-child ),
|
|
html[dir="ltr"] .ipsButton_split > li:not( :first-child ) > .ipsButton {
|
|
border-left: 1px solid rgba(255,255,255,0.1);
|
|
}
|
|
html[dir="rtl"] .ipsButton_split > .ipsButton:not( :first-child ),
|
|
html[dir="rtl"] .ipsButton_split > li:not( :first-child ) > .ipsButton {
|
|
border-right: 1px solid rgba(255,255,255,0.1);
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButton_split > .ipsButton:first-child,
|
|
html[dir="ltr"] .ipsButton_split > li:first-child > .ipsButton {
|
|
border-radius: 3px 0 0 3px;
|
|
border-left-width: 1px;
|
|
}
|
|
html[dir="rtl"] .ipsButton_split > .ipsButton:first-child,
|
|
html[dir="rtl"] .ipsButton_split > li:first-child > .ipsButton {
|
|
border-radius: 0px 3px 3px 0px;
|
|
border-right-width: 1px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButton_split > .ipsButton:last-child,
|
|
html[dir="ltr"] .ipsButton_split > li:last-child > .ipsButton {
|
|
border-radius: 0 3px 3px 0;
|
|
border-right-width: 1px;
|
|
}
|
|
html[dir="rtl"] .ipsButton_split > .ipsButton:last-child,
|
|
html[dir="rtl"] .ipsButton_split > li:last-child > .ipsButton {
|
|
border-radius: 3px 0px 0px 3px;
|
|
border-right-width: 1px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* BUTTON BARS */
|
|
.ipsButtonBar {
|
|
line-height: 1;
|
|
background: {theme="button_bar"};
|
|
}
|
|
|
|
/* Pagination in button bars needs to be white */
|
|
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_page a,
|
|
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_next a,
|
|
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_prev a,
|
|
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_first a,
|
|
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_last a {
|
|
background: rgba(255,255,255,0.1);
|
|
text-shadow: none;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsButtonBar .ipsPagination .ipsPagination_pageJump a {
|
|
color: rgba(255,255,255,0.5);
|
|
}
|
|
|
|
.ipsButtonBar .ipsPagination .ipsPagination_page.ipsPagination_active a {
|
|
background: #fff;
|
|
border-color: #fff;
|
|
color: #323232;
|
|
}
|
|
|
|
.ipsButtonBar .ipsButtonRow li > a, .ipsButtonBar .ipsButtonRow li > button, .ipsButtonBar .ipsButtonRow li > span {
|
|
background: rgba(255,255,255,0.1);
|
|
color: #fff;
|
|
font-weight: bold;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButtonBar .ipsButtonRow {
|
|
margin-left: 10px;
|
|
padding: 0;
|
|
}
|
|
html[dir="rtl"] .ipsButtonBar .ipsButtonRow {
|
|
margin-right: 10px;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsButtonBar .ipsButtonRow:last-child {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsButtonBar .ipsButtonRow:last-child {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.ipsButtonRow {
|
|
display: inline-block;
|
|
margin: 0;
|
|
padding: 0;
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
|
|
.ipsButtonRow li {
|
|
float: left;
|
|
display: inline-block;
|
|
}
|
|
html[dir="ltr"] .ipsButtonRow li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsButtonRow li > a, .ipsButtonRow li > button, .ipsButtonRow li > span {
|
|
display: block;
|
|
background: #f0f0f0;
|
|
line-height: 26px;
|
|
padding: 0 10px;
|
|
font-size: 10px;
|
|
font-weight: 500;
|
|
color: #323232;
|
|
text-transform: uppercase;
|
|
position: relative;
|
|
border: 0px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButtonRow li:last-child > a,
|
|
html[dir="ltr"] .ipsButtonRow li:last-child > button,
|
|
html[dir="ltr"] .ipsButtonRow li:last-child > span {
|
|
margin-left: 0;
|
|
border-top-left-radius: 2px;
|
|
border-bottom-left-radius: 2px;
|
|
}
|
|
html[dir="ltr"] .ipsButtonRow li:first-child > a,
|
|
html[dir="ltr"] .ipsButtonRow li:first-child > button,
|
|
html[dir="ltr"] .ipsButtonRow li:first-child > span {
|
|
border-top-right-radius: 2px;
|
|
border-bottom-right-radius: 2px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsButtonRow li:last-child > a,
|
|
html[dir="rtl"] .ipsButtonRow li:last-child > button,
|
|
html[dir="rtl"] .ipsButtonRow li:last-child > span {
|
|
margin-right: 0;
|
|
border-top-right-radius: 2px;
|
|
border-bottom-right-radius: 2px;
|
|
}
|
|
html[dir="rtl"] .ipsButtonRow li:first-child > a,
|
|
html[dir="rtl"] .ipsButtonRow li:first-child > button,
|
|
html[dir="rtl"] .ipsButtonRow li:first-child > span {
|
|
border-top-left-radius: 2px;
|
|
border-bottom-left-radius: 2px;
|
|
}
|
|
|
|
.ipsButtonRow li > a.ipsButtonRow_active,
|
|
.ipsButtonRow li > button.ipsButtonRow_active {
|
|
background: #323232;
|
|
border-color: #323232;
|
|
color: #fff;
|
|
text-shadow: none;
|
|
}
|
|
|
|
.ipsAreaBackground_light .ipsButtonRow li > a:not( .ipsButtonRow_active ),
|
|
.ipsAreaBackground_light .ipsButtonRow li > button:not( .ipsButtonRow_active ),
|
|
.ipsAreaBackground_light .ipsButtonRow li > span:not( .ipsButtonRow_active ) {
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsButtonRow li .ipsIcon {
|
|
position: relative;
|
|
top: 3px;
|
|
}
|
|
|
|
/* Social buttons */
|
|
.ipsSocial {
|
|
color: #fff;
|
|
padding: 0 !important;
|
|
border: 0 !important;
|
|
}
|
|
|
|
.ipsSocial:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsSocial_icon {
|
|
display: table-cell;
|
|
min-width: 32px;
|
|
font-size: 16px;
|
|
background: rgba(0,0,0,0.1);
|
|
}
|
|
|
|
.ipsSocial_text {
|
|
display: table-cell;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsSocial_microsoft {
|
|
background-color: #008b00;
|
|
}
|
|
|
|
.ipsSocial_facebook {
|
|
background-color: #3a579a;
|
|
}
|
|
|
|
.ipsSocial_twitter {
|
|
background-color: #00abf0;
|
|
}
|
|
|
|
.ipsSocial_linkedIn {
|
|
background: #007eb3;
|
|
}
|
|
|
|
.ipsSocial_google {
|
|
background-color: #d34730;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="comments.css"><![CDATA[.ipsComment {
|
|
position: relative;
|
|
margin-bottom: 15px;
|
|
padding: 0;
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsDataItem > .ipsComment {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsComment, .ipsComment.ipsBox {
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
.ipsComment.ipsComment_selected {
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
border-color: #8ec2ed #8bbee8 #84b4db #8ec2ed;
|
|
box-shadow: 0 1px 1px rgba(0,0,0,0.075), 0px 1px 5px rgba(82,168,236,0.6);
|
|
}
|
|
|
|
.ipsComment.ipsComment_selected .ipsComment_author {
|
|
background: transparent;
|
|
}
|
|
|
|
.ipsApp .ipsComment.ipsComment_selected .ipsComment_header {
|
|
background: {theme="selected"};
|
|
}
|
|
|
|
.ipsComment:not( .ipsModerated ):not( .ipsComment_selected ).ipsBox.ipsComment_popular {
|
|
border-color: #37848b #a7ccc8 #a7ccc8 #a7ccc8;
|
|
border-top-width: 5px;
|
|
}
|
|
|
|
.ipsComment:not( .ipsModerated ):not( .ipsComment_selected ).ipsComment_popular .ipsComment_header {
|
|
background: #e6f5f4;
|
|
}
|
|
|
|
.ipsComment:not( .ipsModerated ) .ipsComment_header {
|
|
background: #f5f5f5;
|
|
}
|
|
|
|
.ipsComment.ipsModerated .ipsComment_header {
|
|
background: {theme="moderated"};
|
|
}
|
|
|
|
.ipsComment.ipsModerated {
|
|
background: {theme="moderated_light"};
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComment > .ipsUserPhoto {
|
|
float: left;
|
|
margin-right: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsComment > .ipsUserPhoto {
|
|
float: right;
|
|
margin-left: 7px;
|
|
}
|
|
|
|
.ipsComment_header {
|
|
padding: 10px;
|
|
}
|
|
|
|
.ipsComment_header .ipsUserPhoto {
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsComment_author {
|
|
display: inline;
|
|
}
|
|
|
|
.ipsComment_content {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsComment [data-role="commentContent"] {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.ipsComment.ipsComment_hasChildren {
|
|
margin-bottom: 40px;
|
|
}
|
|
|
|
.ipsComment.ipsComment_hasChildren > .ipsComment_content {
|
|
padding-bottom: 20px;
|
|
}
|
|
|
|
.ipsComment .ipsType_richText {
|
|
overflow-x: auto;
|
|
overflow-y: hidden;
|
|
}
|
|
|
|
.ipsComment[data-role="replyComment"] {
|
|
margin-left: -15px;
|
|
margin-right: -15px;
|
|
}
|
|
|
|
.ipsComment_parent.ipsComment > .ipsComment_content > .ipsComment_author {
|
|
font-size: 15px;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsComment_meta {
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsComment_controls {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
.ipsComment_controls > li {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
}
|
|
html[dir="ltr"] .ipsComment_controls > li {
|
|
margin-right: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsComment_controls > li {
|
|
margin-left: 15px;
|
|
}
|
|
|
|
[data-role="commentFeed"] > .ipsComment:first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
/*.ipsComment.ipsModerated {
|
|
border-color: #e6cfd6;
|
|
}
|
|
|
|
.ipsComment.ipsModerated:not( .ipsHide ) + .ipsComment {
|
|
border-top-color: #e6cfd6;
|
|
}*/
|
|
|
|
.ipsComment.ipsComment_ignored {
|
|
border-width: 0;
|
|
color: #adadad;
|
|
background: transparent;
|
|
}
|
|
.ipsComment.ipsComment_ignored:first-child {
|
|
margin-top: 15px;
|
|
}
|
|
html[dir="ltr"] .ipsComment.ipsComment_ignored {
|
|
padding-left: 75px;
|
|
}
|
|
html[dir="rtl"] .ipsComment.ipsComment_ignored {
|
|
padding-right: 75px;
|
|
}
|
|
|
|
.ipsComment.ipsComment_ignored + .ipsComment:not( .ipsComment_ignored ) {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.ipsComment.ipsComment_popular [data-role="commentContent"] {
|
|
min-height: 70px;
|
|
}
|
|
html[dir="ltr"] .ipsComment.ipsComment_popular [data-role="commentContent"] {
|
|
padding-right: 40px;
|
|
}
|
|
html[dir="rtl"] .ipsComment.ipsComment_popular [data-role="commentContent"] {
|
|
padding-left: 40px;
|
|
}
|
|
|
|
.ipsComment.ipsComment_popular .ipsComment_popularFlag {
|
|
position: absolute;
|
|
top: 0px;
|
|
background: #37848b;
|
|
text-align: center;
|
|
color: #fff;
|
|
width: 34px;
|
|
height: 70px;
|
|
font-size: 26px;
|
|
padding-top: 30px;
|
|
z-index: 5000;
|
|
}
|
|
html[dir="ltr"] .ipsComment.ipsComment_popular .ipsComment_popularFlag {
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsComment.ipsComment_popular .ipsComment_popularFlag {
|
|
left: 10px;
|
|
}
|
|
|
|
.ipsComment.ipsComment_popular .ipsComment_popularFlag:after {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
}
|
|
|
|
.ipsComment.ipsComment_popular .ipsComment_popularFlag:after {
|
|
border-width: 17px;
|
|
border-style: solid;
|
|
border-color: #37848b transparent transparent transparent;
|
|
top: 100%;
|
|
}
|
|
html[dir="ltr"] .ipsComment.ipsComment_popular .ipsComment_popularFlag:after {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsComment.ipsComment_popular .ipsComment_popularFlag:after {
|
|
right: 0;
|
|
}
|
|
|
|
.ipsCommentUnreadSeperator {
|
|
margin: 15px 0;
|
|
height: 0;
|
|
padding: 0;
|
|
border-width: 2px 0 0 0;
|
|
border-style: solid;
|
|
border-color: #417ba3;
|
|
}
|
|
|
|
.ipsType_richText .ipsPagination:first-child {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.ipsTooltip.ipsComment_inlineQuoteTooltip {
|
|
pointer-events: auto;
|
|
}
|
|
|
|
/* Sub comments (e.g. status updates) */
|
|
.ipsComment_subComments {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComment_subComments {
|
|
margin-left: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsComment_subComments {
|
|
margin-right: 55px;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment {
|
|
padding: 10px;
|
|
margin-bottom: 3px;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment [data-role="commentContent"] {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment[data-role="replyComment"] {
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment[data-role="replyComment"] .ipsUserPhoto img {
|
|
width: 34px;
|
|
height: 34px;
|
|
border-radius: 17px;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment[data-role="replyComment"] .ipsComposeArea_editor {
|
|
padding: 2px;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComment[data-role="replyComment"] .ipsComposeArea_dummy {
|
|
padding: 7px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
/*.ipsComment_subComments .ipsComment_content .ipsType_richText {
|
|
margin: 10px 0;
|
|
}*/
|
|
|
|
html[dir="ltr"] .ipsComment_subComments .ipsComment:not( [data-role="replyComment"] ) .ipsComment_content,
|
|
html[dir="ltr"] .ipsComment_subComments .ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-left: 45px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsComment_subComments .ipsComment:not( [data-role="replyComment"] ) .ipsComment_content,
|
|
html[dir="rtl"] .ipsComment_subComments .ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-right: 45px;
|
|
}
|
|
|
|
.ipsComment_subComments .ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
display: none;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="compose.css"><![CDATA[/*.ipsComposeArea {
|
|
margin-top: 15px;
|
|
}*/
|
|
|
|
.ipsComposeArea_editor {
|
|
background: #d6d6d6;
|
|
position: relative;
|
|
padding: 1px;
|
|
}
|
|
|
|
.ipsComposeArea_editor [data-ipsEditor][data-loading] .cke {
|
|
height: 1px !important;
|
|
overflow: hidden !important;
|
|
}
|
|
|
|
.ipsApp .ipsComposeArea_editor .ipsNotificationCount {
|
|
top: 0px;
|
|
}
|
|
|
|
.ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
padding: 4px;
|
|
}
|
|
html[dir="ltr"] .ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-left: 75px;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-right: 75px;
|
|
}
|
|
|
|
.ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
content: '';
|
|
position: absolute;
|
|
top: 15px;
|
|
display: block;
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 15px;
|
|
border-style: solid;
|
|
}
|
|
html[dir="ltr"] .ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
right: 100%;
|
|
border-color: transparent #d6d6d6 transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
left: 100%;
|
|
border-color: transparent transparent transparent #d6d6d6;
|
|
}
|
|
|
|
.ipsComposeArea_dummy {
|
|
padding: 15px;
|
|
background: #fff;
|
|
color: #707070;
|
|
font-size: 15px;
|
|
cursor: text;
|
|
}
|
|
|
|
.ipsComposeArea_dummy i.ipsFlag {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.ipsComposeArea .ipsToolList.ipsPad_half {
|
|
padding-top: 12px;
|
|
}
|
|
|
|
html[dir] .ipsApp .ipsComposeArea .ipsToolList .ipsComposeArea_formControl {
|
|
margin-top: 7px;
|
|
}
|
|
|
|
.ipsComposeArea [data-ipsEditor-toolList] + [data-ipsEditor] .cke {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.ipsComposeArea [data-ipsEditor] + [data-ipsEditor-toolList] {
|
|
margin-top: 7px;
|
|
margin-bottom: 3px;
|
|
padding: 0 7px;
|
|
}
|
|
|
|
/* PASTE BAR */
|
|
.ipsComposeArea_editorPaste {
|
|
background: #414345;
|
|
color: #fff;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.ipsComposeArea_editorPaste .ipsComposeArea_editorPasteSwitch {
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 30px;
|
|
line-height: 26px !important;
|
|
font-size: 20px;
|
|
background: #000;
|
|
border: 0;
|
|
color: #fff;
|
|
display: block;
|
|
text-align: center;
|
|
margin-top: -12px;
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* IMAGE DIALOG */
|
|
.ipsComposeArea_imageAlign.ipsButton_split > li {
|
|
display: table-cell;
|
|
width: 1%;
|
|
float: none;
|
|
}
|
|
|
|
.ipsComposeArea_imageAlign.ipsButton_split > li input[type="radio"] {
|
|
position: absolute;
|
|
opacity: 0.0001;
|
|
}
|
|
|
|
/* SIDEBAR */
|
|
.ipsComposeArea_sidebar [data-role="tagsList"] {
|
|
padding: 5px;
|
|
max-height: 300px;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsComposeArea_sidebar [data-role="tagsList"] [data-tagKey] {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsComposeArea_sidebar [data-action='tagsToggle'] {
|
|
display: inline-block;
|
|
position: absolute;
|
|
top: 6px;
|
|
text-indent: 100%;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
width: 20px;
|
|
color: inherit;
|
|
opacity: 0.4;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
html[dir="ltr"] .ipsComposeArea_sidebar [data-action='tagsToggle'] {
|
|
right: 6px;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_sidebar [data-action='tagsToggle'] {
|
|
left: 6px;
|
|
}
|
|
|
|
.ipsComposeArea_sidebar [data-action='tagsToggle']:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsComposeArea_sidebar [data-action='tagsToggle']:after {
|
|
display: block;
|
|
font-family: 'FontAwesome';
|
|
position: absolute;
|
|
top: 0;
|
|
font-size: 16px;
|
|
}
|
|
html[dir="ltr"] .ipsComposeArea_sidebar [data-action='tagsToggle']:after {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_sidebar [data-action='tagsToggle']:after {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsComposeArea_sidebarOpen [data-action='tagsToggle']:after {
|
|
content: '\f138';
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_sidebarOpen [data-action='tagsToggle']:after {
|
|
content: '\f137';
|
|
}
|
|
.ipsComposeArea_sidebarClosed [data-action='tagsToggle']:after {
|
|
content: '\f137';
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_sidebarClosed [data-action='tagsToggle']:after {
|
|
content: '\f138';
|
|
}
|
|
|
|
.ipsComposeArea_sidebarClosed {
|
|
width: 22px !important;
|
|
background: #ebebeb !important;
|
|
}
|
|
|
|
.ipsComposeArea_sidebarClosed [data-role="tagsHeader"],
|
|
.ipsComposeArea_sidebarClosed [data-role="tagsList"] {
|
|
display: none;
|
|
}
|
|
|
|
.ipsComposeArea_attachments {
|
|
background: #fff;
|
|
border-top: 1px solid rgba(0,0,0,0.04);
|
|
margin-top: 0px;
|
|
}
|
|
|
|
.ipsComposeArea_dropZone {
|
|
padding: 12px;
|
|
border: 3px dashed transparent;
|
|
}
|
|
|
|
.ipsComposeArea_dropZone .fa-paperclip {
|
|
font-size: 30px;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_dropZone .fa-paperclip {
|
|
float: right;
|
|
}
|
|
.ipsComposeArea_dropZone .fa-clipboard {
|
|
font-size: 24px;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_dropZone .fa-clipboard {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_dropZone > div {
|
|
margin-left: 40px;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_dropZone > div {
|
|
margin-right: 40px;
|
|
}
|
|
|
|
.ipsComposeArea_attachmentsInner {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.ipsComposeArea_attachmentsInner > div {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_attachmentsInner > p {
|
|
padding-left: 15px;
|
|
padding-bottom: 0;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_attachmentsInner > p {
|
|
padding-right: 15px;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
|
|
|
|
/* Compose warnings */
|
|
.ipsComposeArea_warning {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_warning {
|
|
margin-left: 75px;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_warning {
|
|
margin-right: 75px;
|
|
}
|
|
|
|
.ipsComposeArea_unavailable .ipsComposeArea_editor {
|
|
background: rgba(214, 214, 214, 0.5);
|
|
}
|
|
|
|
.ipsComposeArea_unavailable .ipsComposeArea_dummy {
|
|
font-weight: bold;
|
|
font-size: 13px;
|
|
cursor: default;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_unavailable.ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
border-right-color: rgba(214, 214, 214, 0.5);
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_unavailable.ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
border-left-color: rgba(214, 214, 214, 0.5);
|
|
}
|
|
|
|
.ipsComposeArea_unavailable .ipsUserPhoto {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
/* ATTACHMENTS */
|
|
/*..ipsAttachLink.ipsAttachLink_image {
|
|
display: inline-block;
|
|
position: relative;
|
|
}
|
|
|
|
ipsAttachLink.ipsAttachLink_image:after {
|
|
position: absolute;
|
|
content: "\f002";
|
|
font-family: "FontAwesome";
|
|
bottom: 5px;
|
|
left: 5px;
|
|
font-size: 14px;
|
|
background: rgba(0,0,0,0.4);
|
|
color: #fff;
|
|
width: 26px;
|
|
height: 26px;
|
|
border-radius: 15px;
|
|
line-height: 26px;
|
|
text-align: center;
|
|
}*/
|
|
|
|
[data-ipsUploader] {
|
|
display: none; /* Hides when JS is disabled. JS will show it again */
|
|
}
|
|
|
|
/*.ipsAttachment_container {
|
|
position: absolute;
|
|
top: 10px;
|
|
left: 10px;
|
|
right: 10px;
|
|
bottom: 60px;
|
|
}
|
|
|
|
.ipsAttachment_container .ipsColumns {
|
|
height: 100%;
|
|
}
|
|
|
|
.ipsAttachment_container .ipsColumns > .ipsColumn,
|
|
.ipsAttachment_container .ipsColumns > .ipsColumn > div {
|
|
overflow: auto;
|
|
height: 100%;
|
|
}
|
|
*/
|
|
|
|
.ipsAttachment_dropZone {
|
|
height: 200px;
|
|
background: rgba(100,100,100,0.05);
|
|
text-align: center;
|
|
margin: 0 auto;
|
|
padding-top: 30px;
|
|
font-size: 16px;
|
|
line-height: 2;
|
|
border: 3px dashed transparent;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
|
|
.ipsAttachment_dropZone * {
|
|
pointer-events: none; /* This prevents dragleave from firing when dragging over elements in the drop zone */
|
|
}
|
|
|
|
.ipsAttachment_dropZone a {
|
|
pointer-events: auto; /* Reinstate default events for button */
|
|
}
|
|
|
|
.ipsAttachment_dropZone:not( .ipsAttachment_dropZoneSmall ) > i:first-child {
|
|
font-size: 60px;
|
|
display: block;
|
|
}
|
|
|
|
.ipsAttachment_dropZone.ipsAttachment_dropZoneSmall {
|
|
height: auto;
|
|
padding: 15px;
|
|
text-align: left;
|
|
line-height: 1;
|
|
}
|
|
html[dir="rtl"] .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall {
|
|
text-align: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall > .ipsAttachment_dropZoneSmall_info {
|
|
margin-left: 130px;
|
|
}
|
|
html[dir="rtl"] .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall > .ipsAttachment_dropZoneSmall_info {
|
|
margin-right: 130px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall [data-action='uploadFile'] {
|
|
margin-right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall [data-action='uploadFile'] {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.ipsAttachment_dropZoneSmall .ipsAttachment_supportDrag {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.ipsAttachment_dropZone.ipsDragging, .ipsComposeArea_dropZone.ipsDragging {
|
|
background: #ebf4f9;
|
|
border-color: #b1cbd9;
|
|
}
|
|
|
|
.ipsAttachment_fileList {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.ipsAttachment_summary {
|
|
margin-top: 15px;
|
|
height: 44px;
|
|
}
|
|
|
|
.ipsAttachment_summary strong {
|
|
display: inline-block;
|
|
margin: 4px 0 0 7px;
|
|
font-weight: normal;
|
|
}
|
|
html[dir="rtl"] .ipsAttachment_summary strong {
|
|
margin: 4px 7px 0 0;
|
|
}
|
|
|
|
.ipsAttach {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsAttach.ipsAttach_selected {
|
|
background-color: {theme="selected"};
|
|
}
|
|
|
|
.ipsAttach_selection {
|
|
width: 24px;
|
|
height: 24px;
|
|
border-radius: 12px;
|
|
border: 1px solid #fff;
|
|
display: inline-block;
|
|
text-align: center;
|
|
line-height: 24px;
|
|
color: #fff;
|
|
background: #000;
|
|
opacity: 0.6;
|
|
}
|
|
|
|
.ipsAttach_selection:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAttach_selection.ipsAttach_selectionOn {
|
|
background: #2a94de;
|
|
opacity: 1;
|
|
}
|
|
|
|
/* IMAGE ATTACHMENTS */
|
|
.ipsImageAttach {
|
|
display: inline-block;
|
|
margin: 0 0 10px 0;
|
|
text-align: left;
|
|
position: relative;
|
|
}
|
|
html[dir="rtl"] .ipsImageAttach {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsImageAttach_thumb {
|
|
max-width: 100%;
|
|
height: 150px;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
background-color: #fff;
|
|
background-size: cover;
|
|
background-position: center center;
|
|
background-repeat: no-repeat;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsImageAttach_thumb img {
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
border: 0;
|
|
position: relative;
|
|
display: none;
|
|
}
|
|
|
|
.ipsImageAttach_status {
|
|
display: block;
|
|
line-height: 125px;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.ipsApp .ipsImageAttach_controls {
|
|
position: absolute;
|
|
bottom: 55px;
|
|
left: 10px;
|
|
right: 10px;
|
|
padding: 5px;
|
|
z-index: 100;
|
|
opacity: 1;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
|
|
.ipsApp .ipsImageAttach_controls .ipsButton {
|
|
line-height: 22px;
|
|
padding: 0 10px;
|
|
}
|
|
|
|
.ipsAttach .ipsAttach_title {
|
|
max-width: 100%;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.ipsAttach .ipsAttach_title + p {
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsAttach.ipsDataItem .ipsDataItem_main,
|
|
.ipsAttach.ipsDataItem [data-role='preview'] {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.ipsAttach.ipsAttach_done.ipsDataItem .ipsDataItem_main,
|
|
.ipsAttach.ipsAttach_done.ipsDataItem [data-role='preview'] {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsAttach.ipsDataItem [data-role='preview'] {
|
|
background-size: contain;
|
|
background-position: top center;
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
.ipsAttach.ipsDataItem [data-role='preview'] .ipsImage {
|
|
display: none;
|
|
}
|
|
|
|
.ipsAttach.ipsAttach_done [data-action="insertFile"] {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsAttachment_fileList .ipsImageAttach_thumb {
|
|
vertical-align: middle;
|
|
line-height: 200px;
|
|
}
|
|
|
|
.ipsAttachment_fileList .ipsDataList .ipsImage {
|
|
max-width: 50px;
|
|
}
|
|
|
|
|
|
|
|
/* EMOTICONS */
|
|
.ipsEmoticons_content.ipsMenu_innerContent {
|
|
max-height: 200px;
|
|
padding: 5px;
|
|
}
|
|
|
|
.ipsEmoticons_category {
|
|
display: table;
|
|
width: 100%;
|
|
margin-top: 5px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.ipsEmoticons_row {
|
|
display: table-row;
|
|
}
|
|
|
|
.ipsEmoticons_item {
|
|
display: table-cell;
|
|
padding: 5px;
|
|
width: 14.2%;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsEmoticons_item img {
|
|
max-width: 100%;
|
|
}
|
|
|
|
.ipsEmoticons_item[data-emoticon]:hover {
|
|
cursor: pointer;
|
|
background: #f5f5f5;
|
|
}
|
|
|
|
/* OTHER */
|
|
|
|
.cEditorURL {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.cEditorURL + .ipsPos_right {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.cImageURLPreview {
|
|
height: 300px;
|
|
text-align: center;
|
|
}
|
|
|
|
.cImageURLPreview img {
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="data-lists.css"><![CDATA[/* Data lists: our bread and butter. Shows lists of items with associated information */
|
|
/* ======================================================== */
|
|
/* COLORS */
|
|
.ipsApp .ipsDataItem_new, .ipsApp .ipsDataItem_success {
|
|
background-color: #f0f8f2;
|
|
}
|
|
|
|
.ipsApp .ipsDataItem_warning {
|
|
background-color: #f6f6e9;
|
|
}
|
|
|
|
.ipsApp .ipsDataItem_error {
|
|
background-color: #f7efef;
|
|
}
|
|
|
|
.ipsApp .ipsDataItem_info {
|
|
background-color: #edf5f7;
|
|
}
|
|
|
|
.ipsApp .ipsDataItem_selected {
|
|
background-color: {theme="selected"};
|
|
}
|
|
|
|
.ipsApp .ipsDataItem_status {
|
|
background-color: #f9f9f9;
|
|
}
|
|
|
|
/* Unread status */
|
|
.ipsDataList_readStatus .ipsDataItem:not( .ipsDataItem_unread ):not( .ipsDataItem_selected ):not( .ipsModerated ) {
|
|
background: #f9f9f9;
|
|
}
|
|
|
|
/* Zebra striping */
|
|
/* Need to exclude all the other color options here, since they should override the zebra stripes */
|
|
.ipsDataList.ipsDataList_zebra .ipsDataItem:not( .ipsDataItem_selected ):not( .ipsModerated ):not( .ipsDataItem_new ):not( .ipsDataItem_success ):not( .ipsDataItem_warning ):not( .ipsDataItem_error ):not( .ipsDataItem_info ):not( .ipsDataItem_status ):nth-child(even) {
|
|
background: #f9f9f9;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* LISTS & ITEMS */
|
|
.ipsDataList {
|
|
width: 100%;
|
|
display: table;
|
|
table-layout: auto;
|
|
position: relative;
|
|
border-collapse: separate;
|
|
border-spacing: 0;
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsDataItem_fullWidth {
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsDataItem_title {
|
|
font-size: 14px;
|
|
margin: 0 0 5px 0;
|
|
font-weight: 400;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsDataItem_unread .ipsDataItem_title {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Basic cell styles */
|
|
.ipsDataItem_main, .ipsDataItem_stats, .ipsDataItem_lastPoster, .ipsDataItem_generic,
|
|
.ipsDataItem_modCheck, .ipsDataItem_icon {
|
|
display: table-cell;
|
|
padding: 12px 10px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsDataItem_modCheck {
|
|
/* Required to make custom checkboxes work in chrome */
|
|
position: relative;
|
|
}
|
|
|
|
/* Reduced spacing cells */
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_main,
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_stats,
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_lastPoster,
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_generic {
|
|
display: table-cell;
|
|
padding: 10px 0;
|
|
vertical-align: top;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_icon + .ipsDataItem_main {
|
|
padding-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_icon + .ipsDataItem_main {
|
|
padding-right: 10px;
|
|
}
|
|
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_title {
|
|
margin: 0;
|
|
display: inline;
|
|
}
|
|
|
|
/* Large lists */
|
|
.ipsDataList_large .ipsDataItem_main,
|
|
.ipsDataList_large .ipsDataItem_stats,
|
|
.ipsDataList_large .ipsDataItem_lastPoster,
|
|
.ipsDataList_large .ipsDataItem_generic {
|
|
padding: 15px 10px;
|
|
}
|
|
|
|
.ipsDataList_large .ipsDataItem_icon {
|
|
padding: 15px 10px 15px 10px;
|
|
min-width: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsDataList_large .ipsDataItem_icon {
|
|
padding: 15px 10px 15px 10px;
|
|
}
|
|
|
|
.ipsDataList_large .ipsDataItem {
|
|
border-bottom-width: 3px;
|
|
}
|
|
|
|
/* Reassert some positioning styles */
|
|
.ipsDataItem > .ipsPos_middle {
|
|
vertical-align: middle !important;
|
|
}
|
|
|
|
.ipsDataItem > .ipsPos_top {
|
|
vertical-align: top !important;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ITEMS */
|
|
.ipsDataItem {
|
|
width: 100%;
|
|
position: relative;
|
|
border-width: 0 0 1px 0;
|
|
border-style: solid;
|
|
border-color: #ebebeb;
|
|
}
|
|
|
|
.ipsDataList:not( .ipsGrid ) .ipsDataItem:last-child,
|
|
.ipsDataList.ipsDataList_zebra > .ipsDataItem {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MAIN COLUMN - fluid */
|
|
.ipsDataItem_main {
|
|
width: 100%;
|
|
margin: 0;
|
|
vertical-align: top;
|
|
}
|
|
|
|
.ipsDataItem .ipsDataItem_main:only-child {
|
|
display: block !important;
|
|
}
|
|
|
|
.ipsDataItem .ipsDataItem_main .ipsTags {
|
|
margin-top: 7px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* STATS COLUMN */
|
|
.ipsDataItem_stats {
|
|
width: 15%;
|
|
min-width: 150px;
|
|
text-align: right;
|
|
list-style: none;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_stats {
|
|
text-align: left;
|
|
}
|
|
|
|
.ipsDataItem_stats dl {
|
|
margin: 0 0 5px 0;
|
|
}
|
|
|
|
.ipsDataItem_statsLarge {
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsDataItem_statsLarge .ipsDataItem_stats_number {
|
|
font-size: 22px;
|
|
font-weight: 300;
|
|
line-height: 1.3;
|
|
}
|
|
|
|
.ipsDataItem_stats_hot {
|
|
background: #da621a;
|
|
color: #fff;
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
display: inline-block;
|
|
padding: 0 5px 0 5px;
|
|
position: relative;
|
|
vertical-align: middle;
|
|
border-radius: 2px;
|
|
}
|
|
|
|
.ipsDataItem_stats_hot:before {
|
|
content: attr(data-text);
|
|
text-transform: uppercase;
|
|
font-size: 9px;
|
|
color: #fff;
|
|
opacity: 0.6;
|
|
font-weight: bold;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_stats_hot:before {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_stats_hot:before {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_stats dt, html[dir="ltr"] .ipsDataItem_stats dd {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_stats dt, html[dir="rtl"] .ipsDataItem_stats dd {
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* OTHER */
|
|
.ipsDataItem_icon {
|
|
width: 25px;
|
|
min-width: 25px;
|
|
padding-top: 12px;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_icon {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="ltr"] .ipsDataList_large .ipsDataItem_icon {
|
|
padding-right: 10px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsDataItem_icon {
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataList_large .ipsDataItem_icon {
|
|
padding-left: 10px;
|
|
}
|
|
|
|
.ipsDataItem_icon_noPad {
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsDataItem_category {
|
|
font-size: 20px;
|
|
}
|
|
|
|
.ipsDataItem_meta {
|
|
margin: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* LAST POSTER */
|
|
.ipsDataItem_lastPoster {
|
|
width: 24%;
|
|
max-width: 24%;
|
|
min-width: 270px;
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li {
|
|
margin-left: 50px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li {
|
|
margin-right: 50px;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster .ipsUserPhoto {
|
|
display: block;
|
|
float: left;
|
|
margin: 1px 10px 0 -50px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_lastPoster .ipsUserPhoto {
|
|
float: right;
|
|
margin: 1px -50px 0 10px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* GENERIC SIZING */
|
|
.ipsDataItem_size1 { width: 50px; min-width: 50px; }
|
|
.ipsDataItem_size2 { width: 75px; min-width: 75px; }
|
|
.ipsDataItem_size3 { width: 100px; min-width: 100px; }
|
|
.ipsDataItem_size4 { width: 125px; min-width: 125px; }
|
|
.ipsDataItem_size5 { width: 150px; min-width: 150px; }
|
|
.ipsDataItem_size6 { width: 175px; min-width: 175px; }
|
|
.ipsDataItem_size7 { width: 200px; min-width: 200px; }
|
|
.ipsDataItem_size8 { width: 225px; min-width: 225px; }
|
|
.ipsDataItem_size9 { width: 250px; min-width: 250px; }
|
|
|
|
/* ======================================================== */
|
|
/* SUB LISTS */
|
|
.ipsDataItem_subList {
|
|
margin: 5px 0 0;
|
|
background-repeat: no-repeat;
|
|
background-size: 13px 8px;
|
|
list-style: none;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_subList {
|
|
padding-left: 20px !important;
|
|
background-image: url( "{resource="subitem_stem.png" app="core" location="front"}" );
|
|
background-position: 3px 5px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_subList {
|
|
padding-right: 20px !important;
|
|
background-image: url( "{resource="subitem_stem_rtl.png" app="core" location="front"}" );
|
|
background-position: right 3px top 5px;
|
|
}
|
|
|
|
.ipsDataItem_subList li {
|
|
margin-right: 5px !important;
|
|
}
|
|
|
|
.ipsDataItem_subList li.ipsDataItem_unread {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsDataItem_subList li a:after {
|
|
content: ',';
|
|
}
|
|
|
|
.ipsDataItem_subList li:last-child a:after {
|
|
content: '';
|
|
}
|
|
|
|
/* Sub results */
|
|
.ipsDataItem_subItem {
|
|
padding-bottom: 10px;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_subItem {
|
|
padding-left: 5%;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_subItem {
|
|
padding-right: 5%;
|
|
}
|
|
|
|
.ipsDataItem_subItem .ipsDataItem_icon {
|
|
font-size: 22px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="engagement.css"><![CDATA[/* Engagement: styles for various features that generall fall under user engagement */
|
|
/* ======================================================== */
|
|
/* LIKE & REP BUTTONS */
|
|
.ipsLikeRep {
|
|
background: #f0f0f0;
|
|
border-radius: 2px;
|
|
padding: 3px;
|
|
line-height: 16px;
|
|
display: inline-block;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsLikeRep:before {
|
|
content: '';
|
|
display: block;
|
|
border-style: solid;
|
|
border-width: 6px;
|
|
border-color: transparent transparent #f0f0f0 transparent;
|
|
position: absolute;
|
|
top: -12px;
|
|
}
|
|
html[dir="ltr"] .ipsLikeRep:before {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsLikeRep:before {
|
|
right: 10px;
|
|
}
|
|
|
|
.ipsLikeRep .ipsButton, .ipsReputation_count {
|
|
line-height: 20px;
|
|
padding: 0 7px;
|
|
font-size: 11px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsLikeRep .ipsLike_contents + .ipsButton {
|
|
margin-left: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsLikeRep .ipsLike_contents + .ipsButton {
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.ipsLikeRep .ipsButton_like {
|
|
line-height: 18px;
|
|
border: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsButton.ipsButton_like .fa {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsButton.ipsButton_like .fa {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.ipsButton.ipsButton_likeOff {
|
|
background: #fff;
|
|
color: #333;
|
|
}
|
|
|
|
.ipsButton.ipsButton_repUp, .ipsButton.ipsButton_repDown {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsButton.ipsButton_repUp {
|
|
background: #5f7a47;
|
|
}
|
|
|
|
.ipsButton.ipsButton_repDown {
|
|
background: #a72f35;
|
|
}
|
|
|
|
.ipsButton.ipsButton_rep, .ipsReputation_count {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.ipsLike_contents {
|
|
font-size: 11px;
|
|
}
|
|
html[dir="ltr"] .ipsLike_contents {
|
|
margin-left: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsLike_contents {
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.ipsReputation_count {
|
|
background: #fff;
|
|
display: inline-block;
|
|
position: relative;
|
|
font-size: 13px;
|
|
font-weight: bold;
|
|
border-radius: 3px;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
.ipsRep_mini .ipsReputation_count {
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsReputation_count.ipsType_positive {
|
|
background: #ebf2e5;
|
|
}
|
|
|
|
.ipsReputation_count.ipsType_negative {
|
|
background: #efdedf;
|
|
}
|
|
|
|
.ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count {
|
|
font-size: 11px;
|
|
line-height: 20px;
|
|
}
|
|
html[dir="ltr"] .ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count:before {
|
|
content: '';
|
|
display: block;
|
|
width: 1px;
|
|
height: 100%;
|
|
position: absolute;
|
|
background: rgba(0,0,0,0.1);
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count:before {
|
|
left: -8px;
|
|
}
|
|
html[dir="rtl"] .ipsLikeRep [data-action="giveReputation"] + .ipsReputation_count:before {
|
|
right: -8px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MINI LIKE/REP */
|
|
.ipsRep_mini .ipsLikeRep {
|
|
background: transparent;
|
|
border-radius: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsLikeRep:before {
|
|
display: none;
|
|
}
|
|
|
|
.ipsRep_mini .ipsReputation_count {
|
|
background: transparent;
|
|
border-radius: 0;
|
|
border: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsRep_mini .ipsButton.ipsButton_rep, .ipsReputation_count {
|
|
line-height: 18px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* FOLLOW/LIKE */
|
|
.ipsFollow {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
white-space: nowrap;
|
|
}
|
|
html[dir="ltr"] .ipsFollow {
|
|
padding-right: 0 !important;
|
|
}
|
|
html[dir="rtl"] .ipsFollow {
|
|
padding-left: 0 !important;
|
|
}
|
|
|
|
.ipsFollow > a:not( .ipsCommentCount ),
|
|
.ipsFollow > span:not( .ipsCommentCount ),
|
|
.ipsFollow > a > span:not( .ipsCommentCount ) {
|
|
display: inline-block;
|
|
line-height: 28px;
|
|
position: relative;
|
|
}
|
|
html[dir="ltr"] .ipsFollow > a:not( .ipsCommentCount ),
|
|
html[dir="ltr"] .ipsFollow > span:not( .ipsCommentCount ),
|
|
html[dir="ltr"] .ipsFollow > a > span:not( .ipsCommentCount ) {
|
|
left: -15px;
|
|
padding-left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsFollow > a:not( .ipsCommentCount ),
|
|
html[dir="rtl"] .ipsFollow > span:not( .ipsCommentCount ),
|
|
html[dir="rtl"] .ipsFollow > a > span:not( .ipsCommentCount ) {
|
|
right: -15px;
|
|
padding-right: 15px;
|
|
}
|
|
|
|
.ipsFollow .ipsCommentCount {
|
|
margin: 0 2px 0 0;
|
|
background: #fff;
|
|
color: #333;
|
|
text-shadow: none !important;
|
|
line-height: 13px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.ipsFollow > a > span.ipsCommentCount {
|
|
margin: 0 -14px 0 14px;
|
|
}
|
|
html[dir="rtl"] .ipsFollow > a > span.ipsCommentCount {
|
|
margin: 0 14px 0 -14px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFollow > a > span + span.ipsCommentCount {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsFollow > a > span + span.ipsCommentCount {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFollow .ipsCommentCount:after {
|
|
border-color: transparent #fff transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsFollow .ipsCommentCount:after {
|
|
border-color: transparent transparent transparent #fff;
|
|
}
|
|
|
|
.ipsFollowerList {
|
|
max-height: 300px;
|
|
overflow: auto;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* RATINGS */
|
|
.ipsRating {
|
|
font-size: 14px;
|
|
line-height: 1;
|
|
display: inline-block;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsList_inline.ipsRating > li {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsList_inline.ipsRating > li {
|
|
margin-left: 0;
|
|
}
|
|
|
|
/* Sizes */
|
|
.ipsRating.ipsRating_small {
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsRating.ipsRating_large {
|
|
font-size: 16px;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.ipsRating.ipsRating_veryLarge {
|
|
font-size: 20px;
|
|
}
|
|
|
|
.ipsRating + span {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.ipsRating + span:empty {
|
|
margin-left: 0;
|
|
}
|
|
|
|
/* Specific to the widget version */
|
|
html[dir="ltr"] [data-ipsRating] > .ipsRating {
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] [data-ipsRating] > .ipsRating {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] [data-ipsRating] > .ipsRating > li {
|
|
padding-right: 3px;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] [data-ipsRating] > .ipsRating > li {
|
|
padding-left: 3px;
|
|
float: right;
|
|
}
|
|
|
|
.ipsRating.ipsRating_loading {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
/* COLORS */
|
|
.ipsRating .ipsRating_on .fa-star {
|
|
color: {theme="rating_on"};
|
|
}
|
|
|
|
.ipsRating .ipsRating_off .fa-star-o,
|
|
.ipsRating .ipsRating_off .fa-star {
|
|
color: #b3b3b3;
|
|
}
|
|
|
|
.ipsRating > .ipsRating_hover .fa-star {
|
|
color: {theme="rating_hover"};
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SHARE LINKS */
|
|
.ipsShare_facebook {
|
|
border:none;
|
|
overflow:hidden;
|
|
height:20px;
|
|
width: 48px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PIP PIP */
|
|
.ipsPip {
|
|
font-size: 10px;
|
|
color: #5a5a5a;
|
|
display: inline-block;
|
|
}
|
|
html[dir="ltr"] .ipsPip {
|
|
margin-right: 2px;
|
|
}
|
|
html[dir="rtl"] .ipsPip {
|
|
margin-left: 2px;
|
|
}
|
|
|
|
.ipsPip:before {
|
|
content: '\f111';
|
|
font-family: 'FontAwesome';
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="fonts.css"><![CDATA[/*!
|
|
* IcoMoon
|
|
*/
|
|
@font-face {
|
|
font-family: 'icomoon';
|
|
src:url('{url="applications/core/interface/font/icomoon.eot?-29n77j" base="none" noprotocol="true"}');
|
|
src:url('{url="applications/core/interface/font/icomoon.eot?#iefix-29n77j" base="none" noprotocol="true"}') format('embedded-opentype'),
|
|
url('{url="applications/core/interface/font/icomoon.woff?-29n77j" base="none" noprotocol="true"}') format('woff'),
|
|
url('{url="applications/core/interface/font/icomoon.ttf?-29n77j" base="none" noprotocol="true"}') format('truetype'),
|
|
url('{url="applications/core/interface/font/icomoon.svg?-29n77j#icomoon" base="none" noprotocol="true"}') format('svg');
|
|
font-weight: normal;
|
|
font-style: normal;
|
|
}
|
|
|
|
[class^="icon-"], [class*=" icon-"] {
|
|
font-family: 'icomoon';
|
|
speak: none;
|
|
font-style: normal;
|
|
font-weight: normal;
|
|
font-variant: normal;
|
|
text-transform: none;
|
|
line-height: 1;
|
|
|
|
/* Better Font Rendering =========== */
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
}
|
|
|
|
.icon-spinner2:before,
|
|
.icon-spinner3:before,
|
|
.icon-spinner9:before {
|
|
-webkit-animation: spinner 0.75s infinite linear;
|
|
animation: spinner 0.75s infinite linear;
|
|
}
|
|
|
|
.icon-newspaper:before {
|
|
content: "\e904";
|
|
}
|
|
.icon-stack:before {
|
|
content: "\e92e";
|
|
}
|
|
.icon-spinner2:before {
|
|
content: "\e97b";
|
|
}
|
|
.icon-spinner3:before {
|
|
content: "\e97c";
|
|
}
|
|
.icon-spinner9:before {
|
|
content: "\e982";
|
|
}
|
|
.icon-fire:before {
|
|
content: "\e9a9";
|
|
}
|
|
|
|
/*!
|
|
* Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
|
|
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
|
*/
|
|
/* FONT PATH
|
|
* -------------------------- */
|
|
@font-face {
|
|
font-family: 'FontAwesome';
|
|
src: url('{url="applications/core/interface/font/fontawesome-webfont.eot?v=4.4.0" base="none" noprotocol="true"}');
|
|
src: url('{url="applications/core/interface/font/fontawesome-webfont.eot?#iefix&v=4.4.0" base="none" noprotocol="true"}') format('embedded-opentype'), url('{url="applications/core/interface/font/fontawesome-webfont.woff2?v=4.4.0" base="none" noprotocol="true"}') format('woff2'), url('{url="applications/core/interface/font/fontawesome-webfont.woff?v=4.4.0" base="none" noprotocol="true"}') format('woff'), url('{url="applications/core/interface/font/fontawesome-webfont.ttf?v=4.4.0" base="none" noprotocol="true"}') format('truetype'), url('{url="applications/core/interface/font/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular" base="none" noprotocol="true"}') format('svg');
|
|
font-weight: normal;
|
|
font-style: normal;
|
|
}
|
|
.fa {
|
|
display: inline-block;
|
|
font: normal normal normal 14px/1 FontAwesome;
|
|
font-size: inherit;
|
|
text-rendering: auto;
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
transform: translate(0, 0);
|
|
}
|
|
/* makes the font 33% larger relative to the icon container */
|
|
.fa-lg {
|
|
font-size: 1.33333333em;
|
|
line-height: 0.75em;
|
|
vertical-align: -15%;
|
|
}
|
|
.fa-2x {
|
|
font-size: 2em;
|
|
}
|
|
.fa-3x {
|
|
font-size: 3em;
|
|
}
|
|
.fa-4x {
|
|
font-size: 4em;
|
|
}
|
|
.fa-5x {
|
|
font-size: 5em;
|
|
}
|
|
.fa-fw {
|
|
width: 1.28571429em;
|
|
text-align: center;
|
|
}
|
|
.fa-ul {
|
|
padding-left: 0;
|
|
margin-left: 2.14285714em;
|
|
list-style-type: none;
|
|
}
|
|
.fa-ul > li {
|
|
position: relative;
|
|
}
|
|
.fa-li {
|
|
position: absolute;
|
|
left: -2.14285714em;
|
|
width: 2.14285714em;
|
|
top: 0.14285714em;
|
|
text-align: center;
|
|
}
|
|
.fa-li.fa-lg {
|
|
left: -1.85714286em;
|
|
}
|
|
.fa-border {
|
|
padding: .2em .25em .15em;
|
|
border: solid 0.08em #eeeeee;
|
|
border-radius: .1em;
|
|
}
|
|
.pull-right {
|
|
float: right;
|
|
}
|
|
.pull-left {
|
|
float: left;
|
|
}
|
|
.fa.pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.fa.pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.fa-spin {
|
|
-webkit-animation: fa-spin 2s infinite linear;
|
|
animation: fa-spin 2s infinite linear;
|
|
}
|
|
.fa-pulse {
|
|
-webkit-animation: fa-spin 1s infinite steps(8);
|
|
animation: fa-spin 1s infinite steps(8);
|
|
}
|
|
@-webkit-keyframes fa-spin {
|
|
0% {
|
|
-webkit-transform: rotate(0deg);
|
|
transform: rotate(0deg);
|
|
}
|
|
100% {
|
|
-webkit-transform: rotate(359deg);
|
|
transform: rotate(359deg);
|
|
}
|
|
}
|
|
@keyframes fa-spin {
|
|
0% {
|
|
-webkit-transform: rotate(0deg);
|
|
transform: rotate(0deg);
|
|
}
|
|
100% {
|
|
-webkit-transform: rotate(359deg);
|
|
transform: rotate(359deg);
|
|
}
|
|
}
|
|
.fa-rotate-90 {
|
|
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
|
|
-webkit-transform: rotate(90deg);
|
|
-ms-transform: rotate(90deg);
|
|
transform: rotate(90deg);
|
|
}
|
|
.fa-rotate-180 {
|
|
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
|
|
-webkit-transform: rotate(180deg);
|
|
-ms-transform: rotate(180deg);
|
|
transform: rotate(180deg);
|
|
}
|
|
.fa-rotate-270 {
|
|
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
|
|
-webkit-transform: rotate(270deg);
|
|
-ms-transform: rotate(270deg);
|
|
transform: rotate(270deg);
|
|
}
|
|
.fa-flip-horizontal {
|
|
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
|
|
-webkit-transform: scale(-1, 1);
|
|
-ms-transform: scale(-1, 1);
|
|
transform: scale(-1, 1);
|
|
}
|
|
.fa-flip-vertical {
|
|
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
|
|
-webkit-transform: scale(1, -1);
|
|
-ms-transform: scale(1, -1);
|
|
transform: scale(1, -1);
|
|
}
|
|
:root .fa-rotate-90,
|
|
:root .fa-rotate-180,
|
|
:root .fa-rotate-270,
|
|
:root .fa-flip-horizontal,
|
|
:root .fa-flip-vertical {
|
|
filter: none;
|
|
}
|
|
.fa-stack {
|
|
position: relative;
|
|
display: inline-block;
|
|
width: 2em;
|
|
height: 2em;
|
|
line-height: 2em;
|
|
vertical-align: middle;
|
|
}
|
|
.fa-stack-1x,
|
|
.fa-stack-2x {
|
|
position: absolute;
|
|
left: 0;
|
|
width: 100%;
|
|
text-align: center;
|
|
}
|
|
.fa-stack-1x {
|
|
line-height: inherit;
|
|
}
|
|
.fa-stack-2x {
|
|
font-size: 2em;
|
|
}
|
|
.fa-inverse {
|
|
color: #ffffff;
|
|
}
|
|
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
|
readers do not read off random characters that represent icons */
|
|
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
|
readers do not read off random characters that represent icons */
|
|
.fa-glass:before {
|
|
content: "\f000";
|
|
}
|
|
.fa-music:before {
|
|
content: "\f001";
|
|
}
|
|
.fa-search:before {
|
|
content: "\f002";
|
|
}
|
|
.fa-envelope-o:before {
|
|
content: "\f003";
|
|
}
|
|
.fa-heart:before {
|
|
content: "\f004";
|
|
}
|
|
.fa-star:before {
|
|
content: "\f005";
|
|
}
|
|
.fa-star-o:before {
|
|
content: "\f006";
|
|
}
|
|
.fa-user:before {
|
|
content: "\f007";
|
|
}
|
|
.fa-film:before {
|
|
content: "\f008";
|
|
}
|
|
.fa-th-large:before {
|
|
content: "\f009";
|
|
}
|
|
.fa-th:before {
|
|
content: "\f00a";
|
|
}
|
|
.fa-th-list:before {
|
|
content: "\f00b";
|
|
}
|
|
.fa-check:before {
|
|
content: "\f00c";
|
|
}
|
|
.fa-remove:before,
|
|
.fa-close:before,
|
|
.fa-times:before {
|
|
content: "\f00d";
|
|
}
|
|
.fa-search-plus:before {
|
|
content: "\f00e";
|
|
}
|
|
.fa-search-minus:before {
|
|
content: "\f010";
|
|
}
|
|
.fa-power-off:before {
|
|
content: "\f011";
|
|
}
|
|
.fa-signal:before {
|
|
content: "\f012";
|
|
}
|
|
.fa-gear:before,
|
|
.fa-cog:before {
|
|
content: "\f013";
|
|
}
|
|
.fa-trash-o:before {
|
|
content: "\f014";
|
|
}
|
|
.fa-home:before {
|
|
content: "\f015";
|
|
}
|
|
.fa-file-o:before {
|
|
content: "\f016";
|
|
}
|
|
.fa-clock-o:before {
|
|
content: "\f017";
|
|
}
|
|
.fa-road:before {
|
|
content: "\f018";
|
|
}
|
|
.fa-download:before {
|
|
content: "\f019";
|
|
}
|
|
.fa-arrow-circle-o-down:before {
|
|
content: "\f01a";
|
|
}
|
|
.fa-arrow-circle-o-up:before {
|
|
content: "\f01b";
|
|
}
|
|
.fa-inbox:before {
|
|
content: "\f01c";
|
|
}
|
|
.fa-play-circle-o:before {
|
|
content: "\f01d";
|
|
}
|
|
.fa-rotate-right:before,
|
|
.fa-repeat:before {
|
|
content: "\f01e";
|
|
}
|
|
.fa-refresh:before {
|
|
content: "\f021";
|
|
}
|
|
.fa-list-alt:before {
|
|
content: "\f022";
|
|
}
|
|
.fa-lock:before {
|
|
content: "\f023";
|
|
}
|
|
.fa-flag:before {
|
|
content: "\f024";
|
|
}
|
|
.fa-headphones:before {
|
|
content: "\f025";
|
|
}
|
|
.fa-volume-off:before {
|
|
content: "\f026";
|
|
}
|
|
.fa-volume-down:before {
|
|
content: "\f027";
|
|
}
|
|
.fa-volume-up:before {
|
|
content: "\f028";
|
|
}
|
|
.fa-qrcode:before {
|
|
content: "\f029";
|
|
}
|
|
.fa-barcode:before {
|
|
content: "\f02a";
|
|
}
|
|
.fa-tag:before {
|
|
content: "\f02b";
|
|
}
|
|
.fa-tags:before {
|
|
content: "\f02c";
|
|
}
|
|
.fa-book:before {
|
|
content: "\f02d";
|
|
}
|
|
.fa-bookmark:before {
|
|
content: "\f02e";
|
|
}
|
|
.fa-print:before {
|
|
content: "\f02f";
|
|
}
|
|
.fa-camera:before {
|
|
content: "\f030";
|
|
}
|
|
.fa-font:before {
|
|
content: "\f031";
|
|
}
|
|
.fa-bold:before {
|
|
content: "\f032";
|
|
}
|
|
.fa-italic:before {
|
|
content: "\f033";
|
|
}
|
|
.fa-text-height:before {
|
|
content: "\f034";
|
|
}
|
|
.fa-text-width:before {
|
|
content: "\f035";
|
|
}
|
|
.fa-align-left:before {
|
|
content: "\f036";
|
|
}
|
|
.fa-align-center:before {
|
|
content: "\f037";
|
|
}
|
|
.fa-align-right:before {
|
|
content: "\f038";
|
|
}
|
|
.fa-align-justify:before {
|
|
content: "\f039";
|
|
}
|
|
.fa-list:before {
|
|
content: "\f03a";
|
|
}
|
|
.fa-dedent:before,
|
|
.fa-outdent:before {
|
|
content: "\f03b";
|
|
}
|
|
.fa-indent:before {
|
|
content: "\f03c";
|
|
}
|
|
.fa-video-camera:before {
|
|
content: "\f03d";
|
|
}
|
|
.fa-photo:before,
|
|
.fa-image:before,
|
|
.fa-picture-o:before {
|
|
content: "\f03e";
|
|
}
|
|
.fa-pencil:before {
|
|
content: "\f040";
|
|
}
|
|
.fa-map-marker:before {
|
|
content: "\f041";
|
|
}
|
|
.fa-adjust:before {
|
|
content: "\f042";
|
|
}
|
|
.fa-tint:before {
|
|
content: "\f043";
|
|
}
|
|
.fa-edit:before,
|
|
.fa-pencil-square-o:before {
|
|
content: "\f044";
|
|
}
|
|
.fa-share-square-o:before {
|
|
content: "\f045";
|
|
}
|
|
.fa-check-square-o:before {
|
|
content: "\f046";
|
|
}
|
|
.fa-arrows:before {
|
|
content: "\f047";
|
|
}
|
|
.fa-step-backward:before {
|
|
content: "\f048";
|
|
}
|
|
.fa-fast-backward:before {
|
|
content: "\f049";
|
|
}
|
|
.fa-backward:before {
|
|
content: "\f04a";
|
|
}
|
|
.fa-play:before {
|
|
content: "\f04b";
|
|
}
|
|
.fa-pause:before {
|
|
content: "\f04c";
|
|
}
|
|
.fa-stop:before {
|
|
content: "\f04d";
|
|
}
|
|
.fa-forward:before {
|
|
content: "\f04e";
|
|
}
|
|
.fa-fast-forward:before {
|
|
content: "\f050";
|
|
}
|
|
.fa-step-forward:before {
|
|
content: "\f051";
|
|
}
|
|
.fa-eject:before {
|
|
content: "\f052";
|
|
}
|
|
.fa-chevron-left:before {
|
|
content: "\f053";
|
|
}
|
|
.fa-chevron-right:before {
|
|
content: "\f054";
|
|
}
|
|
.fa-plus-circle:before {
|
|
content: "\f055";
|
|
}
|
|
.fa-minus-circle:before {
|
|
content: "\f056";
|
|
}
|
|
.fa-times-circle:before {
|
|
content: "\f057";
|
|
}
|
|
.fa-check-circle:before {
|
|
content: "\f058";
|
|
}
|
|
.fa-question-circle:before {
|
|
content: "\f059";
|
|
}
|
|
.fa-info-circle:before {
|
|
content: "\f05a";
|
|
}
|
|
.fa-crosshairs:before {
|
|
content: "\f05b";
|
|
}
|
|
.fa-times-circle-o:before {
|
|
content: "\f05c";
|
|
}
|
|
.fa-check-circle-o:before {
|
|
content: "\f05d";
|
|
}
|
|
.fa-ban:before {
|
|
content: "\f05e";
|
|
}
|
|
.fa-arrow-left:before {
|
|
content: "\f060";
|
|
}
|
|
.fa-arrow-right:before {
|
|
content: "\f061";
|
|
}
|
|
.fa-arrow-up:before {
|
|
content: "\f062";
|
|
}
|
|
.fa-arrow-down:before {
|
|
content: "\f063";
|
|
}
|
|
.fa-mail-forward:before,
|
|
.fa-share:before {
|
|
content: "\f064";
|
|
}
|
|
.fa-expand:before {
|
|
content: "\f065";
|
|
}
|
|
.fa-compress:before {
|
|
content: "\f066";
|
|
}
|
|
.fa-plus:before {
|
|
content: "\f067";
|
|
}
|
|
.fa-minus:before {
|
|
content: "\f068";
|
|
}
|
|
.fa-asterisk:before {
|
|
content: "\f069";
|
|
}
|
|
.fa-exclamation-circle:before {
|
|
content: "\f06a";
|
|
}
|
|
.fa-gift:before {
|
|
content: "\f06b";
|
|
}
|
|
.fa-leaf:before {
|
|
content: "\f06c";
|
|
}
|
|
.fa-fire:before {
|
|
content: "\f06d";
|
|
}
|
|
.fa-eye:before {
|
|
content: "\f06e";
|
|
}
|
|
.fa-eye-slash:before {
|
|
content: "\f070";
|
|
}
|
|
.fa-warning:before,
|
|
.fa-exclamation-triangle:before {
|
|
content: "\f071";
|
|
}
|
|
.fa-plane:before {
|
|
content: "\f072";
|
|
}
|
|
.fa-calendar:before {
|
|
content: "\f073";
|
|
}
|
|
.fa-random:before {
|
|
content: "\f074";
|
|
}
|
|
.fa-comment:before {
|
|
content: "\f075";
|
|
}
|
|
.fa-magnet:before {
|
|
content: "\f076";
|
|
}
|
|
.fa-chevron-up:before {
|
|
content: "\f077";
|
|
}
|
|
.fa-chevron-down:before {
|
|
content: "\f078";
|
|
}
|
|
.fa-retweet:before {
|
|
content: "\f079";
|
|
}
|
|
.fa-shopping-cart:before {
|
|
content: "\f07a";
|
|
}
|
|
.fa-folder:before {
|
|
content: "\f07b";
|
|
}
|
|
.fa-folder-open:before {
|
|
content: "\f07c";
|
|
}
|
|
.fa-arrows-v:before {
|
|
content: "\f07d";
|
|
}
|
|
.fa-arrows-h:before {
|
|
content: "\f07e";
|
|
}
|
|
.fa-bar-chart-o:before,
|
|
.fa-bar-chart:before {
|
|
content: "\f080";
|
|
}
|
|
.fa-twitter-square:before {
|
|
content: "\f081";
|
|
}
|
|
.fa-facebook-square:before {
|
|
content: "\f082";
|
|
}
|
|
.fa-camera-retro:before {
|
|
content: "\f083";
|
|
}
|
|
.fa-key:before {
|
|
content: "\f084";
|
|
}
|
|
.fa-gears:before,
|
|
.fa-cogs:before {
|
|
content: "\f085";
|
|
}
|
|
.fa-comments:before {
|
|
content: "\f086";
|
|
}
|
|
.fa-thumbs-o-up:before {
|
|
content: "\f087";
|
|
}
|
|
.fa-thumbs-o-down:before {
|
|
content: "\f088";
|
|
}
|
|
.fa-star-half:before {
|
|
content: "\f089";
|
|
}
|
|
.fa-heart-o:before {
|
|
content: "\f08a";
|
|
}
|
|
.fa-sign-out:before {
|
|
content: "\f08b";
|
|
}
|
|
.fa-linkedin-square:before {
|
|
content: "\f08c";
|
|
}
|
|
.fa-thumb-tack:before {
|
|
content: "\f08d";
|
|
}
|
|
.fa-external-link:before {
|
|
content: "\f08e";
|
|
}
|
|
.fa-sign-in:before {
|
|
content: "\f090";
|
|
}
|
|
.fa-trophy:before {
|
|
content: "\f091";
|
|
}
|
|
.fa-github-square:before {
|
|
content: "\f092";
|
|
}
|
|
.fa-upload:before {
|
|
content: "\f093";
|
|
}
|
|
.fa-lemon-o:before {
|
|
content: "\f094";
|
|
}
|
|
.fa-phone:before {
|
|
content: "\f095";
|
|
}
|
|
.fa-square-o:before {
|
|
content: "\f096";
|
|
}
|
|
.fa-bookmark-o:before {
|
|
content: "\f097";
|
|
}
|
|
.fa-phone-square:before {
|
|
content: "\f098";
|
|
}
|
|
.fa-twitter:before {
|
|
content: "\f099";
|
|
}
|
|
.fa-facebook-f:before,
|
|
.fa-facebook:before {
|
|
content: "\f09a";
|
|
}
|
|
.fa-github:before {
|
|
content: "\f09b";
|
|
}
|
|
.fa-unlock:before {
|
|
content: "\f09c";
|
|
}
|
|
.fa-credit-card:before {
|
|
content: "\f09d";
|
|
}
|
|
.fa-feed:before,
|
|
.fa-rss:before {
|
|
content: "\f09e";
|
|
}
|
|
.fa-hdd-o:before {
|
|
content: "\f0a0";
|
|
}
|
|
.fa-bullhorn:before {
|
|
content: "\f0a1";
|
|
}
|
|
.fa-bell:before {
|
|
content: "\f0f3";
|
|
}
|
|
.fa-certificate:before {
|
|
content: "\f0a3";
|
|
}
|
|
.fa-hand-o-right:before {
|
|
content: "\f0a4";
|
|
}
|
|
.fa-hand-o-left:before {
|
|
content: "\f0a5";
|
|
}
|
|
.fa-hand-o-up:before {
|
|
content: "\f0a6";
|
|
}
|
|
.fa-hand-o-down:before {
|
|
content: "\f0a7";
|
|
}
|
|
.fa-arrow-circle-left:before {
|
|
content: "\f0a8";
|
|
}
|
|
.fa-arrow-circle-right:before {
|
|
content: "\f0a9";
|
|
}
|
|
.fa-arrow-circle-up:before {
|
|
content: "\f0aa";
|
|
}
|
|
.fa-arrow-circle-down:before {
|
|
content: "\f0ab";
|
|
}
|
|
.fa-globe:before {
|
|
content: "\f0ac";
|
|
}
|
|
.fa-wrench:before {
|
|
content: "\f0ad";
|
|
}
|
|
.fa-tasks:before {
|
|
content: "\f0ae";
|
|
}
|
|
.fa-filter:before {
|
|
content: "\f0b0";
|
|
}
|
|
.fa-briefcase:before {
|
|
content: "\f0b1";
|
|
}
|
|
.fa-arrows-alt:before {
|
|
content: "\f0b2";
|
|
}
|
|
.fa-group:before,
|
|
.fa-users:before {
|
|
content: "\f0c0";
|
|
}
|
|
.fa-chain:before,
|
|
.fa-link:before {
|
|
content: "\f0c1";
|
|
}
|
|
.fa-cloud:before {
|
|
content: "\f0c2";
|
|
}
|
|
.fa-flask:before {
|
|
content: "\f0c3";
|
|
}
|
|
.fa-cut:before,
|
|
.fa-scissors:before {
|
|
content: "\f0c4";
|
|
}
|
|
.fa-copy:before,
|
|
.fa-files-o:before {
|
|
content: "\f0c5";
|
|
}
|
|
.fa-paperclip:before {
|
|
content: "\f0c6";
|
|
}
|
|
.fa-save:before,
|
|
.fa-floppy-o:before {
|
|
content: "\f0c7";
|
|
}
|
|
.fa-square:before {
|
|
content: "\f0c8";
|
|
}
|
|
.fa-navicon:before,
|
|
.fa-reorder:before,
|
|
.fa-bars:before {
|
|
content: "\f0c9";
|
|
}
|
|
.fa-list-ul:before {
|
|
content: "\f0ca";
|
|
}
|
|
.fa-list-ol:before {
|
|
content: "\f0cb";
|
|
}
|
|
.fa-strikethrough:before {
|
|
content: "\f0cc";
|
|
}
|
|
.fa-underline:before {
|
|
content: "\f0cd";
|
|
}
|
|
.fa-table:before {
|
|
content: "\f0ce";
|
|
}
|
|
.fa-magic:before {
|
|
content: "\f0d0";
|
|
}
|
|
.fa-truck:before {
|
|
content: "\f0d1";
|
|
}
|
|
.fa-pinterest:before {
|
|
content: "\f0d2";
|
|
}
|
|
.fa-pinterest-square:before {
|
|
content: "\f0d3";
|
|
}
|
|
.fa-google-plus-square:before {
|
|
content: "\f0d4";
|
|
}
|
|
.fa-google-plus:before {
|
|
content: "\f0d5";
|
|
}
|
|
.fa-money:before {
|
|
content: "\f0d6";
|
|
}
|
|
.fa-caret-down:before {
|
|
content: "\f0d7";
|
|
}
|
|
.fa-caret-up:before {
|
|
content: "\f0d8";
|
|
}
|
|
.fa-caret-left:before {
|
|
content: "\f0d9";
|
|
}
|
|
.fa-caret-right:before {
|
|
content: "\f0da";
|
|
}
|
|
.fa-columns:before {
|
|
content: "\f0db";
|
|
}
|
|
.fa-unsorted:before,
|
|
.fa-sort:before {
|
|
content: "\f0dc";
|
|
}
|
|
.fa-sort-down:before,
|
|
.fa-sort-desc:before {
|
|
content: "\f0dd";
|
|
}
|
|
.fa-sort-up:before,
|
|
.fa-sort-asc:before {
|
|
content: "\f0de";
|
|
}
|
|
.fa-envelope:before {
|
|
content: "\f0e0";
|
|
}
|
|
.fa-linkedin:before {
|
|
content: "\f0e1";
|
|
}
|
|
.fa-rotate-left:before,
|
|
.fa-undo:before {
|
|
content: "\f0e2";
|
|
}
|
|
.fa-legal:before,
|
|
.fa-gavel:before {
|
|
content: "\f0e3";
|
|
}
|
|
.fa-dashboard:before,
|
|
.fa-tachometer:before {
|
|
content: "\f0e4";
|
|
}
|
|
.fa-comment-o:before {
|
|
content: "\f0e5";
|
|
}
|
|
.fa-comments-o:before {
|
|
content: "\f0e6";
|
|
}
|
|
.fa-flash:before,
|
|
.fa-bolt:before {
|
|
content: "\f0e7";
|
|
}
|
|
.fa-sitemap:before {
|
|
content: "\f0e8";
|
|
}
|
|
.fa-umbrella:before {
|
|
content: "\f0e9";
|
|
}
|
|
.fa-paste:before,
|
|
.fa-clipboard:before {
|
|
content: "\f0ea";
|
|
}
|
|
.fa-lightbulb-o:before {
|
|
content: "\f0eb";
|
|
}
|
|
.fa-exchange:before {
|
|
content: "\f0ec";
|
|
}
|
|
.fa-cloud-download:before {
|
|
content: "\f0ed";
|
|
}
|
|
.fa-cloud-upload:before {
|
|
content: "\f0ee";
|
|
}
|
|
.fa-user-md:before {
|
|
content: "\f0f0";
|
|
}
|
|
.fa-stethoscope:before {
|
|
content: "\f0f1";
|
|
}
|
|
.fa-suitcase:before {
|
|
content: "\f0f2";
|
|
}
|
|
.fa-bell-o:before {
|
|
content: "\f0a2";
|
|
}
|
|
.fa-coffee:before {
|
|
content: "\f0f4";
|
|
}
|
|
.fa-cutlery:before {
|
|
content: "\f0f5";
|
|
}
|
|
.fa-file-text-o:before {
|
|
content: "\f0f6";
|
|
}
|
|
.fa-building-o:before {
|
|
content: "\f0f7";
|
|
}
|
|
.fa-hospital-o:before {
|
|
content: "\f0f8";
|
|
}
|
|
.fa-ambulance:before {
|
|
content: "\f0f9";
|
|
}
|
|
.fa-medkit:before {
|
|
content: "\f0fa";
|
|
}
|
|
.fa-fighter-jet:before {
|
|
content: "\f0fb";
|
|
}
|
|
.fa-beer:before {
|
|
content: "\f0fc";
|
|
}
|
|
.fa-h-square:before {
|
|
content: "\f0fd";
|
|
}
|
|
.fa-plus-square:before {
|
|
content: "\f0fe";
|
|
}
|
|
.fa-angle-double-left:before {
|
|
content: "\f100";
|
|
}
|
|
.fa-angle-double-right:before {
|
|
content: "\f101";
|
|
}
|
|
.fa-angle-double-up:before {
|
|
content: "\f102";
|
|
}
|
|
.fa-angle-double-down:before {
|
|
content: "\f103";
|
|
}
|
|
.fa-angle-left:before {
|
|
content: "\f104";
|
|
}
|
|
.fa-angle-right:before {
|
|
content: "\f105";
|
|
}
|
|
.fa-angle-up:before {
|
|
content: "\f106";
|
|
}
|
|
.fa-angle-down:before {
|
|
content: "\f107";
|
|
}
|
|
.fa-desktop:before {
|
|
content: "\f108";
|
|
}
|
|
.fa-laptop:before {
|
|
content: "\f109";
|
|
}
|
|
.fa-tablet:before {
|
|
content: "\f10a";
|
|
}
|
|
.fa-mobile-phone:before,
|
|
.fa-mobile:before {
|
|
content: "\f10b";
|
|
}
|
|
.fa-circle-o:before {
|
|
content: "\f10c";
|
|
}
|
|
.fa-quote-left:before {
|
|
content: "\f10d";
|
|
}
|
|
.fa-quote-right:before {
|
|
content: "\f10e";
|
|
}
|
|
.fa-spinner:before {
|
|
content: "\f110";
|
|
}
|
|
.fa-circle:before {
|
|
content: "\f111";
|
|
}
|
|
.fa-mail-reply:before,
|
|
.fa-reply:before {
|
|
content: "\f112";
|
|
}
|
|
.fa-github-alt:before {
|
|
content: "\f113";
|
|
}
|
|
.fa-folder-o:before {
|
|
content: "\f114";
|
|
}
|
|
.fa-folder-open-o:before {
|
|
content: "\f115";
|
|
}
|
|
.fa-smile-o:before {
|
|
content: "\f118";
|
|
}
|
|
.fa-frown-o:before {
|
|
content: "\f119";
|
|
}
|
|
.fa-meh-o:before {
|
|
content: "\f11a";
|
|
}
|
|
.fa-gamepad:before {
|
|
content: "\f11b";
|
|
}
|
|
.fa-keyboard-o:before {
|
|
content: "\f11c";
|
|
}
|
|
.fa-flag-o:before {
|
|
content: "\f11d";
|
|
}
|
|
.fa-flag-checkered:before {
|
|
content: "\f11e";
|
|
}
|
|
.fa-terminal:before {
|
|
content: "\f120";
|
|
}
|
|
.fa-code:before {
|
|
content: "\f121";
|
|
}
|
|
.fa-mail-reply-all:before,
|
|
.fa-reply-all:before {
|
|
content: "\f122";
|
|
}
|
|
.fa-star-half-empty:before,
|
|
.fa-star-half-full:before,
|
|
.fa-star-half-o:before {
|
|
content: "\f123";
|
|
}
|
|
.fa-location-arrow:before {
|
|
content: "\f124";
|
|
}
|
|
.fa-crop:before {
|
|
content: "\f125";
|
|
}
|
|
.fa-code-fork:before {
|
|
content: "\f126";
|
|
}
|
|
.fa-unlink:before,
|
|
.fa-chain-broken:before {
|
|
content: "\f127";
|
|
}
|
|
.fa-question:before {
|
|
content: "\f128";
|
|
}
|
|
.fa-info:before {
|
|
content: "\f129";
|
|
}
|
|
.fa-exclamation:before {
|
|
content: "\f12a";
|
|
}
|
|
.fa-superscript:before {
|
|
content: "\f12b";
|
|
}
|
|
.fa-subscript:before {
|
|
content: "\f12c";
|
|
}
|
|
.fa-eraser:before {
|
|
content: "\f12d";
|
|
}
|
|
.fa-puzzle-piece:before {
|
|
content: "\f12e";
|
|
}
|
|
.fa-microphone:before {
|
|
content: "\f130";
|
|
}
|
|
.fa-microphone-slash:before {
|
|
content: "\f131";
|
|
}
|
|
.fa-shield:before {
|
|
content: "\f132";
|
|
}
|
|
.fa-calendar-o:before {
|
|
content: "\f133";
|
|
}
|
|
.fa-fire-extinguisher:before {
|
|
content: "\f134";
|
|
}
|
|
.fa-rocket:before {
|
|
content: "\f135";
|
|
}
|
|
.fa-maxcdn:before {
|
|
content: "\f136";
|
|
}
|
|
.fa-chevron-circle-left:before {
|
|
content: "\f137";
|
|
}
|
|
.fa-chevron-circle-right:before {
|
|
content: "\f138";
|
|
}
|
|
.fa-chevron-circle-up:before {
|
|
content: "\f139";
|
|
}
|
|
.fa-chevron-circle-down:before {
|
|
content: "\f13a";
|
|
}
|
|
.fa-html5:before {
|
|
content: "\f13b";
|
|
}
|
|
.fa-css3:before {
|
|
content: "\f13c";
|
|
}
|
|
.fa-anchor:before {
|
|
content: "\f13d";
|
|
}
|
|
.fa-unlock-alt:before {
|
|
content: "\f13e";
|
|
}
|
|
.fa-bullseye:before {
|
|
content: "\f140";
|
|
}
|
|
.fa-ellipsis-h:before {
|
|
content: "\f141";
|
|
}
|
|
.fa-ellipsis-v:before {
|
|
content: "\f142";
|
|
}
|
|
.fa-rss-square:before {
|
|
content: "\f143";
|
|
}
|
|
.fa-play-circle:before {
|
|
content: "\f144";
|
|
}
|
|
.fa-ticket:before {
|
|
content: "\f145";
|
|
}
|
|
.fa-minus-square:before {
|
|
content: "\f146";
|
|
}
|
|
.fa-minus-square-o:before {
|
|
content: "\f147";
|
|
}
|
|
.fa-level-up:before {
|
|
content: "\f148";
|
|
}
|
|
.fa-level-down:before {
|
|
content: "\f149";
|
|
}
|
|
.fa-check-square:before {
|
|
content: "\f14a";
|
|
}
|
|
.fa-pencil-square:before {
|
|
content: "\f14b";
|
|
}
|
|
.fa-external-link-square:before {
|
|
content: "\f14c";
|
|
}
|
|
.fa-share-square:before {
|
|
content: "\f14d";
|
|
}
|
|
.fa-compass:before {
|
|
content: "\f14e";
|
|
}
|
|
.fa-toggle-down:before,
|
|
.fa-caret-square-o-down:before {
|
|
content: "\f150";
|
|
}
|
|
.fa-toggle-up:before,
|
|
.fa-caret-square-o-up:before {
|
|
content: "\f151";
|
|
}
|
|
.fa-toggle-right:before,
|
|
.fa-caret-square-o-right:before {
|
|
content: "\f152";
|
|
}
|
|
.fa-euro:before,
|
|
.fa-eur:before {
|
|
content: "\f153";
|
|
}
|
|
.fa-gbp:before {
|
|
content: "\f154";
|
|
}
|
|
.fa-dollar:before,
|
|
.fa-usd:before {
|
|
content: "\f155";
|
|
}
|
|
.fa-rupee:before,
|
|
.fa-inr:before {
|
|
content: "\f156";
|
|
}
|
|
.fa-cny:before,
|
|
.fa-rmb:before,
|
|
.fa-yen:before,
|
|
.fa-jpy:before {
|
|
content: "\f157";
|
|
}
|
|
.fa-ruble:before,
|
|
.fa-rouble:before,
|
|
.fa-rub:before {
|
|
content: "\f158";
|
|
}
|
|
.fa-won:before,
|
|
.fa-krw:before {
|
|
content: "\f159";
|
|
}
|
|
.fa-bitcoin:before,
|
|
.fa-btc:before {
|
|
content: "\f15a";
|
|
}
|
|
.fa-file:before {
|
|
content: "\f15b";
|
|
}
|
|
.fa-file-text:before {
|
|
content: "\f15c";
|
|
}
|
|
.fa-sort-alpha-asc:before {
|
|
content: "\f15d";
|
|
}
|
|
.fa-sort-alpha-desc:before {
|
|
content: "\f15e";
|
|
}
|
|
.fa-sort-amount-asc:before {
|
|
content: "\f160";
|
|
}
|
|
.fa-sort-amount-desc:before {
|
|
content: "\f161";
|
|
}
|
|
.fa-sort-numeric-asc:before {
|
|
content: "\f162";
|
|
}
|
|
.fa-sort-numeric-desc:before {
|
|
content: "\f163";
|
|
}
|
|
.fa-thumbs-up:before {
|
|
content: "\f164";
|
|
}
|
|
.fa-thumbs-down:before {
|
|
content: "\f165";
|
|
}
|
|
.fa-youtube-square:before {
|
|
content: "\f166";
|
|
}
|
|
.fa-youtube:before {
|
|
content: "\f167";
|
|
}
|
|
.fa-xing:before {
|
|
content: "\f168";
|
|
}
|
|
.fa-xing-square:before {
|
|
content: "\f169";
|
|
}
|
|
.fa-youtube-play:before {
|
|
content: "\f16a";
|
|
}
|
|
.fa-dropbox:before {
|
|
content: "\f16b";
|
|
}
|
|
.fa-stack-overflow:before {
|
|
content: "\f16c";
|
|
}
|
|
.fa-instagram:before {
|
|
content: "\f16d";
|
|
}
|
|
.fa-flickr:before {
|
|
content: "\f16e";
|
|
}
|
|
.fa-adn:before {
|
|
content: "\f170";
|
|
}
|
|
.fa-bitbucket:before {
|
|
content: "\f171";
|
|
}
|
|
.fa-bitbucket-square:before {
|
|
content: "\f172";
|
|
}
|
|
.fa-tumblr:before {
|
|
content: "\f173";
|
|
}
|
|
.fa-tumblr-square:before {
|
|
content: "\f174";
|
|
}
|
|
.fa-long-arrow-down:before {
|
|
content: "\f175";
|
|
}
|
|
.fa-long-arrow-up:before {
|
|
content: "\f176";
|
|
}
|
|
.fa-long-arrow-left:before {
|
|
content: "\f177";
|
|
}
|
|
.fa-long-arrow-right:before {
|
|
content: "\f178";
|
|
}
|
|
.fa-apple:before {
|
|
content: "\f179";
|
|
}
|
|
.fa-windows:before {
|
|
content: "\f17a";
|
|
}
|
|
.fa-android:before {
|
|
content: "\f17b";
|
|
}
|
|
.fa-linux:before {
|
|
content: "\f17c";
|
|
}
|
|
.fa-dribbble:before {
|
|
content: "\f17d";
|
|
}
|
|
.fa-skype:before {
|
|
content: "\f17e";
|
|
}
|
|
.fa-foursquare:before {
|
|
content: "\f180";
|
|
}
|
|
.fa-trello:before {
|
|
content: "\f181";
|
|
}
|
|
.fa-female:before {
|
|
content: "\f182";
|
|
}
|
|
.fa-male:before {
|
|
content: "\f183";
|
|
}
|
|
.fa-gittip:before,
|
|
.fa-gratipay:before {
|
|
content: "\f184";
|
|
}
|
|
.fa-sun-o:before {
|
|
content: "\f185";
|
|
}
|
|
.fa-moon-o:before {
|
|
content: "\f186";
|
|
}
|
|
.fa-archive:before {
|
|
content: "\f187";
|
|
}
|
|
.fa-bug:before {
|
|
content: "\f188";
|
|
}
|
|
.fa-vk:before {
|
|
content: "\f189";
|
|
}
|
|
.fa-weibo:before {
|
|
content: "\f18a";
|
|
}
|
|
.fa-renren:before {
|
|
content: "\f18b";
|
|
}
|
|
.fa-pagelines:before {
|
|
content: "\f18c";
|
|
}
|
|
.fa-stack-exchange:before {
|
|
content: "\f18d";
|
|
}
|
|
.fa-arrow-circle-o-right:before {
|
|
content: "\f18e";
|
|
}
|
|
.fa-arrow-circle-o-left:before {
|
|
content: "\f190";
|
|
}
|
|
.fa-toggle-left:before,
|
|
.fa-caret-square-o-left:before {
|
|
content: "\f191";
|
|
}
|
|
.fa-dot-circle-o:before {
|
|
content: "\f192";
|
|
}
|
|
.fa-wheelchair:before {
|
|
content: "\f193";
|
|
}
|
|
.fa-vimeo-square:before {
|
|
content: "\f194";
|
|
}
|
|
.fa-turkish-lira:before,
|
|
.fa-try:before {
|
|
content: "\f195";
|
|
}
|
|
.fa-plus-square-o:before {
|
|
content: "\f196";
|
|
}
|
|
.fa-space-shuttle:before {
|
|
content: "\f197";
|
|
}
|
|
.fa-slack:before {
|
|
content: "\f198";
|
|
}
|
|
.fa-envelope-square:before {
|
|
content: "\f199";
|
|
}
|
|
.fa-wordpress:before {
|
|
content: "\f19a";
|
|
}
|
|
.fa-openid:before {
|
|
content: "\f19b";
|
|
}
|
|
.fa-institution:before,
|
|
.fa-bank:before,
|
|
.fa-university:before {
|
|
content: "\f19c";
|
|
}
|
|
.fa-mortar-board:before,
|
|
.fa-graduation-cap:before {
|
|
content: "\f19d";
|
|
}
|
|
.fa-yahoo:before {
|
|
content: "\f19e";
|
|
}
|
|
.fa-google:before {
|
|
content: "\f1a0";
|
|
}
|
|
.fa-reddit:before {
|
|
content: "\f1a1";
|
|
}
|
|
.fa-reddit-square:before {
|
|
content: "\f1a2";
|
|
}
|
|
.fa-stumbleupon-circle:before {
|
|
content: "\f1a3";
|
|
}
|
|
.fa-stumbleupon:before {
|
|
content: "\f1a4";
|
|
}
|
|
.fa-delicious:before {
|
|
content: "\f1a5";
|
|
}
|
|
.fa-digg:before {
|
|
content: "\f1a6";
|
|
}
|
|
.fa-pied-piper:before {
|
|
content: "\f1a7";
|
|
}
|
|
.fa-pied-piper-alt:before {
|
|
content: "\f1a8";
|
|
}
|
|
.fa-drupal:before {
|
|
content: "\f1a9";
|
|
}
|
|
.fa-joomla:before {
|
|
content: "\f1aa";
|
|
}
|
|
.fa-language:before {
|
|
content: "\f1ab";
|
|
}
|
|
.fa-fax:before {
|
|
content: "\f1ac";
|
|
}
|
|
.fa-building:before {
|
|
content: "\f1ad";
|
|
}
|
|
.fa-child:before {
|
|
content: "\f1ae";
|
|
}
|
|
.fa-paw:before {
|
|
content: "\f1b0";
|
|
}
|
|
.fa-spoon:before {
|
|
content: "\f1b1";
|
|
}
|
|
.fa-cube:before {
|
|
content: "\f1b2";
|
|
}
|
|
.fa-cubes:before {
|
|
content: "\f1b3";
|
|
}
|
|
.fa-behance:before {
|
|
content: "\f1b4";
|
|
}
|
|
.fa-behance-square:before {
|
|
content: "\f1b5";
|
|
}
|
|
.fa-steam:before {
|
|
content: "\f1b6";
|
|
}
|
|
.fa-steam-square:before {
|
|
content: "\f1b7";
|
|
}
|
|
.fa-recycle:before {
|
|
content: "\f1b8";
|
|
}
|
|
.fa-automobile:before,
|
|
.fa-car:before {
|
|
content: "\f1b9";
|
|
}
|
|
.fa-cab:before,
|
|
.fa-taxi:before {
|
|
content: "\f1ba";
|
|
}
|
|
.fa-tree:before {
|
|
content: "\f1bb";
|
|
}
|
|
.fa-spotify:before {
|
|
content: "\f1bc";
|
|
}
|
|
.fa-deviantart:before {
|
|
content: "\f1bd";
|
|
}
|
|
.fa-soundcloud:before {
|
|
content: "\f1be";
|
|
}
|
|
.fa-database:before {
|
|
content: "\f1c0";
|
|
}
|
|
.fa-file-pdf-o:before {
|
|
content: "\f1c1";
|
|
}
|
|
.fa-file-word-o:before {
|
|
content: "\f1c2";
|
|
}
|
|
.fa-file-excel-o:before {
|
|
content: "\f1c3";
|
|
}
|
|
.fa-file-powerpoint-o:before {
|
|
content: "\f1c4";
|
|
}
|
|
.fa-file-photo-o:before,
|
|
.fa-file-picture-o:before,
|
|
.fa-file-image-o:before {
|
|
content: "\f1c5";
|
|
}
|
|
.fa-file-zip-o:before,
|
|
.fa-file-archive-o:before {
|
|
content: "\f1c6";
|
|
}
|
|
.fa-file-sound-o:before,
|
|
.fa-file-audio-o:before {
|
|
content: "\f1c7";
|
|
}
|
|
.fa-file-movie-o:before,
|
|
.fa-file-video-o:before {
|
|
content: "\f1c8";
|
|
}
|
|
.fa-file-code-o:before {
|
|
content: "\f1c9";
|
|
}
|
|
.fa-vine:before {
|
|
content: "\f1ca";
|
|
}
|
|
.fa-codepen:before {
|
|
content: "\f1cb";
|
|
}
|
|
.fa-jsfiddle:before {
|
|
content: "\f1cc";
|
|
}
|
|
.fa-life-bouy:before,
|
|
.fa-life-buoy:before,
|
|
.fa-life-saver:before,
|
|
.fa-support:before,
|
|
.fa-life-ring:before {
|
|
content: "\f1cd";
|
|
}
|
|
.fa-circle-o-notch:before {
|
|
content: "\f1ce";
|
|
}
|
|
.fa-ra:before,
|
|
.fa-rebel:before {
|
|
content: "\f1d0";
|
|
}
|
|
.fa-ge:before,
|
|
.fa-empire:before {
|
|
content: "\f1d1";
|
|
}
|
|
.fa-git-square:before {
|
|
content: "\f1d2";
|
|
}
|
|
.fa-git:before {
|
|
content: "\f1d3";
|
|
}
|
|
.fa-y-combinator-square:before,
|
|
.fa-yc-square:before,
|
|
.fa-hacker-news:before {
|
|
content: "\f1d4";
|
|
}
|
|
.fa-tencent-weibo:before {
|
|
content: "\f1d5";
|
|
}
|
|
.fa-qq:before {
|
|
content: "\f1d6";
|
|
}
|
|
.fa-wechat:before,
|
|
.fa-weixin:before {
|
|
content: "\f1d7";
|
|
}
|
|
.fa-send:before,
|
|
.fa-paper-plane:before {
|
|
content: "\f1d8";
|
|
}
|
|
.fa-send-o:before,
|
|
.fa-paper-plane-o:before {
|
|
content: "\f1d9";
|
|
}
|
|
.fa-history:before {
|
|
content: "\f1da";
|
|
}
|
|
.fa-circle-thin:before {
|
|
content: "\f1db";
|
|
}
|
|
.fa-header:before {
|
|
content: "\f1dc";
|
|
}
|
|
.fa-paragraph:before {
|
|
content: "\f1dd";
|
|
}
|
|
.fa-sliders:before {
|
|
content: "\f1de";
|
|
}
|
|
.fa-share-alt:before {
|
|
content: "\f1e0";
|
|
}
|
|
.fa-share-alt-square:before {
|
|
content: "\f1e1";
|
|
}
|
|
.fa-bomb:before {
|
|
content: "\f1e2";
|
|
}
|
|
.fa-soccer-ball-o:before,
|
|
.fa-futbol-o:before {
|
|
content: "\f1e3";
|
|
}
|
|
.fa-tty:before {
|
|
content: "\f1e4";
|
|
}
|
|
.fa-binoculars:before {
|
|
content: "\f1e5";
|
|
}
|
|
.fa-plug:before {
|
|
content: "\f1e6";
|
|
}
|
|
.fa-slideshare:before {
|
|
content: "\f1e7";
|
|
}
|
|
.fa-twitch:before {
|
|
content: "\f1e8";
|
|
}
|
|
.fa-yelp:before {
|
|
content: "\f1e9";
|
|
}
|
|
.fa-newspaper-o:before {
|
|
content: "\f1ea";
|
|
}
|
|
.fa-wifi:before {
|
|
content: "\f1eb";
|
|
}
|
|
.fa-calculator:before {
|
|
content: "\f1ec";
|
|
}
|
|
.fa-paypal:before {
|
|
content: "\f1ed";
|
|
}
|
|
.fa-google-wallet:before {
|
|
content: "\f1ee";
|
|
}
|
|
.fa-cc-visa:before {
|
|
content: "\f1f0";
|
|
}
|
|
.fa-cc-mastercard:before {
|
|
content: "\f1f1";
|
|
}
|
|
.fa-cc-discover:before {
|
|
content: "\f1f2";
|
|
}
|
|
.fa-cc-amex:before {
|
|
content: "\f1f3";
|
|
}
|
|
.fa-cc-paypal:before {
|
|
content: "\f1f4";
|
|
}
|
|
.fa-cc-stripe:before {
|
|
content: "\f1f5";
|
|
}
|
|
.fa-bell-slash:before {
|
|
content: "\f1f6";
|
|
}
|
|
.fa-bell-slash-o:before {
|
|
content: "\f1f7";
|
|
}
|
|
.fa-trash:before {
|
|
content: "\f1f8";
|
|
}
|
|
.fa-copyright:before {
|
|
content: "\f1f9";
|
|
}
|
|
.fa-at:before {
|
|
content: "\f1fa";
|
|
}
|
|
.fa-eyedropper:before {
|
|
content: "\f1fb";
|
|
}
|
|
.fa-paint-brush:before {
|
|
content: "\f1fc";
|
|
}
|
|
.fa-birthday-cake:before {
|
|
content: "\f1fd";
|
|
}
|
|
.fa-area-chart:before {
|
|
content: "\f1fe";
|
|
}
|
|
.fa-pie-chart:before {
|
|
content: "\f200";
|
|
}
|
|
.fa-line-chart:before {
|
|
content: "\f201";
|
|
}
|
|
.fa-lastfm:before {
|
|
content: "\f202";
|
|
}
|
|
.fa-lastfm-square:before {
|
|
content: "\f203";
|
|
}
|
|
.fa-toggle-off:before {
|
|
content: "\f204";
|
|
}
|
|
.fa-toggle-on:before {
|
|
content: "\f205";
|
|
}
|
|
.fa-bicycle:before {
|
|
content: "\f206";
|
|
}
|
|
.fa-bus:before {
|
|
content: "\f207";
|
|
}
|
|
.fa-ioxhost:before {
|
|
content: "\f208";
|
|
}
|
|
.fa-angellist:before {
|
|
content: "\f209";
|
|
}
|
|
.fa-cc:before {
|
|
content: "\f20a";
|
|
}
|
|
.fa-shekel:before,
|
|
.fa-sheqel:before,
|
|
.fa-ils:before {
|
|
content: "\f20b";
|
|
}
|
|
.fa-meanpath:before {
|
|
content: "\f20c";
|
|
}
|
|
.fa-buysellads:before {
|
|
content: "\f20d";
|
|
}
|
|
.fa-connectdevelop:before {
|
|
content: "\f20e";
|
|
}
|
|
.fa-dashcube:before {
|
|
content: "\f210";
|
|
}
|
|
.fa-forumbee:before {
|
|
content: "\f211";
|
|
}
|
|
.fa-leanpub:before {
|
|
content: "\f212";
|
|
}
|
|
.fa-sellsy:before {
|
|
content: "\f213";
|
|
}
|
|
.fa-shirtsinbulk:before {
|
|
content: "\f214";
|
|
}
|
|
.fa-simplybuilt:before {
|
|
content: "\f215";
|
|
}
|
|
.fa-skyatlas:before {
|
|
content: "\f216";
|
|
}
|
|
.fa-cart-plus:before {
|
|
content: "\f217";
|
|
}
|
|
.fa-cart-arrow-down:before {
|
|
content: "\f218";
|
|
}
|
|
.fa-diamond:before {
|
|
content: "\f219";
|
|
}
|
|
.fa-ship:before {
|
|
content: "\f21a";
|
|
}
|
|
.fa-user-secret:before {
|
|
content: "\f21b";
|
|
}
|
|
.fa-motorcycle:before {
|
|
content: "\f21c";
|
|
}
|
|
.fa-street-view:before {
|
|
content: "\f21d";
|
|
}
|
|
.fa-heartbeat:before {
|
|
content: "\f21e";
|
|
}
|
|
.fa-venus:before {
|
|
content: "\f221";
|
|
}
|
|
.fa-mars:before {
|
|
content: "\f222";
|
|
}
|
|
.fa-mercury:before {
|
|
content: "\f223";
|
|
}
|
|
.fa-intersex:before,
|
|
.fa-transgender:before {
|
|
content: "\f224";
|
|
}
|
|
.fa-transgender-alt:before {
|
|
content: "\f225";
|
|
}
|
|
.fa-venus-double:before {
|
|
content: "\f226";
|
|
}
|
|
.fa-mars-double:before {
|
|
content: "\f227";
|
|
}
|
|
.fa-venus-mars:before {
|
|
content: "\f228";
|
|
}
|
|
.fa-mars-stroke:before {
|
|
content: "\f229";
|
|
}
|
|
.fa-mars-stroke-v:before {
|
|
content: "\f22a";
|
|
}
|
|
.fa-mars-stroke-h:before {
|
|
content: "\f22b";
|
|
}
|
|
.fa-neuter:before {
|
|
content: "\f22c";
|
|
}
|
|
.fa-genderless:before {
|
|
content: "\f22d";
|
|
}
|
|
.fa-facebook-official:before {
|
|
content: "\f230";
|
|
}
|
|
.fa-pinterest-p:before {
|
|
content: "\f231";
|
|
}
|
|
.fa-whatsapp:before {
|
|
content: "\f232";
|
|
}
|
|
.fa-server:before {
|
|
content: "\f233";
|
|
}
|
|
.fa-user-plus:before {
|
|
content: "\f234";
|
|
}
|
|
.fa-user-times:before {
|
|
content: "\f235";
|
|
}
|
|
.fa-hotel:before,
|
|
.fa-bed:before {
|
|
content: "\f236";
|
|
}
|
|
.fa-viacoin:before {
|
|
content: "\f237";
|
|
}
|
|
.fa-train:before {
|
|
content: "\f238";
|
|
}
|
|
.fa-subway:before {
|
|
content: "\f239";
|
|
}
|
|
.fa-medium:before {
|
|
content: "\f23a";
|
|
}
|
|
.fa-yc:before,
|
|
.fa-y-combinator:before {
|
|
content: "\f23b";
|
|
}
|
|
.fa-optin-monster:before {
|
|
content: "\f23c";
|
|
}
|
|
.fa-opencart:before {
|
|
content: "\f23d";
|
|
}
|
|
.fa-expeditedssl:before {
|
|
content: "\f23e";
|
|
}
|
|
.fa-battery-4:before,
|
|
.fa-battery-full:before {
|
|
content: "\f240";
|
|
}
|
|
.fa-battery-3:before,
|
|
.fa-battery-three-quarters:before {
|
|
content: "\f241";
|
|
}
|
|
.fa-battery-2:before,
|
|
.fa-battery-half:before {
|
|
content: "\f242";
|
|
}
|
|
.fa-battery-1:before,
|
|
.fa-battery-quarter:before {
|
|
content: "\f243";
|
|
}
|
|
.fa-battery-0:before,
|
|
.fa-battery-empty:before {
|
|
content: "\f244";
|
|
}
|
|
.fa-mouse-pointer:before {
|
|
content: "\f245";
|
|
}
|
|
.fa-i-cursor:before {
|
|
content: "\f246";
|
|
}
|
|
.fa-object-group:before {
|
|
content: "\f247";
|
|
}
|
|
.fa-object-ungroup:before {
|
|
content: "\f248";
|
|
}
|
|
.fa-sticky-note:before {
|
|
content: "\f249";
|
|
}
|
|
.fa-sticky-note-o:before {
|
|
content: "\f24a";
|
|
}
|
|
.fa-cc-jcb:before {
|
|
content: "\f24b";
|
|
}
|
|
.fa-cc-diners-club:before {
|
|
content: "\f24c";
|
|
}
|
|
.fa-clone:before {
|
|
content: "\f24d";
|
|
}
|
|
.fa-balance-scale:before {
|
|
content: "\f24e";
|
|
}
|
|
.fa-hourglass-o:before {
|
|
content: "\f250";
|
|
}
|
|
.fa-hourglass-1:before,
|
|
.fa-hourglass-start:before {
|
|
content: "\f251";
|
|
}
|
|
.fa-hourglass-2:before,
|
|
.fa-hourglass-half:before {
|
|
content: "\f252";
|
|
}
|
|
.fa-hourglass-3:before,
|
|
.fa-hourglass-end:before {
|
|
content: "\f253";
|
|
}
|
|
.fa-hourglass:before {
|
|
content: "\f254";
|
|
}
|
|
.fa-hand-grab-o:before,
|
|
.fa-hand-rock-o:before {
|
|
content: "\f255";
|
|
}
|
|
.fa-hand-stop-o:before,
|
|
.fa-hand-paper-o:before {
|
|
content: "\f256";
|
|
}
|
|
.fa-hand-scissors-o:before {
|
|
content: "\f257";
|
|
}
|
|
.fa-hand-lizard-o:before {
|
|
content: "\f258";
|
|
}
|
|
.fa-hand-spock-o:before {
|
|
content: "\f259";
|
|
}
|
|
.fa-hand-pointer-o:before {
|
|
content: "\f25a";
|
|
}
|
|
.fa-hand-peace-o:before {
|
|
content: "\f25b";
|
|
}
|
|
.fa-trademark:before {
|
|
content: "\f25c";
|
|
}
|
|
.fa-registered:before {
|
|
content: "\f25d";
|
|
}
|
|
.fa-creative-commons:before {
|
|
content: "\f25e";
|
|
}
|
|
.fa-gg:before {
|
|
content: "\f260";
|
|
}
|
|
.fa-gg-circle:before {
|
|
content: "\f261";
|
|
}
|
|
.fa-tripadvisor:before {
|
|
content: "\f262";
|
|
}
|
|
.fa-odnoklassniki:before {
|
|
content: "\f263";
|
|
}
|
|
.fa-odnoklassniki-square:before {
|
|
content: "\f264";
|
|
}
|
|
.fa-get-pocket:before {
|
|
content: "\f265";
|
|
}
|
|
.fa-wikipedia-w:before {
|
|
content: "\f266";
|
|
}
|
|
.fa-safari:before {
|
|
content: "\f267";
|
|
}
|
|
.fa-chrome:before {
|
|
content: "\f268";
|
|
}
|
|
.fa-firefox:before {
|
|
content: "\f269";
|
|
}
|
|
.fa-opera:before {
|
|
content: "\f26a";
|
|
}
|
|
.fa-internet-explorer:before {
|
|
content: "\f26b";
|
|
}
|
|
.fa-tv:before,
|
|
.fa-television:before {
|
|
content: "\f26c";
|
|
}
|
|
.fa-contao:before {
|
|
content: "\f26d";
|
|
}
|
|
.fa-500px:before {
|
|
content: "\f26e";
|
|
}
|
|
.fa-amazon:before {
|
|
content: "\f270";
|
|
}
|
|
.fa-calendar-plus-o:before {
|
|
content: "\f271";
|
|
}
|
|
.fa-calendar-minus-o:before {
|
|
content: "\f272";
|
|
}
|
|
.fa-calendar-times-o:before {
|
|
content: "\f273";
|
|
}
|
|
.fa-calendar-check-o:before {
|
|
content: "\f274";
|
|
}
|
|
.fa-industry:before {
|
|
content: "\f275";
|
|
}
|
|
.fa-map-pin:before {
|
|
content: "\f276";
|
|
}
|
|
.fa-map-signs:before {
|
|
content: "\f277";
|
|
}
|
|
.fa-map-o:before {
|
|
content: "\f278";
|
|
}
|
|
.fa-map:before {
|
|
content: "\f279";
|
|
}
|
|
.fa-commenting:before {
|
|
content: "\f27a";
|
|
}
|
|
.fa-commenting-o:before {
|
|
content: "\f27b";
|
|
}
|
|
.fa-houzz:before {
|
|
content: "\f27c";
|
|
}
|
|
.fa-vimeo:before {
|
|
content: "\f27d";
|
|
}
|
|
.fa-black-tie:before {
|
|
content: "\f27e";
|
|
}
|
|
.fa-fonticons:before {
|
|
content: "\f280";
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="forms.css"><![CDATA[.ipsApp select {
|
|
border: 1px solid #b3b3b3;
|
|
border-radius: 3px;
|
|
padding: 4px;
|
|
background: rgb(255,255,255);
|
|
font-size: 13px !important;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsApp select::-ms-expand {
|
|
display: none;
|
|
}
|
|
|
|
.ipsApp select:not( [multiple] ) {
|
|
-webkit-appearance: button;
|
|
height: 33px;
|
|
line-height: 1;
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(242,242,242,1)));
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), -o-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), -ms-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-position: right center;
|
|
background-size: 18px 9px, 100% 100%;
|
|
background-repeat: no-repeat, repeat;
|
|
cursor: pointer;
|
|
padding: 7px 30px 7px 7px;
|
|
/* Workaround for firefox */
|
|
-moz-appearance: none;
|
|
text-indent: 0.01px;
|
|
text-overflow: '';
|
|
}
|
|
html[dir="rtl"] .ipsApp select:not( [multiple] ) {
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(242,242,242,1)));
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), -o-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), -ms-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background-position: left center;
|
|
padding: 7px 7px 7px 30px;
|
|
}
|
|
|
|
.ipsApp select[disabled] {
|
|
opacity: 0.6;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsApp select:not( [multiple] ):after {
|
|
top: 0;
|
|
width: 30px;
|
|
height: 30px;
|
|
content: '';
|
|
display: block;
|
|
}
|
|
html[dir="ltr"] .ipsApp select:not( [multiple] ):after {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsApp select:not( [multiple] ):after {
|
|
left: 0;
|
|
}
|
|
|
|
/* Override the default webkit appearance of time/date fields */
|
|
input[type="datetime"], input[type="datetime-local"], input[type="date"],
|
|
input[type="month"], input[type="time"], input[type="week"] {
|
|
-webkit-appearance: none;
|
|
min-height: 32px;
|
|
}
|
|
|
|
ul.ipsForm, ol.ipsForm {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsForm[data-role="advancedSearch"] {
|
|
margin-top: 15px;
|
|
padding-bottom: 15px;
|
|
}
|
|
|
|
.ipsFieldRow:not( :last-child ) {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.ipsFieldRow_noLabel > label,
|
|
.ipsFieldRow_noLabel > .ipsFieldRow_content > label {
|
|
display: none;
|
|
}
|
|
|
|
.ipsFieldRow_searchResult {
|
|
background-color: #f2e6d4;
|
|
border: 1px solid #d1aa6e;
|
|
}
|
|
|
|
.ipsFieldRow.ipsFieldRow_searchResult .ipsFieldRow_desc {
|
|
color: #ad884e;
|
|
}
|
|
|
|
/* CHECKBOX FIELDS */
|
|
/* For single checkboxes, and inline checkboxes */
|
|
.ipsFieldRow_checkbox {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ipsFieldRow_checkbox + .ipsFieldRow:not( .ipsFieldRow_checkbox ) {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.ipsFieldRow_checkbox input[type="checkbox"],
|
|
.ipsFieldRow_checkbox input[type="radio"],
|
|
.ipsFieldRow_checkbox .ipsCustomInput {
|
|
float: left;
|
|
margin-top: 2px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow_checkbox input[type="checkbox"],
|
|
html[dir="rtl"] .ipsFieldRow_checkbox input[type="radio"],
|
|
html[dir="rtl"] .ipsFieldRow_checkbox .ipsCustomInput {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFieldRow_checkbox .ipsFieldRow_content {
|
|
margin-left: 24px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow_checkbox .ipsFieldRow_content {
|
|
margin-right: 24px;
|
|
}
|
|
|
|
.ipsFieldRow_checkbox label {
|
|
display: block;
|
|
}
|
|
|
|
.ipsFieldRow_inlineCheckbox {
|
|
margin-top: 6px;
|
|
display: inline-block;
|
|
position: relative;
|
|
}
|
|
html[dir="ltr"] .ipsFieldRow_inlineCheckbox {
|
|
margin-right: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow_inlineCheckbox {
|
|
margin-left: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFieldRow_inlineCheckbox .ipsCustomInput,
|
|
html[dir="ltr"] .ipsToggle {
|
|
margin-right: 3px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow_inlineCheckbox .ipsCustomInput,
|
|
html[dir="rtl"] .ipsToggle {
|
|
margin-left: 3px;
|
|
}
|
|
|
|
/* FIELD LISTS (for stacks of radios/checkboxes) */
|
|
.ipsField_fieldList {
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 7px 0 0 0;
|
|
}
|
|
|
|
.ipsField_fieldList > li {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.ipsField_fieldList > li:last-child {
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
.ipsField_fieldList input[type="radio"], .ipsField_fieldList input[type="checkbox"],
|
|
.ipsField_fieldList .ipsCustomInput {
|
|
float: left;
|
|
margin-top: 2px;
|
|
}
|
|
html[dir="rtl"] .ipsField_fieldList input[type="radio"],
|
|
html[dir="rtl"] .ipsField_fieldList input[type="checkbox"],
|
|
html[dir="rtl"] .ipsField_fieldList .ipsCustomInput {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_fieldList_content {
|
|
margin-left: 24px;
|
|
}
|
|
html[dir="rtl"] .ipsField_fieldList_content {
|
|
margin-right: 24px;
|
|
}
|
|
|
|
/* FULL WIDTH FIELDS */
|
|
.ipsApp .ipsFieldRow_fullWidth input[type="text"],
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow input[type="text"],
|
|
.ipsApp .ipsFieldRow_fullWidth input[type="email"],
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow input[type="email"],
|
|
.ipsApp .ipsFieldRow_fullWidth input[type="password"],
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow input[type="password"],
|
|
.ipsApp .ipsFieldRow_fullWidth input[type="submit"],
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow input[type="submit"],
|
|
.ipsApp .ipsFieldRow_fullWidth select,
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow select,
|
|
.ipsApp .ipsFieldRow_fullWidth button,
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow button,
|
|
.ipsApp .ipsFieldRow_fullWidth textarea,
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow textarea,
|
|
.ipsApp .ipsFieldRow_fullWidth .ipsField_autocomplete,
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow .ipsField_autocomplete,
|
|
.ipsApp .ipsFieldRow_fullWidth .ipsSelectTree,
|
|
.ipsApp .ipsForm_fullWidth .ipsFieldRow .ipsSelectTree,
|
|
.ipsApp input.ipsField_fullWidth, .ipsApp textarea.ipsField_fullWidth,
|
|
.ipsApp .ipsField_autocomplete.ipsField_fullWidth, .ipsApp select.ipsField_fullWidth,
|
|
.ipsApp .ipsSelectTree.ipsField_fullWidth {
|
|
width: 100%;
|
|
max-width: 100% !important;
|
|
}
|
|
|
|
/* FORM TYPOGRAPHY */
|
|
.ipsFieldRow_desc {
|
|
font-size: 12px;
|
|
color: #777777;
|
|
margin-top: 3px;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_label,
|
|
.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_title {
|
|
font-size: 15px;
|
|
font-weight: bold;
|
|
margin-bottom: 5px;
|
|
display: inline-block;
|
|
padding-top: 5px;
|
|
}
|
|
|
|
.ipsFieldRow.ipsFieldRow_yesNo .ipsFieldRow_label,
|
|
.ipsFieldRow.ipsFieldRow_yesNo .ipsFieldRow_title {
|
|
padding-top: 0;
|
|
}
|
|
|
|
.ipsApp .ipsField_primary,
|
|
.ipsApp .ipsField_primary.ipsField_autocomplete input,
|
|
.ipsApp .ipsFieldRow_primary input {
|
|
font-size: 18px;
|
|
}
|
|
|
|
.ipsFieldRow_required {
|
|
font-size: 10px;
|
|
text-transform: uppercase;
|
|
color: #c02222;
|
|
font-weight: normal;
|
|
}
|
|
html[dir="ltr"] .ipsFieldRow_required {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow_required {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
/* HORIZONTAL FORMS */
|
|
/* i.e. titles beside fields */
|
|
/*.ipsForm_horizontal {
|
|
padding-bottom: 20px;
|
|
}*/
|
|
|
|
.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label,
|
|
.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
width: 185px;
|
|
line-height: 1.3;
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
}
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label,
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
float: left;
|
|
padding-right: 15px;
|
|
text-align: right;
|
|
}
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label,
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
float: right;
|
|
padding-left: 15px;
|
|
text-align: left;
|
|
}
|
|
|
|
.ipsForm.ipsForm_horizontal .ipsFieldRow.ipsFieldRow_shortTitle > .ipsFieldRow_title {
|
|
width: 85px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-left: 185px;
|
|
}
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow.ipsFieldRow_shortTitle:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-left: 95px;
|
|
}
|
|
html[dir="ltr"] .ipsForm_horizontal .ipsFieldRow_checkbox {
|
|
margin-left: 185px;
|
|
}
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-right: 185px;
|
|
}
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow.ipsFieldRow_shortTitle:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
margin-right: 95px;
|
|
}
|
|
html[dir="rtl"] .ipsForm_horizontal .ipsFieldRow_checkbox {
|
|
margin-right: 185px;
|
|
}
|
|
|
|
.ipsForm_horizontal .ipsFieldRow_required {
|
|
font-size: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsForm_horizontal .ipsFieldRow_required:before {
|
|
content: '*';
|
|
display: inline;
|
|
color: #c02222;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.ipsForm_horizontal .ipsFieldRow_textValue .ipsFieldRow_content {
|
|
padding-top: 7px;
|
|
}
|
|
|
|
.ipsForm_horizontal .ipsFieldRow_content .ipsRating {
|
|
margin-top: 3px;
|
|
}
|
|
|
|
/* VERTICAL FORMS */
|
|
/* i.e. titles above fields; overwrites horizontal rules */
|
|
.ipsForm_vertical .ipsFieldRow > .ipsFieldRow_label,
|
|
.ipsForm_vertical .ipsFieldRow > .ipsFieldRow_title {
|
|
float: none !important;
|
|
width: 100%;
|
|
text-align: left;
|
|
}
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_label,
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_title {
|
|
text-align: right;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ),
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_label,
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_content,
|
|
html[dir="rtl"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_title {
|
|
margin-right: 0px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ),
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_label,
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_content,
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_title {
|
|
margin-left: 0px !important;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_label,
|
|
html[dir="ltr"] .ipsForm_vertical .ipsFieldRow:not( .ipsFieldRow_checkbox ) > .ipsFieldRow_title {
|
|
text-align: left;
|
|
}
|
|
|
|
|
|
/* FIELD GROUPS */
|
|
.ipsForm_group {
|
|
margin-bottom: 15px;
|
|
padding-top: 15px;
|
|
border: 0;
|
|
border-bottom: 1px solid #f0f0f0;
|
|
}
|
|
|
|
.ipsForm_group > .ipsForm_groupTitle {
|
|
float: left;
|
|
font-size: 16px;
|
|
font-weight: 500;
|
|
margin: 0;
|
|
}
|
|
html[dir="rtl"] .ipsForm_group > .ipsForm_groupTitle {
|
|
float: right;
|
|
}
|
|
|
|
.ipsForm_group > .ipsForm_groupContent {
|
|
list-style: none;
|
|
}
|
|
html[dir="ltr"] .ipsForm_group > .ipsForm_groupContent {
|
|
margin: 0 0 0 175px;
|
|
padding: 0 0 0 15px;
|
|
border-left: 1px solid #f6f6f6;
|
|
}
|
|
html[dir="rtl"] .ipsForm_group > .ipsForm_groupContent {
|
|
margin: 0 175px 0 0;
|
|
padding: 0 15px 0 0 ;
|
|
border-right: 1px solid #f6f6f6;
|
|
}
|
|
|
|
.ipsForm .ipsForm_group:last-child {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
/* ELEMENT STYLES */
|
|
.ipsApp label:not( .ipsField_unlimited ), .ipsApp input, .ipsApp button, .ipsApp select, .ipsApp textarea {
|
|
font-size: 14px;
|
|
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete {
|
|
position: relative;
|
|
outline: 0;
|
|
display: inline-block;
|
|
}
|
|
html[dir="ltr"] .ipsApp .ipsField_autocomplete {
|
|
padding-right: 35px;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsField_autocomplete {
|
|
padding-left: 35px;
|
|
}
|
|
.ipsApp .ipsField_autocomplete input[type="text"] {
|
|
border: 0;
|
|
border-radius: 0px;
|
|
padding: 0;
|
|
background: transparent;
|
|
width: 20px;
|
|
max-width: 100%;
|
|
box-shadow: none;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete input[type="text"]:focus {
|
|
outline: 0;
|
|
box-shadow: none;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete.ipsField_autocompleteDisabled {
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete.ipsField_autocompleteDisabled .cToken {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsApp .ipsField_autocomplete_loading {
|
|
position: absolute;
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsField_autocomplete_loading {
|
|
position: absolute;
|
|
left: 10px;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete [data-action='addToken'] {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsApp input[type="color"] {
|
|
min-width: 50px;
|
|
}
|
|
|
|
.ipsApp .ipsField_autocomplete, .ipsApp textarea, .ipsApp input[type="text"], .ipsApp input[type="password"],
|
|
.ipsApp input[type="datetime"], .ipsApp input[type="datetime-local"], .ipsApp input[type="date"],
|
|
.ipsApp input[type="month"], .ipsApp input[type="time"], .ipsApp input[type="week"],
|
|
.ipsApp input[type="number"], .ipsApp input[type="email"], .ipsApp input[type="url"],
|
|
.ipsApp input[type="search"], .ipsApp input[type="tel"] {
|
|
background-color: #ffffff;
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
border-color: #a6a6a6 #d9d9d9 #d9d9d9 #a6a6a6;
|
|
border-radius: 3px;
|
|
width: 100%;
|
|
max-width: 350px;
|
|
padding: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsField_autocomplete,
|
|
html[dir="rtl"] .ipsApp textarea,
|
|
html[dir="rtl"] .ipsApp input[type="text"],
|
|
html[dir="rtl"] .ipsApp input[type="password"],
|
|
html[dir="rtl"] .ipsApp input[type="datetime"],
|
|
html[dir="rtl"] .ipsApp input[type="datetime-local"],
|
|
html[dir="rtl"] .ipsApp input[type="date"],
|
|
html[dir="rtl"] .ipsApp input[type="month"],
|
|
html[dir="rtl"] .ipsApp input[type="time"],
|
|
html[dir="rtl"] .ipsApp input[type="week"],
|
|
html[dir="rtl"] .ipsApp input[type="number"],
|
|
html[dir="rtl"] .ipsApp input[type="email"],
|
|
html[dir="rtl"] .ipsApp input[type="url"],
|
|
html[dir="rtl"] .ipsApp input[type="search"],
|
|
html[dir="rtl"] .ipsApp input[type="tel"] {
|
|
border-color: #a6a6a6 #a6a6a6 #d9d9d9 #d9d9d9;
|
|
}
|
|
|
|
.CodeMirror {
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
border-color: #a6a6a6 #d9d9d9 #d9d9d9 #a6a6a6;
|
|
border-radius: 3px;
|
|
cursor: text;
|
|
}
|
|
html[dir="rtl"] .CodeMirror {
|
|
border-color: #a6a6a6 #a6a6a6 #d9d9d9 #d9d9d9;
|
|
}
|
|
|
|
.ipsApp textarea.ipsField_short, .ipsApp input[type="text"].ipsField_short, .ipsApp input[type="password"].ipsField_short,
|
|
.ipsApp input[type="datetime"].ipsField_short, .ipsApp input[type="datetime-local"].ipsField_short, .ipsApp input[type="date"].ipsField_short,
|
|
.ipsApp input[type="month"].ipsField_short, .ipsApp input[type="time"].ipsField_short, .ipsApp input[type="week"].ipsField_short,
|
|
.ipsApp input[type="number"].ipsField_short, .ipsApp input[type="email"].ipsField_short, .ipsApp input[type="url"].ipsField_short,
|
|
.ipsApp input[type="search"].ipsField_short, .ipsApp input[type="tel"].ipsField_short, .ipsApp input[type="color"].ipsField_short, .ipsApp select.ipsField_short {
|
|
width: 200px;
|
|
max-width: 200px;
|
|
}
|
|
|
|
.ipsApp textarea.ipsField_medium, .ipsApp input[type="text"].ipsField_medium, .ipsApp input[type="password"].ipsField_medium,
|
|
.ipsApp input[type="datetime"].ipsField_medium, .ipsApp input[type="datetime-local"].ipsField_medium, .ipsApp input[type="date"].ipsField_medium,
|
|
.ipsApp input[type="month"].ipsField_medium, .ipsApp input[type="time"].ipsField_medium, .ipsApp input[type="week"].ipsField_medium,
|
|
.ipsApp input[type="number"].ipsField_medium, .ipsApp input[type="email"].ipsField_medium, .ipsApp input[type="url"].ipsField_medium,
|
|
.ipsApp input[type="search"].ipsField_medium, .ipsApp input[type="tel"].ipsField_medium, .ipsApp input[type="color"].ipsField_medium, .ipsApp select.ipsField_medium {
|
|
width: 270px;
|
|
max-width: 270px;
|
|
}
|
|
|
|
.ipsApp textarea.ipsField_tiny, .ipsApp input[type="text"].ipsField_tiny, .ipsApp input[type="password"].ipsField_tiny,
|
|
.ipsApp input[type="datetime"].ipsField_tiny, .ipsApp input[type="datetime-local"].ipsField_tiny, .ipsApp input[type="date"].ipsField_tiny,
|
|
.ipsApp input[type="month"].ipsField_tiny, .ipsApp input[type="time"].ipsField_tiny, .ipsApp input[type="week"].ipsField_tiny,
|
|
.ipsApp input[type="number"].ipsField_tiny, .ipsApp input[type="email"].ipsField_tiny, .ipsApp input[type="url"].ipsField_tiny,
|
|
.ipsApp input[type="search"].ipsField_tiny, .ipsApp input[type="tel"].ipsField_tiny, .ipsApp input[type="color"].ipsField_tiny, .ipsApp select.ipsField_tiny {
|
|
width: 60px;
|
|
max-width: 60px;
|
|
}
|
|
|
|
.ipsApp select.ipsField_short, .ipsApp select.ipsField_medium, .ipsApp select.ipsField_tiny {
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.ipsApp textarea:focus, .ipsApp input[type="text"]:focus, .ipsApp input[type="password"]:focus,
|
|
.ipsApp input[type="datetime"]:focus, .ipsApp input[type="datetime-local"]:focus,
|
|
.ipsApp input[type="date"]:focus, .ipsApp input[type="month"]:focus, .ipsApp input[type="time"]:focus,
|
|
.ipsApp input[type="week"]:focus, .ipsApp input[type="number"]:focus, .ipsApp input[type="email"]:focus,
|
|
.ipsApp input[type="url"]:focus, .ipsApp input[type="search"]:focus, .ipsApp input[type="tel"]:focus,
|
|
.ipsApp input[type="color"]:focus {
|
|
border-color: rgba(82, 168, 236, 0.8);
|
|
outline: 0;
|
|
box-shadow: 0 1px 1px rgba(0,0,0,0.075), 0px 1px 5px rgba(82,168,236,0.6) inset ;
|
|
}
|
|
|
|
.ipsApp textarea[disabled], .ipsApp input[type="text"][disabled], .ipsApp input[type="password"][disabled],
|
|
.ipsApp input[type="datetime"][disabled], .ipsApp input[type="datetime-local"][disabled],
|
|
.ipsApp input[type="date"][disabled], .ipsApp input[type="month"][disabled], .ipsApp input[type="time"][disabled],
|
|
.ipsApp input[type="week"][disabled], .ipsApp input[type="number"][disabled], .ipsApp input[type="email"][disabled],
|
|
.ipsApp input[type="url"][disabled], .ipsApp input[type="search"][disabled], .ipsApp input[type="tel"][disabled],
|
|
.ipsApp input[type="color"][disabled] {
|
|
background: #f7f7f7;
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.ipsApp .ipsToggle:focus,
|
|
.ipsApp .ipsCustomInput input:focus + span {
|
|
border-color: rgba(82, 168, 236, 0.8);
|
|
outline: 0;
|
|
box-shadow: 0 1px 1px rgba(0,0,0,0.075), 0px 1px 5px rgba(82,168,236,0.6);
|
|
}
|
|
|
|
.ipsFieldRow_content [data-role="prefixRow"] {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.ipsApp textarea {
|
|
height: auto;
|
|
max-width: 100%;
|
|
}
|
|
|
|
/*.ipsFieldRow_content select {
|
|
margin-top: 6px;
|
|
}*/
|
|
|
|
.ipsFieldRow .ipsFieldRow_icon {
|
|
position: relative;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFieldRow .ipsFieldRow_icon input[type="text"] {
|
|
padding-left: 35px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow .ipsFieldRow_icon input[type="text"] {
|
|
padding-right: 35px;
|
|
}
|
|
|
|
.ipsFieldRow .ipsFieldRow_icon:after {
|
|
font-family: 'FontAwesome';
|
|
font-size: 16px;
|
|
position: absolute;
|
|
top: 3px;
|
|
color: #404040;
|
|
display: inline-block;
|
|
width: 30px;
|
|
height: 30px;
|
|
}
|
|
html[dir="ltr"] .ipsFieldRow .ipsFieldRow_icon:after {
|
|
left: 3px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow .ipsFieldRow_icon:after {
|
|
right: 3px;
|
|
}
|
|
|
|
.ipsFieldRow .ipsFieldRow_icon[data-icon="search"] {
|
|
content: "\f002";
|
|
}
|
|
|
|
.ipsFieldRow.ipsFieldRow_primary .ipsFieldRow_icon:after {
|
|
font-size: 18px;
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsFieldRow.ipsFieldRow_primary .ipsFieldRow_icon:after {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsFieldRow.ipsFieldRow_primary .ipsFieldRow_icon:after {
|
|
right: 10px;
|
|
}
|
|
|
|
.ipsApp .ipsField_loading {
|
|
background-image: url( "{resource="loaders/tiny_loading.gif" app="core" location="front"}" );
|
|
background-size: 14px 14px;
|
|
background-repeat: no-repeat;
|
|
background-position: right 5px center;
|
|
}
|
|
|
|
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
|
|
.ipsApp .ipsField_loading {
|
|
background-image: url( "{resource="loaders/tiny_loading@2x.gif" app="core" location="front"}" );
|
|
}
|
|
}
|
|
|
|
html[dir="rtl"] .ipsApp .ipsField_loading {
|
|
background-position: left 5px center;
|
|
}
|
|
|
|
.ipsFieldRow_section {
|
|
background: #f9f9f9;
|
|
color: #333;
|
|
padding: 15px;
|
|
font-size: 16px;
|
|
}
|
|
|
|
/* VALIDATION */
|
|
.ipsApp input.ipsField_error, .ipsFieldRow_error textarea:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="text"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="password"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="datetime"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="datetime-local"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="date"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="month"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="time"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="week"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="number"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="email"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="url"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="search"]:not( .ipsFieldRow_errorExclude ), .ipsFieldRow_error input[type="tel"]:not( .ipsFieldRow_errorExclude ),
|
|
.ipsFieldRow_error input[type="color"]:not( .ipsFieldRow_errorExclude ) {
|
|
background: #f8e6e9;
|
|
border-color: #ba7b84;
|
|
}
|
|
|
|
.ipsApp input.ipsField_success, .ipsApp textarea.ipsField_success, .ipsFieldRow_success textarea, .ipsFieldRow_success input[type="text"], .ipsFieldRow_success input[type="password"],
|
|
.ipsFieldRow_success input[type="datetime"], .ipsFieldRow_success input[type="datetime-local"],
|
|
.ipsFieldRow_success input[type="date"], .ipsFieldRow_success input[type="month"], .ipsFieldRow_success input[type="time"],
|
|
.ipsFieldRow_success input[type="week"], .ipsFieldRow_success input[type="number"], .ipsFieldRow_success input[type="email"],
|
|
.ipsFieldRow_success input[type="url"], .ipsFieldRow_success input[type="search"], .ipsFieldRow_success input[type="tel"],
|
|
.ipsFieldRow_error input[type="color"] {
|
|
background: #ebf2e5;
|
|
border-color: #4a7c20;
|
|
}
|
|
|
|
/* Monospace textarea */
|
|
textarea.ipsField_codeInput {
|
|
font-family: "Courier New", Courier, monospace;
|
|
}
|
|
|
|
input[type="text"].ipsField_tinyText {
|
|
font-size: 11px;
|
|
padding: 4px;
|
|
}
|
|
|
|
/* TOGGLES */
|
|
input[type="checkbox"]:disabled + .ipsToggle {
|
|
opacity: 0.4;
|
|
cursor: default !important;
|
|
}
|
|
|
|
input[type="checkbox"]:disabled + .ipsToggle:not( [data-ipsTooltip] ) {
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsToggle {
|
|
width: 50px;
|
|
background: red;
|
|
display: inline-block;
|
|
height: 22px;
|
|
line-height: 22px;
|
|
border-radius: 11px;
|
|
position: relative;
|
|
box-shadow: 0px 0px 1px rgba(0,0,0,0.2) inset;
|
|
border: 1px solid rgba(0,0,0,0.3);
|
|
overflow: hidden;
|
|
vertical-align: middle;
|
|
cursor: pointer;
|
|
{prefix="transition" value="all 0.3s linear"}
|
|
}
|
|
|
|
.ipsToggle.ipsToggle_off {
|
|
background: #c2c2c2;
|
|
}
|
|
|
|
.ipsToggle.ipsToggle_on {
|
|
background: #5a895c;
|
|
}
|
|
|
|
.ipsToggle input {
|
|
opacity: 0.001;
|
|
}
|
|
|
|
.ipsToggle span {
|
|
background: #f5f5f5;
|
|
border-radius: 9px;
|
|
height: 18px;
|
|
width: 18px;
|
|
top: 1px;
|
|
text-indent: 100%;
|
|
white-space: nowrap;
|
|
box-shadow: 0px 0px 1px rgba(0,0,0,0.5);
|
|
display: block;
|
|
position: absolute;
|
|
pointer-events: none;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
|
|
html[dir="ltr"] .ipsToggle.ipsToggle_on span,
|
|
html[dir="ltr"] .ipsToggle.ipsToggle_off:active span {
|
|
right: 1px;
|
|
}
|
|
html[dir="rtl"] .ipsToggle.ipsToggle_on span,
|
|
html[dir="rtl"] .ipsToggle.ipsToggle_off:active span {
|
|
left: 1px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsToggle.ipsToggle_off span,
|
|
html[dir="ltr"] .ipsToggle.ipsToggle_on:active span {
|
|
right: 29px;
|
|
}
|
|
html[dir="rtl"] .ipsToggle.ipsToggle_off span,
|
|
html[dir="rtl"] .ipsToggle.ipsToggle_on:active span {
|
|
left: 29px;
|
|
}
|
|
|
|
.ipsToggle span:before {
|
|
content: '\f0c9';
|
|
font-family: 'FontAwesome';
|
|
font-size: 10px;
|
|
line-height: 20px;
|
|
display: block;
|
|
position: absolute;
|
|
width: 18px;
|
|
height: 18px;
|
|
top: -1px;
|
|
color: rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="ltr"] .ipsToggle span:before {
|
|
left: -13px;
|
|
}
|
|
html[dir="rtl"] .ipsToggle span:before {
|
|
right: -13px;
|
|
}
|
|
|
|
.ipsToggle span:after {
|
|
content: '\f00c';
|
|
font-family: 'FontAwesome';
|
|
font-size: 12px;
|
|
text-transform: uppercase;
|
|
display: block;
|
|
color: #fff;
|
|
position: absolute;
|
|
top: 0px;
|
|
line-height: 18px;
|
|
text-shadow: 0px 0px 1px rgba(0,0,0,0.5);
|
|
}
|
|
html[dir="ltr"] .ipsToggle span:after {
|
|
left: -38px;
|
|
}
|
|
html[dir="rtl"] .ipsToggle span:after {
|
|
right: -38px;
|
|
}
|
|
|
|
.ipsToggle.ipsToggle_off span:after {
|
|
content: '\f00d';
|
|
}
|
|
html[dir="ltr"] .ipsToggle.ipsToggle_off span:after {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsToggle.ipsToggle_off span:after {
|
|
right: 10px;
|
|
}
|
|
|
|
/* No, no, no, no, yes */
|
|
.ipsField_yesNo {
|
|
display: inline-block;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_yesNo li {
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsField_yesNo input[type="radio"] {
|
|
display: none;
|
|
}
|
|
|
|
.ipsField_yesNo label {
|
|
display: block;
|
|
height: 32px;
|
|
line-height: 32px;
|
|
text-align: center;
|
|
width: 40px;
|
|
background: #f2f2f2;
|
|
overflow: hidden;
|
|
text-indent: 100%;
|
|
whitespace: no-wrap;
|
|
cursor: pointer;
|
|
position: relative;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
|
|
.ipsField_yesNo label:after {
|
|
color: #d5d5d5;
|
|
font-family: "FontAwesome";
|
|
position: absolute;
|
|
top: 0;
|
|
text-indent: 0;
|
|
font-size: 18px;
|
|
}
|
|
html[dir="ltr"] .ipsField_yesNo label:after {
|
|
left: 50%;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo label:after {
|
|
right: 50%;
|
|
}
|
|
|
|
.ipsField_yesNo .ipsField_yesNo_yes label:after {
|
|
content: "\f00c";
|
|
}
|
|
html[dir="ltr"] .ipsField_yesNo .ipsField_yesNo_yes label:after {
|
|
margin-left: -9px;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo .ipsField_yesNo_yes label:after {
|
|
margin-right: -9px;
|
|
}
|
|
|
|
.ipsField_yesNo .ipsField_yesNo_yes input[type="radio"]:checked + label {
|
|
background: #68a72f;
|
|
}
|
|
|
|
.ipsField_yesNo .ipsField_yesNo_no label:after {
|
|
content: "\f00d";
|
|
}
|
|
html[dir="ltr"] .ipsField_yesNo .ipsField_yesNo_no label:after {
|
|
margin-left: -7px;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo .ipsField_yesNo_no label:after {
|
|
margin-right: -7px;
|
|
}
|
|
|
|
.ipsField_yesNo .ipsField_yesNo_no input[type="radio"]:checked + label {
|
|
background: #a72f35;
|
|
}
|
|
|
|
.ipsField_yesNo li:first-child label {
|
|
border-radius: 3px 0 0 3px;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo li:first-child label {
|
|
border-radius: 0 3px 3px 0;
|
|
}
|
|
|
|
.ipsField_yesNo li:last-child label {
|
|
border-radius: 0 3px 3px 0;
|
|
}
|
|
html[dir="rtl"] .ipsField_yesNo li:last-child label {
|
|
border-radius: 3px 0 0 3px;
|
|
}
|
|
|
|
.ipsField_yesNo input[type="radio"]:checked + label:after {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsField_yesNo.ipsField_yesNo_disabled {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
/* CUSTOM CHECKBOX/RADIO STYLES */
|
|
.ipsCustomInput {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsCustomInput,
|
|
.ipsCustomInput > span {
|
|
width: 15px;
|
|
height: 15px;
|
|
}
|
|
|
|
.ipsCustomInput > span {
|
|
border: 1px solid #bdbdbd;
|
|
background: #fff;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
pointer-events: none;
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsCustomInput input[type="checkbox"] + span {
|
|
border-radius: 3px;
|
|
}
|
|
.ipsCustomInput input[type="radio"] + span {
|
|
border-radius: 8px;
|
|
}
|
|
|
|
/* Hover */
|
|
.ipsCustomInput input:hover:not( :disabled ) + span {
|
|
border-color: #5490c0;
|
|
}
|
|
|
|
/* Disabled styles */
|
|
.ipsCustomInput input:disabled + span {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
.ipsCustomInput input:not( :checked ):disabled + span {
|
|
background: #f5f5f5;
|
|
}
|
|
|
|
.ipsCustomInput input:checked:disabled + span {
|
|
background: #ebebeb;
|
|
border-color: #757575;
|
|
}
|
|
|
|
.ipsCustomInput input[type="checkbox"]:checked:disabled + span:after {
|
|
color: #757575;
|
|
}
|
|
|
|
.ipsCustomInput input[type="radio"]:checked:disabled + span:after {
|
|
background-color: #757575;
|
|
}
|
|
|
|
/* Active styles */
|
|
.ipsCustomInput input:active:not( :checked ):not( :disabled ) + span {
|
|
background: #ebebeb;
|
|
}
|
|
.ipsCustomInput input:active:checked:not( :disabled ) + span {
|
|
background: #ebebeb;
|
|
}
|
|
|
|
/* Checked styles */
|
|
.ipsCustomInput input:checked + span {
|
|
border-color: #5490c0;
|
|
/*background: #5490c0;*/
|
|
}
|
|
|
|
.ipsCustomInput input[type="checkbox"]:checked + span:after {
|
|
content: '\f00c';
|
|
font-family: "FontAwesome";
|
|
color: #5490c0;
|
|
position: absolute;
|
|
top: -1px;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
line-height: 15px;
|
|
text-align: center;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsCustomInput input[type="radio"]:checked + span:after {
|
|
width: 7px;
|
|
height: 7px;
|
|
display: block;
|
|
content: '';
|
|
position: absolute;
|
|
top: 3px;
|
|
left: 3px;
|
|
border-radius: 8px;
|
|
background: #5490c0;
|
|
}
|
|
|
|
.ipsCustomInput input {
|
|
opacity: 0.000001;
|
|
width: 15px;
|
|
height: 15px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
/* TRANSLATABLE */
|
|
.ipsField_translatable li {
|
|
margin-bottom: 5px;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsField_translatable li span.ipsFlag {
|
|
display: inline-block;
|
|
position: absolute;
|
|
top: 9px;
|
|
}
|
|
html[dir="ltr"] .ipsField_translatable li span.ipsFlag {
|
|
left: 8px;
|
|
}
|
|
html[dir="rtl"] .ipsField_translatable li span.ipsFlag {
|
|
right: 8px;
|
|
}
|
|
|
|
.ipsField_translatable li p.ipsFlagEditor span.ipsFlag{
|
|
top: 4px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_translatable li .ipsFlag + input[type="text"],
|
|
html[dir="ltr"] .ipsField_translatable li .ipsFlag + input[type="password"] {
|
|
padding-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsField_translatable li .ipsFlag + input[type="text"],
|
|
html[dir="rtl"] .ipsField_translatable li .ipsFlag + input[type="password"] {
|
|
padding-right: 30px;
|
|
}
|
|
|
|
.ipsField_translatable li .ipsFlag + span.ipsFlagLabel {
|
|
font-weight: bold;
|
|
}
|
|
html[dir="ltr"] .ipsField_translatable li .ipsFlag + span.ipsFlagLabel {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsField_translatable li .ipsFlag + span.ipsFlagLabel {
|
|
margin-right: 30px;
|
|
}
|
|
|
|
/* STACK */
|
|
.ipsFieldRow:not( .ipsFieldRow_fullWidth ) .ipsField_stack {
|
|
max-width: 350px;
|
|
}
|
|
|
|
.ipsField_stackItem {
|
|
margin-bottom: 5px;
|
|
position: relative;
|
|
padding-left: 32px;
|
|
}
|
|
|
|
.ipsField_stackItem .ipsField_stackDrag,
|
|
.ipsField_stackItem .ipsField_stackDelete {
|
|
position: absolute;
|
|
width: 32px;
|
|
height: 32px;
|
|
line-height: 34px;
|
|
top: 0;
|
|
text-align: center;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_stackItem .ipsField_stackDrag {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsField_stackItem .ipsField_stackDrag {
|
|
right: 0;
|
|
}
|
|
|
|
.ipsField_stackItem .ipsDrag_dragHandle {
|
|
opacity: 0.2;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_stackDelete {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsField_stackDelete {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsField_stackItem input[type="text"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="url"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="tel"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="email"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="number"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="search"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="password"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="datetime"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="datetime-local"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="date"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="week"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="month"]:not(.ipsField_stackItemNoMargin),
|
|
.ipsField_stackItem input[type="time"]:not(.ipsField_stackItemNoMargin) {
|
|
margin-left: -32px;
|
|
padding-left: 32px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsField_stackItem input:not([type="text"], [type="url"], [type="tel"], [type="email"], [type="number"], [type="search"], [type="password"],
|
|
[type="datetime"], [type="datetime-local"], [type="date"], [type="week"], [type="month"], [type="time"]),
|
|
html[dir="ltr"] .ipsField_stackItem select,
|
|
html[dir="ltr"] .ipsField_stackItem textarea {
|
|
margin-left: 36px;
|
|
}
|
|
html[dir="rtl"] .ipsField_stackItem input:not([type="text"], [type="url"], [type="tel"], [type="email"], [type="number"], [type="search"], [type="password"],
|
|
[type="datetime"], [type="datetime-local"], [type="date"], [type="week"], [type="month"], [type="time"]),
|
|
html[dir="rtl"] .ipsField_stackItem select,
|
|
html[dir="rtl"] .ipsField_stackItem textarea {
|
|
margin-right: 36px;
|
|
}
|
|
|
|
/* Key value pairs */
|
|
html[dir="ltr"] .ipsField_stackItem_keyValue span input[type="text"] {
|
|
margin-left: 0px;
|
|
padding-left: 6px;
|
|
}
|
|
html[dir="rtl"] .ipsField_stackItem_keyValue span input[type="text"] {
|
|
margin-right: 0px;
|
|
padding-right: 6px;
|
|
}
|
|
|
|
.ipsField_stackItem_keyValue
|
|
{
|
|
padding-top: 8px;
|
|
}
|
|
html[dir="ltr"] .ipsField_stackItem_keyValue
|
|
{
|
|
margin-left: 36px;
|
|
}
|
|
html[dir="ltr"] .ipsField_stackItem_keyValue
|
|
{
|
|
margin-right: 36px;
|
|
}
|
|
|
|
/* ATTACHMENTS */
|
|
.ipsField_uploader {
|
|
border: 1px solid #efefef;
|
|
border-bottom: 1px solid #dedede;
|
|
box-shadow: 0px 1px 0px rgba(255,255,255,1) inset;
|
|
background: #f6f6f6;
|
|
padding: 15px;
|
|
text-shadow: 0px 1px 0px #fff;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsField_uploader .ipsField_uploader_icon {
|
|
font-size: 36px;
|
|
vertical-align: middle;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
html[dir="ltr"] .ipsField_uploader .ipsField_uploader_icon {
|
|
margin-right: 10px;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsField_uploader .ipsField_uploader_icon {
|
|
margin-left: 10px;
|
|
float: right;
|
|
}
|
|
|
|
.ipsField_uploader:hover .ipsField_uploader_icon {
|
|
{prefix="transform" value="scale(1.3)"}
|
|
}
|
|
|
|
.ipsField_uploader .ipsField_uploader_msg span {
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
display: block;
|
|
}
|
|
|
|
.ipsField_uploader .ipsField_uploader_msg span + span {
|
|
opacity: 0.7;
|
|
font-weight: normal;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.ipsAttachments_list {
|
|
border: 1px solid #efefef;
|
|
}
|
|
|
|
.ipsAttachments_list > li {
|
|
padding: 15px;
|
|
background: #fcfcfc;
|
|
border-bottom: 1px solid #efefef;
|
|
}
|
|
|
|
.ipsAttachments_list > li:last-child {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
.ipsAttachment_name {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsAttachment_size {
|
|
opacity: 0.7;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.ipsAttachments_tools {
|
|
opacity: 0;
|
|
{prefix="transition" value="0.5s all linear"}
|
|
}
|
|
|
|
.ipsAttachments_list > li:hover .ipsAttachments_tools {
|
|
opacity: 0.4;
|
|
}
|
|
|
|
.ipsAttachments_list > li .ipsAttachments_tools:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsAttachment_progress {
|
|
border: 1px solid #dedede;
|
|
height: 12px;
|
|
border-radius: 10px;
|
|
width: 150px;
|
|
display: inline-block;
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsAttachment_progress > span {
|
|
background: #151515;
|
|
width: 0%;
|
|
display: block;
|
|
height: 10px;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.ipsImageAttach .ipsAttachment_progress {
|
|
width: 70%;
|
|
position: absolute;
|
|
top: 45%;
|
|
}
|
|
html[dir="ltr"] .ipsImageAttach .ipsAttachment_progress {
|
|
margin-left: -35%;
|
|
left: 50%;
|
|
}
|
|
html[dir="rtl"] .ipsImageAttach .ipsAttachment_progress {
|
|
margin-right: -35%;
|
|
right: 50%;
|
|
}
|
|
|
|
.ipsField_uploader + .ipsAttachments_list {
|
|
border-top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsField_uploader + .ipsAttachments_list {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsField_uploader + .ipsAttachments_list {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.ipsAttachment_supportDrag {
|
|
display: none;
|
|
}
|
|
|
|
/* AUTOCOMPLETE TOKENS */
|
|
.cToken {
|
|
height: 22px;
|
|
line-height: 22px;
|
|
background: #5490c0;
|
|
color: #fff;
|
|
display: inline-block;
|
|
font-size: 13px;
|
|
border-radius: 12px;
|
|
padding: 0 10px;
|
|
cursor: pointer;
|
|
margin: 1px 5px 1px 0 !important;
|
|
max-width: 100%;
|
|
overflow: hidden;
|
|
}
|
|
html[dir="rtl"] .cToken {
|
|
margin: 1px 0 1px 5px !important;
|
|
}
|
|
|
|
.cToken.cToken_selected {
|
|
background: #3a5a78;
|
|
}
|
|
|
|
/* CONTENTITEM */
|
|
ul.ipsContentItemSelector li {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
ul.ipsContentItemSelector li:first-child {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
ul.ipsContentItemSelector li div[data-role="contentItemRow"]
|
|
{
|
|
padding-left: 5px;
|
|
}
|
|
|
|
.cContentItem_delete {
|
|
height: 18px;
|
|
line-height: 18px;
|
|
background: #5490c0;
|
|
color: #fff;
|
|
display: inline-block;
|
|
font-size: 13px;
|
|
border-radius: 12px;
|
|
padding: 0 10px;
|
|
cursor: pointer;
|
|
margin: 1px 5px 1px 0 !important;
|
|
float: left;
|
|
}
|
|
|
|
/* SELECT TREE */
|
|
.ipsSelectTree {
|
|
min-height: 32px;
|
|
border: 1px solid #b3b3b3;
|
|
width: 100%;
|
|
max-width: 350px;
|
|
border-radius: 3px;
|
|
padding: 7px 25px 5px 7px;
|
|
position: relative;
|
|
background: rgb(255,255,255);
|
|
background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(242,242,242,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(242,242,242,1)));
|
|
background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(242,242,242,1) 100%);
|
|
cursor: pointer;
|
|
margin-bottom: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree {
|
|
padding: 7px 7px 5px 25px;
|
|
}
|
|
|
|
.ipsSelectTree.ipsSelectTree_disabled, .ipsSelectTree.ipsSelectTree_disabled .ipsSelectTree_expand {
|
|
opacity: 0.6;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsSelectTree_active {
|
|
border-bottom: 0;
|
|
border-radius: 3px 3px 0 0;
|
|
border-color: rgba(82, 168, 236, 0.8);
|
|
}
|
|
|
|
.ipsSelectTree_expand {
|
|
position: absolute;
|
|
top: -1px;
|
|
bottom: -1px;
|
|
line-height: 32px;
|
|
border-radius: 0 3px 3px 0;
|
|
width: 26px;
|
|
text-align: center;
|
|
color: #333;
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_expand {
|
|
right: -1px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_expand {
|
|
left: -1px;
|
|
}
|
|
|
|
.ipsSelectTree [data-role="tokenList"] li {
|
|
line-height: 1;
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree [data-role="tokenList"] li {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree [data-role="tokenList"] li {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.ipsSelectTree [data-role="tokenList"] .cToken {
|
|
background: #5490c0;
|
|
color: #fff;
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
.ipsSelectTree_nodes {
|
|
position: absolute;
|
|
top: 100%;
|
|
margin: -4px 0 0 -1px;
|
|
max-width: 500px;
|
|
border: 1px solid rgba(82, 168, 236, 0.8);
|
|
border-top: 0;
|
|
border-bottom-right-radius: 3px;
|
|
border-bottom-left-radius: 3px;
|
|
padding: 7px;
|
|
background: rgb(242,242,242);
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes {
|
|
margin: -4px -1px 0 0;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] {
|
|
background: #fff;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
max-height: 300px;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li {
|
|
position: relative;
|
|
border-bottom: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item {
|
|
padding: 7px 4px 7px 22px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item {
|
|
padding: 7px 22px 7px 4px;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item.ipsSelectTree_withChildren {
|
|
padding: 7px 4px;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item:not( .ipsSelectTree_itemDisabled ):hover {
|
|
background: #ebf4f9;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item:not( .ipsSelectTree_itemDisabled ).ipsSelectTree_selected:hover {
|
|
background: #333333;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"] {
|
|
border-top: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"] {
|
|
margin-left: 15px;
|
|
border-left: 1px dotted rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"] {
|
|
margin-right: 15px;
|
|
border-right: 1px dotted rgba(0,0,0,0.2);
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li:last-child {
|
|
border: 0;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_toggle {
|
|
width: 16px;
|
|
height: 19px;
|
|
display: inline-block;
|
|
color: inherit;
|
|
position: relative;
|
|
vertical-align: middle;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_toggle {
|
|
float: right;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_toggle + [data-role="nodeTitle"] {
|
|
display: block;
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_toggle + [data-role="nodeTitle"] {
|
|
margin-left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_toggle + [data-role="nodeTitle"] {
|
|
margin-right: 20px;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item > .ipsSelectTree_toggle:before {
|
|
text-align: center;
|
|
font-size: 11px;
|
|
display: block;
|
|
width: 20px;
|
|
height: 19px;
|
|
position: absolute;
|
|
top: 0;
|
|
content: '\f04b';
|
|
font-family: 'FontAwesome';
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item > .ipsSelectTree_toggle:before {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item > .ipsSelectTree_toggle:before {
|
|
right: 0;
|
|
}
|
|
|
|
.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item.ipsSelectTree_itemOpen > .ipsSelectTree_toggle:before {
|
|
{prefix="transform" value="rotate(90deg)"}
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item.ipsSelectTree_itemOpen > .ipsSelectTree_toggle:before {
|
|
left: -2px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item.ipsSelectTree_itemOpen > .ipsSelectTree_toggle:before {
|
|
right: -2px;
|
|
}
|
|
|
|
.ipsSelectTree_selected {
|
|
background: #474747;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsSelectTree_selected:after {
|
|
content: '\f00c';
|
|
font-family: 'FontAwesome';
|
|
position: absolute;
|
|
top: 7px;
|
|
color: #fff;
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_selected:after {
|
|
right: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_selected:after {
|
|
left: 7px;
|
|
}
|
|
|
|
.ipsSelectTree_itemDisabled > [data-role="nodeTitle"] {
|
|
color: #a6a6a6;
|
|
cursor: default;
|
|
}
|
|
|
|
.ipsSelectTree_placeholder {
|
|
color: #909090;
|
|
}
|
|
|
|
.ipsSelectTree_search {
|
|
margin-top: 7px;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsApp .ipsSelectTree_search input {
|
|
border: 1px solid rgba(0,0,0,0.3);
|
|
font-size: 12px;
|
|
}
|
|
html[dir="ltr"] .ipsApp .ipsSelectTree_search input {
|
|
padding-left: 26px;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsSelectTree_search input {
|
|
padding-right: 26px;
|
|
}
|
|
|
|
.ipsSelectTree_search:after {
|
|
content: '\f002';
|
|
font-family: "FontAwesome";
|
|
position: absolute;
|
|
top: 7px;
|
|
}
|
|
html[dir="ltr"] .ipsSelectTree_search:after {
|
|
left: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsSelectTree_search:after {
|
|
right: 7px;
|
|
}
|
|
|
|
/* HIDDEN LABELS */
|
|
.ipsForm_noLabels .ipsFieldRow_label, .ipsForm_noLabels .ipsFieldRow_title,
|
|
.ipsForm_noLabels .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_label, .ipsForm_noLabels .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_title {
|
|
display: none;
|
|
}
|
|
|
|
input.ipsField_vle {
|
|
color: black;
|
|
font-weight: normal;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="global.css"><![CDATA[@-webkit-viewport { width: device-width; }
|
|
@-moz-viewport { width: device-width; }
|
|
@-ms-viewport { width: device-width; }
|
|
@-o-viewport { width: device-width; }
|
|
@-viewport { width: device-width; }
|
|
|
|
*, .ipsApp input[type="search"] {
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
html {
|
|
min-height: 100%;
|
|
position: relative;
|
|
}
|
|
|
|
body {
|
|
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
font-size: 13px;
|
|
line-height: 18px;
|
|
color: {theme="text_color"};
|
|
height: 100%;
|
|
background-color: {theme="page_background"};
|
|
}
|
|
|
|
main {
|
|
display: block;
|
|
}
|
|
|
|
.ipsLayout_noBackground {
|
|
background: none;
|
|
}
|
|
|
|
body.ipsNoScroll {
|
|
overflow: hidden;
|
|
}
|
|
|
|
a {
|
|
color: {theme="link"};
|
|
text-decoration: none;
|
|
}
|
|
|
|
a:hover {
|
|
color: {theme="link_hover"};
|
|
}
|
|
|
|
a:active, a:focus, a:hover {
|
|
outline: 0 !important;
|
|
}
|
|
|
|
img {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsApp fieldset {
|
|
border: 0;
|
|
}
|
|
|
|
/* RTL flip FontAwesome arrows */
|
|
html[dir="rtl"] i.fa[class$="-right"],
|
|
html[dir="rtl"] i.fa[class$="-left"],
|
|
html[dir="rtl"] i.fa[class$="-reply"],
|
|
html[dir="rtl"] i.fa[class$="-forward"],
|
|
html[dir="rtl"] i.fa[class$="-backward"] {
|
|
{prefix="transform" value="scaleX(-1)"}
|
|
filter: FlipH;
|
|
-ms-filter: "FlipH";
|
|
}
|
|
|
|
/* HEADER & MAIN NAV */
|
|
#elSiteTitle {
|
|
color: #fff;
|
|
font-size: 28px;
|
|
line-height: 58px;
|
|
text-decoration: none;
|
|
font-weight: 300;
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
|
|
#elLogo img {
|
|
max-width: 100%;
|
|
}
|
|
|
|
#elMobileNav {
|
|
background: {theme="main_nav"};
|
|
}
|
|
|
|
/*#ipsLayout_mainNav {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
#ipsLayout_mainNav > li {
|
|
display: inline-block;
|
|
float: left;
|
|
line-height: 46px;
|
|
}*/
|
|
|
|
#ipsLayout_header nav ul li.ipsHide,
|
|
#ipsLayout_header #elMobileNav li.ipsHide {
|
|
display: none;
|
|
}
|
|
|
|
#ipsLayout_mainNav > li > a {
|
|
display: block;
|
|
position: relative;
|
|
font-size: 13px;
|
|
color: #fff;
|
|
text-decoration: none;
|
|
padding: 0 20px;
|
|
text-shadow: 0px -1px 0px rgba(0,0,0,0.4);
|
|
}
|
|
|
|
#ipsLayout_mainNav > li > a .ipsNotificationCount {
|
|
top: -3px;
|
|
}
|
|
|
|
html[dir="ltr"] #ipsLayout_mainNav > li > a .ipsNotificationCount {
|
|
right: -3px;
|
|
}
|
|
html[dir="rtl"] #ipsLayout_mainNav > li > a .ipsNotificationCount {
|
|
left: -3px;
|
|
}
|
|
|
|
#ipsLayout_header nav a.ipsNavActive {
|
|
color: #fff;
|
|
text-shadow: 0px 1px 0px rgba(0,0,0,0.4);
|
|
background: rgba(0,0,0,0.3);
|
|
font-weight: bold;
|
|
opacity: 1;
|
|
}
|
|
|
|
#ipsLayout_header nav a.ipsNavActive.ipsNavActive_menu {
|
|
background: rgba(0,0,0,0.5);
|
|
}
|
|
|
|
#ipsLayout_header header {
|
|
padding: 5px 0 130px 0;
|
|
margin-bottom: -125px;
|
|
background-color: {theme="header"};
|
|
}
|
|
|
|
#ipsLayout_mainNav > li > a {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
#ipsLayout_mainNav > li > a:hover {
|
|
opacity: 1;
|
|
color: #fff;
|
|
}
|
|
|
|
#ipsLayout_mobileNav {
|
|
display: none;
|
|
}
|
|
|
|
#elAjaxLoading {
|
|
background: #323232;
|
|
width: 150px;
|
|
padding: 15px;
|
|
color: #fff;
|
|
position: fixed;
|
|
bottom: 15px;
|
|
border-radius: 4px;
|
|
font-size: 16px;
|
|
text-align: center;
|
|
z-index: 15000;
|
|
}
|
|
html[dir="ltr"] #elAjaxLoading {
|
|
left: 50%;
|
|
margin-left: -75px;
|
|
}
|
|
html[dir="rtl"] #elAjaxLoading {
|
|
right: 50%;
|
|
margin-right: -75px;
|
|
}
|
|
|
|
html[dir="ltr"] #elAjaxLoading img {
|
|
margin-right: 20px;
|
|
}
|
|
html[dir="rtl"] #elAjaxLoading img {
|
|
margin-left: 20px;
|
|
}
|
|
|
|
/* SEARCH */
|
|
#elSearch {
|
|
border-radius: 20px;
|
|
padding: 4px 10px 4px 10px;
|
|
background: #fff;
|
|
margin: 2px 0;
|
|
height: 26px;
|
|
width: 170px;
|
|
position: relative;
|
|
opacity: 0.4;
|
|
{prefix="transition" value="0.1s all linear"}
|
|
}
|
|
|
|
html[dir="ltr"] #elSearch {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] #elSearch {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
/* Fix for webkit autocomplete */
|
|
#elSearch input:-webkit-autofill {
|
|
height: 26px !important;
|
|
}
|
|
|
|
.ipsApp_noTouch #elSearch:hover, #elSearch.cSearchExpanded {
|
|
opacity: 1;
|
|
}
|
|
|
|
#elSearch.cSearchExpanded {
|
|
width: 280px;
|
|
}
|
|
|
|
#elSearch button {
|
|
position: absolute;
|
|
top: 0;
|
|
border: 0;
|
|
background: transparent;
|
|
font-size: 17px;
|
|
width: 35px;
|
|
line-height: 22px;
|
|
}
|
|
html[dir="ltr"] #elSearch button {
|
|
right: 1px;
|
|
}
|
|
html[dir="rtl"] #elSearch button {
|
|
left: 1px;
|
|
}
|
|
|
|
#elSearch input[type="search"] {
|
|
padding: 0 0 0 2px;
|
|
border: 0;
|
|
background: transparent;
|
|
box-shadow: none;
|
|
font-size: 13px;
|
|
position: absolute;
|
|
top: 0px;
|
|
width: 130px;
|
|
line-height: 28px;
|
|
height: 28px;
|
|
}
|
|
html[dir="ltr"] #elSearch input[type="search"] {
|
|
right: 30px;
|
|
}
|
|
html[dir="rtl"] #elSearch input[type="search"] {
|
|
left: 30px;
|
|
}
|
|
|
|
#elSearch #elSearchFilter {
|
|
font-size: 11px;
|
|
color: #5f5f5f;
|
|
opacity: 1;
|
|
max-width: 110px;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
padding: 0 10px;
|
|
text-align: center;
|
|
position: absolute;
|
|
top: 0px;
|
|
line-height: 26px;
|
|
background: #eeeeee;
|
|
width: 110px;
|
|
}
|
|
html[dir="ltr"] #elSearch #elSearchFilter {
|
|
left: 0px;
|
|
border-radius: 20px 0 0 20px;
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
html[dir="rtl"] #elSearch #elSearchFilter {
|
|
right: 0px;
|
|
border-radius: 0px 20px 20px 0px;
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
#elSearch #elSearchFilter:hover {
|
|
background: #f7f7f7;
|
|
}
|
|
|
|
/* USER NAVIGATION */
|
|
#elUserNav {
|
|
position: absolute;
|
|
top: 10px;
|
|
line-height: 36px;
|
|
text-decoration: none;
|
|
}
|
|
|
|
#elUserNav .ipsType_medium {
|
|
line-height: inherit;
|
|
}
|
|
|
|
html[dir="ltr"] #elUserNav{
|
|
right: 20px;
|
|
}
|
|
html[dir="rtl"] #elUserNav{
|
|
left: 20px;
|
|
}
|
|
|
|
#elUserNav.cSignedOut {
|
|
line-height: 15px;
|
|
}
|
|
|
|
#elUserNav > li > a {
|
|
color: #fff;
|
|
font-size: 13px;
|
|
vertical-align: middle;
|
|
line-height: 1;
|
|
}
|
|
|
|
#elUserNav > li > a .fa,
|
|
#elUserNav_mobile > li > a .fa {
|
|
font-size: 20px;
|
|
}
|
|
|
|
#elUserNav > li > a .fa-caret-down,
|
|
#elUserNav > li > a .fa-plus {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.cUserNav_icon a {
|
|
display: block;
|
|
position: relative; /* Needed for notification bubbles */
|
|
text-shadow: 0px 1px 1px rgba(0,0,0,0.2);
|
|
color: #fff;
|
|
}
|
|
|
|
|
|
|
|
.elUserNav_sep {
|
|
border-right: 2px solid rgba(255,255,255,0.1);
|
|
height: 36px;
|
|
width: 0;
|
|
display: block;
|
|
}
|
|
|
|
#cUserLink .ipsUserPhoto {
|
|
padding: 0;
|
|
}
|
|
html[dir="ltr"] #cUserLink .ipsUserPhoto {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] #cUserLink .ipsUserPhoto {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
#cUserLink .ipsUserPhoto img {
|
|
width: 26px;
|
|
height: 26px;
|
|
}
|
|
|
|
#elUserNav_mobile {
|
|
text-align: center;
|
|
padding: 20px 0;
|
|
}
|
|
|
|
html[dir="ltr"] #cRegisterButton {
|
|
margin-left: 20px;
|
|
}
|
|
html[dir="rtl"] #cRegisterButton {
|
|
margin-right: 20px;
|
|
}
|
|
|
|
#elCart .ipsNotificationCount {
|
|
left: 10px;
|
|
right: auto;
|
|
}
|
|
|
|
/* FLASH MESSAGE */
|
|
#elFlashMessage {
|
|
background: rgba(0,0,0,0.9);
|
|
color: #fff;
|
|
position: fixed;
|
|
width: 600px;
|
|
font-size: 15px;
|
|
border-radius: 4px;
|
|
text-align: center;
|
|
}
|
|
html[dir="ltr"] #elFlashMessage {
|
|
left: 50%;
|
|
margin-left: -300px;
|
|
}
|
|
html[dir="rtl"] #elFlashMessage {
|
|
right: 50%;
|
|
margin-right: -300px;
|
|
}
|
|
|
|
#elFlashMessage.ipsFlashMsg_top {
|
|
top: 20px;
|
|
}
|
|
|
|
#elFlashMessage.ipsFlashMsg_bottom {
|
|
bottom: 20px;
|
|
}
|
|
|
|
#elFlashMessage a {
|
|
color: #fff;
|
|
border-bottom: 1px solid rgba(255,255,255,0.6);
|
|
}
|
|
|
|
#elFlashMessage a:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
/* DRAWERS */
|
|
.ipsModal.ipsDrawer_modal {
|
|
background: rgba(30,30,30,0.4);
|
|
overflow: hidden !important;
|
|
}
|
|
|
|
.ipsDrawer, .ipsDrawer_menu, .ipsDrawer_content {
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsDrawer {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
}
|
|
|
|
.ipsDrawer_menu {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 280px;
|
|
background: #11171c;
|
|
box-shadow: 0px 0px 25px rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="ltr"] .ipsDrawer_menu {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDrawer_menu {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsDrawer_content {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
}
|
|
|
|
.ipsDrawer_close {
|
|
background: #11171c;
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 40px;
|
|
color: #fff;
|
|
text-align: center;
|
|
font-size: 24px;
|
|
display: block;
|
|
position: absolute;
|
|
right: 285px;
|
|
top: 5px;
|
|
z-index: 2000;
|
|
}
|
|
|
|
.ipsDrawer_close > span {
|
|
font-family: arial, sans-serif;
|
|
line-height: 40px;
|
|
}
|
|
|
|
.ipsDrawer_list {
|
|
width: 100%;
|
|
position: relative;
|
|
list-style: none;
|
|
padding: 0 0 30px 0; /* Add extra padding at bottom to account for iOS issue */
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsDrawer_list > li > a:not( .ipsButton ),
|
|
.ipsDrawer_list > li:not( .ipsDrawer_itemParent ) > a:not( .ipsButton ) {
|
|
color: #fff;
|
|
display: block;
|
|
padding: 10px 15px;
|
|
border-bottom: 1px solid #000;
|
|
border-top: 1px solid rgba(255,255,255,0.05);
|
|
}
|
|
|
|
.ipsDrawer_list > li > a:active {
|
|
background: #000;
|
|
}
|
|
|
|
.ipsDrawer_itemParent > .ipsDrawer_list > li > a:not( .ipsButton ) {
|
|
padding: 10px 30px;
|
|
}
|
|
|
|
.ipsDrawer_section {
|
|
color: rgba(255,255,255,0.4);
|
|
font-size: 11px;
|
|
padding: 15px 30px 5px;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.ipsDrawer_itemParent > h4 {
|
|
font-weight: normal;
|
|
color: #fff;
|
|
padding: 10px 15px;
|
|
position: relative;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
border-bottom: 1px solid #000;
|
|
border-top: 1px solid rgba(255,255,255,0.05);
|
|
}
|
|
.ipsDrawer_itemParent > .ipsDrawer_list > .ipsDrawer_itemParent > h4 {
|
|
padding: 10px 30px;
|
|
}
|
|
html[dir="ltr"] .ipsDrawer_itemParent > h4:after {
|
|
content: "\f105";
|
|
right: 14px;
|
|
}
|
|
html[dir="rtl"] .ipsDrawer_itemParent > h4:after {
|
|
content: "\f104";
|
|
left: 14px;
|
|
}
|
|
|
|
.ipsDrawer_itemParent > h4 > a {
|
|
color: inherit;
|
|
display: block;
|
|
}
|
|
|
|
.ipsDrawer_list .ipsDrawer_list {
|
|
position: absolute;
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsDrawer_list .ipsDrawer_list {
|
|
left: 100%;
|
|
}
|
|
html[dir="rtl"] .ipsDrawer_list .ipsDrawer_list {
|
|
right: 100%;
|
|
}
|
|
|
|
.ipsDrawer_list [data-action="back"] a {
|
|
position: relative;
|
|
background: #000;
|
|
color: #a9a9a9;
|
|
}
|
|
html[dir="ltr"] .ipsDrawer_list [data-action="back"] a {
|
|
padding-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsDrawer_list [data-action="back"] a {
|
|
padding-right: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDrawer_list [data-action="back"] a:before {
|
|
content: "\f104";
|
|
left: 14px;
|
|
}
|
|
html[dir="rtl"] .ipsDrawer_list [data-action="back"] a:before {
|
|
content: "\f105";
|
|
right: 14px;
|
|
}
|
|
|
|
.ipsDrawer_itemParent > h4:after,
|
|
.ipsDrawer_list [data-action="back"] a:before {
|
|
font-family: "FontAwesome";
|
|
font-size: 20px;
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -10px;
|
|
}
|
|
|
|
.ipsDrawer_listTitle {
|
|
font-size: 14px;
|
|
background: rgba(255,255,255,0.1);
|
|
padding: 10px;
|
|
color: #c8c8c8;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
|
|
|
|
/* HIGH RES IMAGES */
|
|
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
|
|
.ipsApp .ipsShareIcon {
|
|
background-image: url( "{resource="icon_share@2x.png" app="core" location="front"}" );
|
|
}
|
|
|
|
html[dir="ltr"] .ipsApp .ipsStepBar > .ipsStep > a,
|
|
html[dir="ltr"] .ipsApp .ipsStepBar > .ipsStep > span {
|
|
background-image: url( "{resource="wizard_step_large@2x.png" app="core" location="front"}" );
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsStepBar > .ipsStep > a,
|
|
html[dir="rtl"] .ipsApp .ipsStepBar > .ipsStep > span {
|
|
background-image: url( "{resource="wizard_step_large_rtl@2x.png" app="core" location="front"}" );
|
|
}
|
|
|
|
html[dir="ltr"] .ipsApp .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
|
|
background-image: url( "{resource="wizard_step_extra@2x.png" app="core" location="front"}" );
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
|
|
background-image: url( "{resource="wizard_step_extra_rtl@2x.png" app="core" location="front"}" );
|
|
}
|
|
|
|
html[dir="ltr"] .ipsApp .ipsDataItem_subList {
|
|
background-image: url( "{resource="subitem_stem@2x.png" app="core" location="front"}" );
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsDataItem_subList {
|
|
background-image: url( "{resource="subitem_stem_rtl@2x.png" app="core" location="front"}" );
|
|
}
|
|
}
|
|
|
|
/* Redirector */
|
|
.ipsRedirect {
|
|
text-align: center;
|
|
}
|
|
.ipsRedirect_loading {
|
|
height: 100px;
|
|
}
|
|
.ipsRedirect_progress {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.ipsRedirectMessage {
|
|
margin: 50px;
|
|
}
|
|
|
|
.ipsRedirect_manualButton {
|
|
margin-top: 20px;
|
|
}
|
|
|
|
/* Default responsive styles */
|
|
/* DESKTOP/DEFAULT */
|
|
.ipsResponsive_showDesktop,
|
|
.ipsResponsive_showDesktop.ipsResponsive_inline {
|
|
display: inline !important;
|
|
}
|
|
.ipsResponsive_showDesktop.ipsResponsive_inlineBlock {
|
|
display: inline-block !important;
|
|
}
|
|
.ipsResponsive_showDesktop.ipsResponsive_block {
|
|
display: block !important;
|
|
}
|
|
|
|
.ipsResponsive_showPhone.ipsResponsive_inline,
|
|
.ipsResponsive_showPhone.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showPhone.ipsResponsive_block,
|
|
.ipsResponsive_showTablet.ipsResponsive_inline,
|
|
.ipsResponsive_showTablet.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showTablet.ipsResponsive_block,
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inline,
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_hideDesktop.ipsResponsive_block {
|
|
display: none !important;
|
|
}
|
|
|
|
#elLicenseKey {
|
|
margin: 0;
|
|
border-radius: 0;
|
|
font-size: 14px;
|
|
padding-right: 40px;
|
|
}
|
|
|
|
#elLicenseKey .ipsList_inline {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
#elLicenseKey [data-role="closeMessage"] {
|
|
display: inline-block;
|
|
background: rgba(0,0,0,0.6);
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 30px;
|
|
line-height: 28px;
|
|
text-align: center;
|
|
color: #fff;
|
|
border-bottom: 0;
|
|
font-size: 18px;
|
|
position: absolute;
|
|
right: 15px;
|
|
top: 15px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="layout.css"><![CDATA[#ipsLayout_body {
|
|
z-index: 1000;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
#ipsLayout_header {
|
|
position: relative;
|
|
}
|
|
|
|
#ipsLayout_contentArea {
|
|
display: table;
|
|
width: 100%;
|
|
border-top: 0;
|
|
}
|
|
|
|
#ipsLayout_contentWrapper {
|
|
width: 100%;
|
|
background-color: {theme="area_background_reset"};
|
|
}
|
|
|
|
#ipsLayout_mainArea, #ipsLayout_sidebar {
|
|
background: #fff;
|
|
display: table-cell;
|
|
height: 100%;
|
|
vertical-align: top;
|
|
{prefix="box-sizing" value="border-box"}
|
|
}
|
|
|
|
#ipsLayout_mainArea:only-of-type {
|
|
display: block;
|
|
}
|
|
|
|
#ipsLayout_mainArea {
|
|
width: 100%;
|
|
min-height: 350px;
|
|
padding: 0px 20px;
|
|
}
|
|
|
|
.ipsLayout_minimal #ipsLayout_mainArea {
|
|
padding-top: 15px;
|
|
}
|
|
|
|
#ipsLayout_sidebar {
|
|
min-width: 315px;
|
|
max-width: 315px;
|
|
padding: 10px 0 15px 0;
|
|
overflow: hidden;
|
|
border-radius: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #ipsLayout_sidebar.ipsLayout_sidebarleft,
|
|
html[dir="rtl"] #ipsLayout_sidebar.ipsLayout_sidebarright {
|
|
padding-left: 20px;
|
|
}
|
|
html[dir="ltr"] #ipsLayout_sidebar.ipsLayout_sidebarright,
|
|
html[dir="rtl"] #ipsLayout_sidebar.ipsLayout_sidebarleft {
|
|
padding-right: 20px;
|
|
}
|
|
|
|
body:not( .cWidgetsManaging ) #ipsLayout_sidebar.ipsLayout_sidebarUnused,
|
|
body.ipsLayout_sidebarUnused:not( .cWidgetsManaging ) #ipsLayout_sidebar {
|
|
min-width: 1px;
|
|
width: 0;
|
|
padding: 0 !important;
|
|
}
|
|
|
|
#ipsLayout_contentWrapper #ipsLayout_sidebar:first-child {
|
|
padding: 15px 15px 15px 15px;
|
|
}
|
|
|
|
#elContextualTools {
|
|
padding: 15px 15px 30px 15px;
|
|
margin: -15px -15px 10px -15px;
|
|
{prefix="transition" value="box-shadow 0.3s linear"}
|
|
}
|
|
|
|
#elContextualTools.ipsSticky {
|
|
margin-top: 0;
|
|
padding: 15px;
|
|
}
|
|
|
|
#ipsLayout_footer {
|
|
margin: 20px 0;
|
|
}
|
|
|
|
#ipsLayout_footer p {
|
|
margin: 0;
|
|
}
|
|
|
|
#ipsLayout_footer a, #ipsLayout_footer p {
|
|
font-size: 14px;
|
|
color: #333;
|
|
/*text-shadow: 0px 1px 0px rgba(255,255,255,0.7);*/
|
|
text-decoration: none;
|
|
}
|
|
|
|
#ipsLayout_footer #elCopyright {
|
|
opacity: 0.6;
|
|
font-size: 12px;
|
|
margin-top: 5px;
|
|
text-align: center;
|
|
}
|
|
#elCopyright_userLine {
|
|
display: block;
|
|
}
|
|
|
|
.ipsLayout_container {
|
|
{{if theme.enable_fluid_width}}
|
|
{{if theme.fluid_width_size}}
|
|
max-width: {theme="fluid_width_size"}%;
|
|
{{else}}
|
|
max-width: 100%;
|
|
{{endif}}
|
|
{{else}}
|
|
max-width: 1340px;
|
|
{{endif}}
|
|
padding: 0 15px;
|
|
margin: 0 auto;
|
|
position: relative;
|
|
}
|
|
|
|
/* SIMPLIFIED WRAPPER */
|
|
.ipsLayout_minimal #ipsLayout_header #elUserNav,
|
|
.ipsLayout_minimal #elSearch,
|
|
.ipsLayout_minimal #ipsLayout_mainNav li,
|
|
.ipsLayout_minimal #elMobileNav,
|
|
.ipsLayout_minimal .ipsBreadcrumb {
|
|
display: none !important;
|
|
}
|
|
|
|
.ipsLayout_minimal .ipsLayout_container {
|
|
max-width: 1000px;
|
|
}
|
|
|
|
/* SPACER STYLES */
|
|
.ipsApp .ipsSpacer_top, .ipsApp .ipsSpacer_both {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.ipsApp .ipsSpacer_top.ipsSpacer_double, .ipsApp .ipsSpacer_both.ipsSpacer_double {
|
|
margin-top: 30px;
|
|
}
|
|
|
|
.ipsApp .ipsSpacer_top.ipsSpacer_half, .ipsApp .ipsSpacer_both.ipsSpacer_half {
|
|
margin-top: 7px;
|
|
}
|
|
|
|
.ipsApp .ipsSpacer_bottom, .ipsApp .ipsSpacer_both {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.ipsApp .ipsSpacer_bottom.ipsSpacer_double, .ipsApp .ipsSpacer_both.ipsSpacer_double {
|
|
margin-bottom: 30px;
|
|
}
|
|
|
|
.ipsApp .ipsSpacer_bottom.ipsSpacer_half, .ipsApp .ipsSpacer_both.ipsSpacer_half {
|
|
margin-bottom: 7px;
|
|
}
|
|
|
|
/* Fixed column sizing */
|
|
.ipsColumns {
|
|
width: 100%;
|
|
display: table;
|
|
table-layout: fixed;
|
|
border-collapse: collapse;
|
|
border-spacing: 0;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_horizontalSpacing,
|
|
.ipsColumns.ipsColumns_verticalSpacing,
|
|
.ipsColumns.ipsColumns_bothSpacing,
|
|
.ipsColumns.ipsColumns_noSpacing {
|
|
border-collapse: separate;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_horizontalSpacing {
|
|
border-spacing: 15px 0;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_horizontalSpacing.ipsColumns_halfSpacing {
|
|
border-spacing: 7px 0;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_verticalSpacing {
|
|
border-spacing: 0 15px;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_verticalSpacing.ipsColumns_halfSpacing {
|
|
border-spacing: 0 7px;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_bothSpacing {
|
|
border-spacing: 15px;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_bothSpacing.ipsColumns_halfSpacing {
|
|
border-spacing: 7px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsColumns > .ipsColumn:first-child:not( .ipsPad ),
|
|
html[dir="ltr"] .ipsColumns.ipsColumns_noSpacing > .ipsColumn:not( .ipsPad ) {
|
|
padding-left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsColumns > .ipsColumn:last-child:not( .ipsPad ),
|
|
html[dir="ltr"] .ipsColumns.ipsColumns_noSpacing > .ipsColumn:not( .ipsPad ) {
|
|
padding-right: 0;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsColumns > .ipsColumn:first-child:not( .ipsPad ),
|
|
html[dir="rtl"] .ipsColumns.ipsColumns_noSpacing > .ipsColumn:not( .ipsPad ) {
|
|
padding-right: 0;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsColumns > .ipsColumn:last-child:not( .ipsPad ),
|
|
html[dir="rtl"] .ipsColumns.ipsColumns_noSpacing > .ipsColumn:not( .ipsPad ) {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.ipsColumn {
|
|
display: table-cell;
|
|
position: relative;
|
|
vertical-align: top;
|
|
padding: 0 7px;
|
|
}
|
|
|
|
.ipsColumn_veryNarrow {
|
|
width: 50px;
|
|
}
|
|
|
|
.ipsColumn_narrow {
|
|
width: 120px;
|
|
}
|
|
|
|
.ipsColumn_medium {
|
|
width: 200px;
|
|
}
|
|
|
|
.ipsColumn_wide {
|
|
width: 280px;
|
|
}
|
|
|
|
.ipsColumn_veryWide {
|
|
width: 360px;
|
|
}
|
|
|
|
.ipsColumn_fluid {
|
|
width: 100%;
|
|
}
|
|
|
|
/*.ipsColumn_filterBar {
|
|
position: absolute;
|
|
left: 0;
|
|
width: 350px;
|
|
height: 100%;
|
|
z-index: 5000;
|
|
}*/
|
|
|
|
.ipsFilter_layout {
|
|
position: absolute !important;
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* The following grid styles renamed from Bootstrap */
|
|
/**
|
|
* Bootstrap v2.2.2
|
|
*
|
|
* Copyright 2012 Twitter, Inc
|
|
* Licensed under the Apache License v2.0
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
|
*/
|
|
ul.ipsGrid, ol.ipsGrid {
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsGrid:before,
|
|
.ipsGrid:after {
|
|
display: table;
|
|
content: "";
|
|
line-height: 0;
|
|
}
|
|
|
|
.ipsGrid:after {
|
|
clear: both;
|
|
}
|
|
|
|
.ipsGrid > [class*="ipsGrid_span"] {
|
|
display: block;
|
|
width: 100%;
|
|
min-height: 30px;
|
|
{prefix="box-sizing" value="border-box"}
|
|
}
|
|
html[dir="ltr"] .ipsGrid > [class*="ipsGrid_span"] {
|
|
float: left;
|
|
margin-left: 2.127659574468085%;
|
|
}
|
|
html[dir="rtl"] .ipsGrid > [class*="ipsGrid_span"] {
|
|
float: right;
|
|
margin-right: 2.127659574468085%;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsGrid > [class*="ipsGrid_span"]:first-child {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsGrid > [class*="ipsGrid_span"]:first-child {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsGrid .controls-row [class*="ipsGrid_span"] + [class*="ipsGrid_span"] {
|
|
margin-left: 2.127659574468085%;
|
|
}
|
|
html[dir="rtl"] .ipsGrid .controls-row [class*="ipsGrid_span"] + [class*="ipsGrid_span"] {
|
|
margin-right: 2.127659574468085%;
|
|
}
|
|
|
|
.ipsApp .ipsGrid > .ipsGrid_span12 { width: 100%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span11 { width: 91.48936170212765%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span10 { width: 82.97872340425532%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span9 { width: 74.46808510638297%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span8 { width: 65.95744680851064%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span7 { width: 57.44680851063829%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span6 { width: 48.93617021276595%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span5 { width: 40.42553191489362%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span4 { width: 31.914893617021278%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span3 { width: 23.404255319148934%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span2 { width: 14.893617021276595%; }
|
|
.ipsApp .ipsGrid > .ipsGrid_span1 { width: 6.382978723404255%; }
|
|
|
|
/* End Bootstrap */
|
|
|
|
/* Additional styles that save us from having to open a new 'row' (only for spans that 12 is divisible by)
|
|
Instead, we can just build a long list of items with grid classes, and the margin will work properly */
|
|
|
|
ol.ipsGrid > li, ul.ipsGrid > li {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsGrid_span12:nth-child( 1n ),
|
|
html[dir="ltr"] .ipsGrid_span12 + [class*="ipsGrid_span"],
|
|
html[dir="ltr"] .ipsGrid_span6:nth-child( odd ),
|
|
html[dir="ltr"] .ipsGrid_span4:nth-child( 3n+1 ),
|
|
html[dir="ltr"] .ipsGrid_span3:nth-child( 4n+1 ),
|
|
html[dir="ltr"] .ipsGrid_span2:nth-child( 6n+1 ),
|
|
html[dir="ltr"] .ipsGrid_span1:nth-child( 12n+1 ) {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsGrid_span12:nth-child( 1n ),
|
|
html[dir="rtl"] .ipsGrid_span12 + [class*="ipsGrid_span"],
|
|
html[dir="rtl"] .ipsGrid_span6:nth-child( odd ),
|
|
html[dir="rtl"] .ipsGrid_span4:nth-child( 3n+1 ),
|
|
html[dir="rtl"] .ipsGrid_span3:nth-child( 4n+1 ),
|
|
html[dir="rtl"] .ipsGrid_span2:nth-child( 6n+1 ),
|
|
html[dir="rtl"] .ipsGrid_span1:nth-child( 12n+1 ) {
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* Patchwork styles */
|
|
.ipsPatchwork > li {
|
|
margin-bottom: 0 !important;
|
|
}
|
|
|
|
.ipsGrid > li [data-role="patchworkItem"] + [data-role="patchworkItem"] {
|
|
margin-top: 15px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="lightbox.css">/* Lightbox: the image viewer used throughout the front-end */
|
|
.ipsLightbox {
|
|
background: rgba(20,20,20,0.95);
|
|
position: fixed;
|
|
top: 40px;
|
|
bottom: 40px;
|
|
left: 40px;
|
|
right: 40px;
|
|
box-shadow: 0px 5px 55px rgba(0,0,0,0.4);
|
|
}
|
|
|
|
.ipsLightbox_imagePanel {
|
|
position: absolute !important; /* required to stop conflicts with ipsLoading */
|
|
top: 0px;
|
|
bottom: 0px;
|
|
overflow: hidden;
|
|
}
|
|
html[dir="ltr"] .ipsLightbox_imagePanel {
|
|
left: 0px;
|
|
right: 0;
|
|
margin-left: 35px;
|
|
margin-right: 25px;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_imagePanel {
|
|
right: 0px;
|
|
left: 0;
|
|
margin-left: 25px;
|
|
margin-right: 35px;
|
|
}
|
|
|
|
hmtl[dir="ltr"] .ipsLightbox_imagePanel.ipsLightbox_withComments {
|
|
right: 350px;
|
|
}
|
|
hmtl[dir="rtl"] .ipsLightbox_imagePanel.ipsLightbox_withComments {
|
|
left: 350px;
|
|
}
|
|
|
|
.ipsLightbox_imagePanel .ipsLightbox_image {
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
position: absolute;
|
|
z-index: 1000;
|
|
}
|
|
|
|
.ipsLightbox_commentsPanel {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 350px;
|
|
background-color: #fff;
|
|
overflow-y: auto;
|
|
}
|
|
html[dir="ltr"] .ipsLightbox_commentsPanel {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_commentsPanel {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsLightbox_commentsPanel.ipsLoading {
|
|
min-height: 100px;
|
|
}
|
|
|
|
.ipsLightbox_next, .ipsLightbox_prev {
|
|
font-size: 65px;
|
|
line-height: 65px;
|
|
color: #fff;
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -32px;
|
|
opacity: 0;
|
|
cursor: pointer;
|
|
z-index: 5000;
|
|
{prefix="transition" value="opacity 0.3s linear"}
|
|
}
|
|
|
|
.ipsLightbox_fullSize {
|
|
position: absolute;
|
|
bottom: 5px;
|
|
z-index: 5000;
|
|
}
|
|
html[dir="ltr"] .ipsLightbox_fullSize {
|
|
left: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_fullSize {
|
|
right: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsLightbox_next {
|
|
right: 20px;
|
|
}
|
|
html[dir="ltr"] .ipsLightbox_prev {
|
|
left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_next {
|
|
left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_prev {
|
|
right: 20px;
|
|
}
|
|
|
|
.ipsLightbox_imagePanel:hover .ipsLightbox_next,
|
|
.ipsLightbox_imagePanel:hover .ipsLightbox_prev {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.ipsLightbox_imagePanel .ipsLightbox_next:hover, .ipsLightbox_imagePanel .ipsLightbox_prev:hover {
|
|
opacity: 1;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsLightbox_meta {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
background: #000;
|
|
min-height: 50px;
|
|
z-index: 10000;
|
|
opacity: 0;
|
|
padding: 15px;
|
|
color: #fff;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
|
|
html[dir="ltr"] .ipsLightbox_imagePanel.ipsLightbox_withComments + .ipsLightbox_meta {
|
|
right: 350px;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_imagePanel.ipsLightbox_withComments + .ipsLightbox_meta {
|
|
left: 350px;
|
|
}
|
|
|
|
.ipsLightbox_imagePanel:hover + .ipsLightbox_meta {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsLightbox_close {
|
|
font-size: 38px;
|
|
color: #fff;
|
|
position: absolute;
|
|
top: 10px;
|
|
cursor: pointer;
|
|
}
|
|
html[dir="ltr"] .ipsLightbox_close {
|
|
right: 10px;
|
|
z-index: 100;
|
|
}
|
|
html[dir="rtl"] .ipsLightbox_close {
|
|
left: 10px;
|
|
}
|
|
|
|
.ipsLightbox_close:hover {
|
|
color: #fff;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="menus.css"><![CDATA[/* Menus: various kinds of menu used in the interface */
|
|
/* ======================================================== */
|
|
/* BASIC MENU */
|
|
.ipsMenu {
|
|
background: #fff;
|
|
box-shadow: 0px 7px 20px rgba(0, 0, 0, 0.2);
|
|
border: 1px solid #ebebeb;
|
|
border-radius: 3px;
|
|
z-index: 10000;
|
|
position: absolute;
|
|
}
|
|
|
|
.ipsMenu .ipsMenu_item:first-child a,
|
|
.ipsMenu .ipsMenu_item:first-child > span {
|
|
border-top-left-radius: 3px;
|
|
border-top-right-radius: 3px;
|
|
}
|
|
|
|
.ipsMenu .ipsMenu_item:last-child a,
|
|
.ipsMenu .ipsMenu_item:last-child > span {
|
|
border-bottom-left-radius: 3px;
|
|
border-bottom-right-radius: 3px;
|
|
}
|
|
|
|
ul.ipsMenu, .ipsMenu > ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsJS_none .ipsMenu:target {
|
|
display: block !important; /* Allows menus to work with JS disabled, by showing them when the anchor is visited */
|
|
}
|
|
|
|
.ipsMenu_innerContent {
|
|
max-height: 350px;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsMenu_innerContent .ipsDataList {
|
|
position: static;
|
|
}
|
|
|
|
.ipsMenu.ipsLoading {
|
|
min-height: 100px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* WIDTHS */
|
|
.ipsMenu_auto {
|
|
min-width: 200px;
|
|
max-width: 500px;
|
|
}
|
|
|
|
.ipsMenu_veryNarrow {
|
|
width: 140px;
|
|
}
|
|
|
|
.ipsMenu_narrow {
|
|
width: 200px;
|
|
}
|
|
|
|
.ipsMenu_normal {
|
|
width: 300px;
|
|
}
|
|
|
|
.ipsMenu_wide {
|
|
width: 450px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MENU ITEMS */
|
|
.ipsMenu_item {
|
|
text-align: left;
|
|
line-height: 1.4;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_item {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsMenu_item > a,
|
|
.ipsMenu_item > span {
|
|
display: block;
|
|
padding: 8px 15px;
|
|
color: #333;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.ipsMenu_item:not( .ipsMenu_itemClicked ):not( .ipsMenu_itemDisabled ) a:hover, .ipsMenu_item[data-selected] a, .ipsMenu_item[data-selected] span {
|
|
background: #f0f0f0;
|
|
}
|
|
|
|
.ipsMenu_itemDisabled > a,
|
|
.ipsMenu_itemDisabled > span {
|
|
color: #c2c2c2;
|
|
font-style: italic;
|
|
cursor: default;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsMenu_sep {
|
|
border-top: 1px solid #e2e2e2;
|
|
margin: 4px;
|
|
}
|
|
|
|
.ipsMenu_sep hr {
|
|
display: none;
|
|
}
|
|
|
|
.ipsMenu_subItems > a,
|
|
.ipsMenu_subItems > span {
|
|
position: relative;
|
|
}
|
|
html[dir="ltr"] .ipsMenu_subItems > a,
|
|
html[dir="ltr"] .ipsMenu_subItems > span {
|
|
padding-right: 25px;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_subItems > a,
|
|
html[dir="rtl"] .ipsMenu_subItems > span {
|
|
padding-left: 25px;
|
|
}
|
|
|
|
.ipsMenu_subItems > a:after {
|
|
font-family: "FontAwesome";
|
|
position: absolute;
|
|
top: 9px;
|
|
}
|
|
html[dir="ltr"] .ipsMenu_subItems > a:after,
|
|
html[dir="ltr"] .ipsMenu_subItems > span:after {
|
|
content: '\f0da';
|
|
right: 9px;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_subItems > a:after,
|
|
html[dir="rtl"] .ipsMenu_subItems > span:after {
|
|
content: '\f0d9';
|
|
left: 9px;
|
|
}
|
|
|
|
.ipsMenu_subItems .ipsMenu {
|
|
position: absolute;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MENU STEMS (the arrow that points to the target */
|
|
.ipsMenu:not( .ipsMenu_noStem ):after,
|
|
.ipsMenu:not( .ipsMenu_noStem ):before {
|
|
content: '';
|
|
display: none;
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
}
|
|
|
|
.ipsMenu:not( .ipsMenu_noStem ):after {
|
|
border-width: 15px;
|
|
z-index: 200;
|
|
}
|
|
|
|
.ipsMenu:not( .ipsMenu_noStem ):before {
|
|
border-width: 16px;
|
|
z-index: 100;
|
|
}
|
|
|
|
.ipsMenu_topLeft:after, .ipsMenu_topRight:after, .ipsMenu_topCenter:after,
|
|
.ipsMenu_bottomLeft:after, .ipsMenu_bottomRight:after, .ipsMenu_bottomCenter:after,
|
|
.ipsMenu_topLeft:before, .ipsMenu_topRight:before, .ipsMenu_topCenter:before,
|
|
.ipsMenu_bottomLeft:before, .ipsMenu_bottomRight:before, .ipsMenu_bottomCenter:before {
|
|
/* try and make sure the stem doesn't receive any focus */
|
|
pointer-events: none;
|
|
display: block !important;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_topLeft, .ipsMenu.ipsMenu_topRight, .ipsMenu.ipsMenu_topCenter {
|
|
margin-top: -10px;
|
|
}
|
|
.ipsMenu.ipsMenu_bottomLeft, .ipsMenu.ipsMenu_bottomRight, .ipsMenu.ipsMenu_bottomCenter {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_topLeft:after {
|
|
border-color: #fff transparent transparent transparent;
|
|
left: 10px;
|
|
top: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_topLeft:before {
|
|
border-color: #ebebeb transparent transparent transparent;
|
|
left: 9px;
|
|
top: 100%;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_topRight:after {
|
|
border-color: #fff transparent transparent transparent;
|
|
right: 10px;
|
|
top: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_topRight:before {
|
|
border-color: #ebebeb transparent transparent transparent;
|
|
right: 9px;
|
|
top: 100%;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_topCenter:after {
|
|
border-color: #fff transparent transparent transparent;
|
|
left: 50%;
|
|
margin-left: -15px;
|
|
top: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_topCenter:before {
|
|
border-color: #ebebeb transparent transparent transparent;
|
|
left: 50%;
|
|
margin-left: -16px;
|
|
top: 100%;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_bottomRight:after {
|
|
border-color: transparent transparent #fff transparent;
|
|
right: 10px;
|
|
bottom: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_bottomRight:before {
|
|
border-color: transparent transparent #ebebeb transparent;
|
|
right: 9px;
|
|
bottom: 100%;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_bottomLeft:after {
|
|
border-color: transparent transparent #fff transparent;
|
|
left: 10px;
|
|
bottom: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_bottomLeft:before {
|
|
border-color: transparent transparent #ebebeb transparent;
|
|
left: 9px;
|
|
bottom: 100%;
|
|
}
|
|
|
|
.ipsMenu.ipsMenu_bottomCenter:after {
|
|
border-color: transparent transparent #fff transparent;
|
|
left: 50%;
|
|
margin-left: -15px;
|
|
bottom: 100%;
|
|
}
|
|
.ipsMenu.ipsMenu_bottomCenter:before {
|
|
border-color: transparent transparent #ebebeb transparent;
|
|
left: 50%;
|
|
margin-left: -16px;
|
|
margin-top: -1px;
|
|
bottom: 100%;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* OTHER MENU */
|
|
.ipsMenu_title {
|
|
background: #e5e5e5;
|
|
padding: 7px 10px;
|
|
margin: 5px;
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsMenu_headerBar, .ipsMenu_footerBar {
|
|
padding: 10px;
|
|
line-height: 24px;
|
|
background: rgb(255,255,255);
|
|
background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(242,244,247,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(242,244,247,1)));
|
|
background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,244,247,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,244,247,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(242,244,247,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(242,244,247,1) 100%);
|
|
}
|
|
|
|
.ipsMenu_headerBar {
|
|
border-bottom: 1px solid #e0e0e0;
|
|
box-shadow: 0px 1px 6px rgba(0,0,0,0.07);
|
|
border-radius: 3px 3px 0px 0px;
|
|
}
|
|
|
|
.ipsMenu_footerBar {
|
|
border-top: 1px solid #e0e0e0;
|
|
box-shadow: 0px -1px 6px rgba(0,0,0,0.07);
|
|
border-radius: 0px 0px 3px 3px;
|
|
}
|
|
|
|
/* Counts for menu items */
|
|
.ipsMenu_itemCount, .ipsSideMenu_itemCount {
|
|
line-height: 18px;
|
|
padding: 0 5px;
|
|
background: #f7f7f7;
|
|
color: #6d6d6d;
|
|
font-size: 10px;
|
|
font-weight: bold;
|
|
border-radius: 2px;
|
|
}
|
|
html[dir="ltr"] .ipsMenu_itemCount, html[dir="ltr"] .ipsSideMenu_itemCount {
|
|
float: right;
|
|
margin-right: -5px;
|
|
margin-left: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_itemCount, html[dir="rtl"] .ipsSideMenu_itemCount {
|
|
float: left;
|
|
margin-left: -5px;
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.ipsMenu_item:not( .ipsMenu_itemClicked ) a:hover .ipsMenu_itemCount,
|
|
.ipsMenu_item:not( .ipsMenu_itemClicked ) button:hover .ipsMenu_itemCount {
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsSideMenu_itemActive .ipsSideMenu_itemCount {
|
|
background: rgba(255,255,255,0.2);
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsSideMenu_itemActive .ipsSideMenu_itemCount.ipsSideMenu_clearCount {
|
|
background: transparent;
|
|
}
|
|
|
|
/* Selectable items for menus */
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a,
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span,
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button {
|
|
padding-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a,
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span,
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button {
|
|
padding-right: 30px;
|
|
}
|
|
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a:before,
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span:before,
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button:before {
|
|
content: '\f10c';
|
|
font-size: 14px;
|
|
position: absolute;
|
|
font-family: 'FontAwesome';
|
|
padding-left: 10px;
|
|
color: rgba(0,0,0,0.05);
|
|
}
|
|
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a:before,
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span:before,
|
|
html[dir="ltr"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button:before {
|
|
left: 0;
|
|
padding-left: 10px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a:before,
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span:before,
|
|
html[dir="rtl"] .ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button:before {
|
|
right: 0;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
.ipsMenu_selectable .ipsMenu_item.ipsMenu_itemChecked a,
|
|
.ipsMenu_selectable .ipsMenu_item.ipsMenu_itemChecked > span,
|
|
.ipsMenu_selectable .ipsMenu_item.ipsMenu_itemChecked button {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ).ipsMenu_itemChecked a:before,
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ).ipsMenu_itemChecked > span:before,
|
|
.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ).ipsMenu_itemChecked button:before {
|
|
content: '\f00c';
|
|
color: inherit;
|
|
}
|
|
|
|
.ipsMenu_selectable button {
|
|
width: 100%;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsMenu_selectable button {
|
|
text-align: left;
|
|
}
|
|
html[dir="rtl"] .ipsMenu_selectable button {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsMenu_selectable .ipsMenu_item:not( [data-noselect] ) input[type="radio"],
|
|
.ipsMenu_selectable .ipsMenu_item:not( [data-noselect] ) input[type="checkbox"] {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* AUTOCOMPLETE MENUS */
|
|
.ipsAutocompleteMenu {
|
|
background: #fff;
|
|
box-shadow: 0px 5px 10px rgba(0,0,0,0.2);
|
|
border-radius: 3px;
|
|
/*width: 300px;*/
|
|
z-index: 10000;
|
|
position: absolute;
|
|
max-height: 200px;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsAutocompleteMenu_item {
|
|
padding: 8px;
|
|
}
|
|
|
|
.ipsAutocompleteMenu_item[data-selected] {
|
|
background: #ebf4f9;
|
|
cursor: pointer;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SIDE MENUS */
|
|
.ipsSideMenu_mainTitle {
|
|
display: none;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsSideMenu_title {
|
|
text-transform: uppercase;
|
|
font-weight: bold;
|
|
margin: 0 0 5px 0;
|
|
padding-bottom: 5px;
|
|
color: #000;
|
|
}
|
|
html[dir="ltr"] .ipsSideMenu_title {
|
|
padding-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsSideMenu_title {
|
|
padding-right: 10px;
|
|
}
|
|
|
|
.ipsSideMenu_titleExtra {
|
|
text-transform: none;
|
|
font-weight: normal;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.ipsSideMenu_subTitle {
|
|
margin: 5px 0 0;
|
|
padding: 8px 10px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsSideMenu_item {}
|
|
|
|
.ipsSideMenu_item a, a.ipsSideMenu_item {
|
|
display: block;
|
|
padding: 8px 10px;
|
|
position: relative;
|
|
margin-bottom: 2px;
|
|
color: inherit;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsSideMenu_small .ipsSideMenu_item {
|
|
padding: 5px 10px;
|
|
}
|
|
|
|
.ipsSideMenu_item:not( .ipsSideMenu_itemActive ) a:hover, a.ipsSideMenu_item:not( .ipsSideMenu_itemActive ):hover {
|
|
background: #f5f5f5;
|
|
}
|
|
|
|
.ipsSideMenu_item .ipsBadge {
|
|
position: relative;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsSideMenu_withChecks .ipsSideMenu_item a,
|
|
html[dir="ltr"] .ipsSideMenu_withChecks a.ipsSideMenu_item,
|
|
html[dir="ltr"] .ipsSideMenu_withRadios .ipsSideMenu_item a,
|
|
html[dir="ltr"] .ipsSideMenu_withRadios a.ipsSideMenu_item {
|
|
padding-left: 28px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsSideMenu_withChecks .ipsSideMenu_item a,
|
|
html[dir="rtl"] .ipsSideMenu_withChecks a.ipsSideMenu_item,
|
|
html[dir="rtl"] .ipsSideMenu_withRadios .ipsSideMenu_item a,
|
|
html[dir="rtl"] .ipsSideMenu_withRadios a.ipsSideMenu_item {
|
|
padding-right: 28px;
|
|
}
|
|
|
|
.ipsJS_has .ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"],
|
|
.ipsJS_has .ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"] {
|
|
display: none;
|
|
}
|
|
|
|
.ipsSideMenu_withChecks .ipsSideMenu_item a:after, .ipsSideMenu_withChecks a.ipsSideMenu_item:after,
|
|
.ipsSideMenu_withRadios .ipsSideMenu_item a:after, .ipsSideMenu_withRadios a.ipsSideMenu_item:after {
|
|
content: '\f10c';
|
|
font-family: 'FontAwesome';
|
|
width: 20px;
|
|
height: 20px;
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -10px;
|
|
color: #e5e5e5;
|
|
}
|
|
html[dir="ltr"] .ipsSideMenu_withChecks .ipsSideMenu_item a:after,
|
|
html[dir="ltr"] .ipsSideMenu_withChecks a.ipsSideMenu_item:after,
|
|
html[dir="ltr"] .ipsSideMenu_withRadios .ipsSideMenu_item a:after,
|
|
html[dir="ltr"] .ipsSideMenu_withRadios a.ipsSideMenu_item:after {
|
|
left: 8px;
|
|
}
|
|
html[dir="rtl"] .ipsSideMenu_withChecks .ipsSideMenu_item a:after,
|
|
html[dir="rtl"] .ipsSideMenu_withChecks a.ipsSideMenu_item:after,
|
|
html[dir="rtl"] .ipsSideMenu_withRadios .ipsSideMenu_item a:after,
|
|
html[dir="rtl"] .ipsSideMenu_withRadios a.ipsSideMenu_item:after {
|
|
right: 8px;
|
|
}
|
|
|
|
.ipsSideMenu_withChecks .ipsSideMenu_item a:after, .ipsSideMenu_withChecks a.ipsSideMenu_item:after {
|
|
content: '\f096';
|
|
}
|
|
|
|
.ipsSideMenu_list {
|
|
margin: 0 0 5px 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
.ipsSideMenu_list + .ipsSideMenu_title {
|
|
margin-top: 20px;
|
|
}
|
|
|
|
.ipsSideMenu_itemActive a, a.ipsSideMenu_itemActive,
|
|
.ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"]:checked ~ a,
|
|
.ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"]:checked ~ a {
|
|
background: #151515;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsSideMenu_withChecks .ipsSideMenu_itemActive a:after, .ipsSideMenu_withChecks a.ipsSideMenu_itemActive:after,
|
|
.ipsSideMenu_withRadios .ipsSideMenu_itemActive a:after, .ipsSideMenu_withRadios a.ipsSideMenu_itemActive:after,
|
|
.ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"]:checked ~ a:after,
|
|
.ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"]:checked ~ a:after {
|
|
content: '\f00c';
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsSideMenu_itemDisabled a, a.ipsSideMenu_itemDisabled {
|
|
opacity: 0.6;
|
|
color: #7f7f7f;
|
|
cursor: default;
|
|
}
|
|
|
|
/* Sub lists */
|
|
html[dir="ltr"] .ipsSideMenu_item + .ipsSideMenu_list {
|
|
margin: 0 0 10px 15px;
|
|
border-left: 1px solid rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="rtl"] .ipsSideMenu_item + .ipsSideMenu_list {
|
|
margin: 0 15px 10px 0;
|
|
border-right: 1px solid rgba(0,0,0,0.2);
|
|
}
|
|
|
|
.ipsSideMenu_item + .ipsSideMenu_list .ipsSideMenu_item {
|
|
padding: 1px 10px;
|
|
margin: 0;
|
|
font-size: 12px;
|
|
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="messages.css">/* Messages: to give the user information, warnings etc. */
|
|
/* ======================================================== */
|
|
/* BASE */
|
|
.ipsMessage {
|
|
padding: 15px 15px 15px 45px;
|
|
border-radius: 2px;
|
|
position: relative;
|
|
margin-bottom: 10px;
|
|
color: #fff;
|
|
}
|
|
html[dir="rtl"] .ipsMessage {
|
|
padding: 15px 45px 15px 15px;
|
|
}
|
|
|
|
.ipsMessage:before {
|
|
font-family: 'FontAwesome';
|
|
position: absolute;
|
|
top: 15px;
|
|
font-size: 20px;
|
|
}
|
|
html[dir="ltr"] .ipsMessage:before {
|
|
left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsMessage:before {
|
|
right: 15px;
|
|
}
|
|
|
|
.ipsMessage a {
|
|
color: #fff;
|
|
border-bottom: 1px dotted #fff;
|
|
}
|
|
|
|
.ipsMessage_title {
|
|
margin: 0;
|
|
padding: 0;
|
|
font-size: 16px;
|
|
line-height: 1;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ipsMessage a.ipsButton {
|
|
margin-top: -5px;
|
|
}
|
|
|
|
/* Styles a code displayed in some messages */
|
|
.ipsMessage_code {
|
|
padding: 7px;
|
|
display: inline-block;
|
|
background: rgba(0,0,0,0.2);
|
|
border-radius: 3px;
|
|
margin-top: -7px;
|
|
color: rgba(255,255,255,0.8);
|
|
}
|
|
html[dir="rtl"] .ipsMessage_code {
|
|
float: left;
|
|
margin-right: -7px;
|
|
}
|
|
html[dir="rtl"] .ipsMessage_code {
|
|
float: left;
|
|
margin-left: -7px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ERROR */
|
|
.ipsMessage_error {
|
|
background: #b52b38;
|
|
}
|
|
|
|
.ipsMessage_error:before {
|
|
content: '\f06a';
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SUCCESS */
|
|
.ipsMessage_success {
|
|
background: #dbe2c9;
|
|
color: #556b45;
|
|
}
|
|
|
|
.ipsMessage_success:before {
|
|
content: '\f00c';
|
|
}
|
|
|
|
.ipsMessage_success.ipsMessage a:not(.ipsButton) {
|
|
color: #556b45;
|
|
border-bottom: 1px dotted #556b45;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* WARNING */
|
|
.ipsMessage_warning {
|
|
background: #ede6e0;
|
|
color: #564a3f;
|
|
}
|
|
|
|
.ipsMessage_warning:before {
|
|
content: '\f071';
|
|
}
|
|
|
|
.ipsMessage_warning.ipsMessage a:not(.ipsButton) {
|
|
color: #564a3f;
|
|
border-bottom: 1px dotted #564a3f;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* INFO */
|
|
.ipsMessage_info, .ipsMessage_information {
|
|
background: #5e707d;
|
|
}
|
|
|
|
.ipsMessage_info:before, .ipsMessage_information:before {
|
|
content: '\f05a';
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* OTHER */
|
|
.ipsMessage_general {
|
|
background: #ebebeb;
|
|
color: #333;
|
|
}
|
|
|
|
.ipsMessage_general:before {
|
|
content: '\f05a';
|
|
}
|
|
|
|
.ipsMessage_general.ipsMessage a:not(.ipsButton) {
|
|
color: #333;
|
|
border-bottom: 1px dotted #333;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="misc.css"><![CDATA[/* Miscellanious styles */
|
|
|
|
/* ======================================================== */
|
|
/* BOX STYLES */
|
|
.ipsBox {
|
|
border-width: 0px;
|
|
border-style: solid;
|
|
border-color: #f2f2f2;
|
|
}
|
|
|
|
.ipsBox:not( .ipsBox_transparent ):not( .ipsModerated ) {
|
|
background-color: #fff;
|
|
}
|
|
|
|
.ipsBox.ipsModerated {
|
|
border-color: #ede4e4;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PAGE HEADER AREA*/
|
|
.ipsPageHeader {
|
|
background: transparent;
|
|
border-bottom: 0;
|
|
position: relative;
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.ipsPageHeader h1 {
|
|
display: inline;
|
|
}
|
|
|
|
.ipsPageHeader .ipsPageHeader_info, .ipsPageHeader_info p:first-child {
|
|
margin: 5px 0;
|
|
}
|
|
|
|
.ipsPageHeader .ipsFollow {
|
|
margin-top: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* JS STUFF */
|
|
/* Used when JS is disabled and element set to show when JS enabled */
|
|
.ipsJS_none .ipsJS_show {
|
|
display: none;
|
|
}
|
|
|
|
.ipsJS_has .ipsJS_hide {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MISC COLORS */
|
|
.ipsAreaBackground {
|
|
background: {theme="area_background"};
|
|
}
|
|
|
|
.ipsAreaBackground_light {
|
|
background: {theme="area_background_light"};
|
|
}
|
|
|
|
.ipsAreaBackground_reset {
|
|
background: {theme="area_background_reset"};
|
|
}
|
|
|
|
.ipsAreaBackground_dark {
|
|
background: {theme="area_background_dark"};
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_dark a {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_positive {
|
|
background: #598f5b;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_negative {
|
|
background: #b14848;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_positive .ipsType_sectionHead,
|
|
.ipsAreaBackground_positive .ipsType_sectionTitle,
|
|
.ipsAreaBackground_negative .ipsType_sectionHead,
|
|
.ipsAreaBackground_negative .ipsType_sectionTitle {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsAreaBackground_rounded {
|
|
border-radius: 3px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* USER PHOTOS */
|
|
.ipsUserPhoto {
|
|
background: #fff;
|
|
vertical-align: middle;
|
|
display: inline-block;
|
|
line-height: 1px;
|
|
position: relative;
|
|
margin: 2px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 150px;
|
|
{{else}}
|
|
border-radius: 2px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto:after {
|
|
content: '';
|
|
display: none;
|
|
position: absolute;
|
|
}
|
|
|
|
.ipsUserPhoto_tiny img, img.ipsUserPhoto_tiny, .ipsUserPhoto_tiny:after {
|
|
width: 34px;
|
|
height: 34px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 17px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto_mini img, img.ipsUserPhoto_mini, .ipsUserPhoto_mini:after {
|
|
width: 44px;
|
|
height: 44px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 22px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto_small img, img.ipsUserPhoto_small, .ipsUserPhoto_small:after {
|
|
width: 54px;
|
|
height: 54px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 27px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto_medium img, img.ipsUserPhoto_medium, .ipsUserPhoto_medium:after {
|
|
width: 75px;
|
|
height: 75px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 38px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto_large img, img.ipsUserPhoto_large, .ipsUserPhoto_large:after {
|
|
width: 90px;
|
|
height: 90px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 45px;
|
|
{{endif}}
|
|
}
|
|
|
|
.ipsUserPhoto_xlarge img, img.ipsUserPhoto_xlarge, .ipsUserPhoto_xlarge:after {
|
|
width: 120px;
|
|
height: 120px;
|
|
{{if theme.rounded_photos}}
|
|
border-radius: 60px;
|
|
{{endif}}
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PHOTO PANELS */
|
|
/* Photo panels are used to show a user photo on the left, with content aligned next to it */
|
|
.ipsPhotoPanel > .ipsUserPhoto {
|
|
float: left;
|
|
line-height: 0;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel > .ipsUserPhoto {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_tiny > div {
|
|
margin-left: 45px;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_tiny > div {
|
|
margin-right: 45px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_mini > div {
|
|
margin-left: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_mini > div {
|
|
margin-right: 55px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_small > div {
|
|
margin-left: 70px;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_small > div {
|
|
margin-right: 70px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_medium > div {
|
|
margin-left: 90px;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_medium > div {
|
|
margin-right: 90px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_large > div {
|
|
margin-left: 105px;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_large > div {
|
|
margin-right: 105px;
|
|
}
|
|
|
|
.ipsPhotoPanel .ipsType_sectionHead {
|
|
line-height: 1.3;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* IMAGES & THUMBNAILS */
|
|
.ipsImage {
|
|
max-width: 100%; /* makes them responsive */
|
|
height: auto;
|
|
}
|
|
|
|
.ipsImage_thumbnailed {
|
|
border: 1px solid #E2E2E2;
|
|
padding: 1px;
|
|
}
|
|
|
|
/* A resized image */
|
|
.ipsThumb {
|
|
border: 1px solid #E2E2E2;
|
|
}
|
|
|
|
span.ipsThumb, a.ipsThumb {
|
|
display: block;
|
|
}
|
|
|
|
.ipsThumb_bg {
|
|
background-size: cover;
|
|
background-repeat: no-repeat;
|
|
background-position: 50% 50%;
|
|
background-color: #ebebeb;
|
|
}
|
|
|
|
.ipsThumb_bg img {
|
|
display: none;
|
|
}
|
|
|
|
.ipsThumb_large {
|
|
max-width: 175px;
|
|
max-height: 175px;
|
|
}
|
|
|
|
.ipsThumb_bg.ipsThumb_large {
|
|
width: 175px;
|
|
height: 175px;
|
|
}
|
|
|
|
.ipsThumb_medium {
|
|
max-width: 125px;
|
|
max-height: 125px;
|
|
}
|
|
|
|
.ipsThumb_bg.ipsThumb_medium {
|
|
width: 125px;
|
|
height: 125px;
|
|
}
|
|
|
|
.ipsThumb_small {
|
|
max-width: 75px;
|
|
max-height: 75px;
|
|
}
|
|
|
|
.ipsThumb_bg.ipsThumb_small {
|
|
width: 75px;
|
|
height: 75px;
|
|
}
|
|
|
|
.ipsThumb_tiny {
|
|
max-width: 40px;
|
|
max-height: 40px;
|
|
}
|
|
|
|
.ipsThumb_bg.ipsThumb_tiny {
|
|
width: 40px;
|
|
height: 40px;
|
|
}
|
|
|
|
/* A 'missing thumb' element, used where a preview isn't available */
|
|
.ipsNoThumb {
|
|
background: #262e33;
|
|
text-align: center;
|
|
position: relative;
|
|
width: 200px;
|
|
height: 200px;
|
|
}
|
|
|
|
.ipsNoThumb:after {
|
|
content: '\f030';
|
|
font-family: 'FontAwesome';
|
|
font-size: 30px;
|
|
color: rgba(255,255,255,0.075);
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -10px;
|
|
left: 0;
|
|
right: 0;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsNoThumb_video:after {
|
|
content: '\f008';
|
|
}
|
|
|
|
.ipsNoThumb_product:after {
|
|
content: '\f1b2';
|
|
}
|
|
|
|
.ipsNoThumb_gift:after {
|
|
content: '\f06b';
|
|
}
|
|
|
|
/* Aims to fix responsiveness in Firefox & IE */
|
|
.ipsContained {
|
|
display: table;
|
|
table-layout: fixed;
|
|
width: 100%;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* HORIZONTAL RULE */
|
|
hr.ipsHr {
|
|
margin: 15px 0;
|
|
height: 0;
|
|
padding: 0;
|
|
border-width: 2px 0 0 0;
|
|
border-style: solid;
|
|
border-color: rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.ipsAreaBackground_dark hr.ipsHr {
|
|
border-color: rgba(255,255,255,0.1);
|
|
}
|
|
|
|
hr.ipsHr.ipsHr_thick {
|
|
border-width: 10px 0 0 0;
|
|
border-color: #394248;
|
|
}
|
|
|
|
hr.ipsHr.ipsHr_small {
|
|
margin: 7px 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* LOADING THROBBERS */
|
|
@-webkit-keyframes spinner {
|
|
0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
|
|
100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
|
|
}
|
|
@keyframes spinner {
|
|
0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
|
|
100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
|
|
}
|
|
|
|
.ipsLoading {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsLoading:before {
|
|
font-family: 'icomoon';
|
|
content: '\e97b';
|
|
display: block;
|
|
color: #444;
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
margin-top: -25px;
|
|
margin-left: -25px;
|
|
font-size: 50px;
|
|
line-height: 1 !important;
|
|
}
|
|
|
|
.ipsLoading:not( .ipsLoading_noAnim ):before {
|
|
-webkit-animation: spinner 0.75s infinite linear;
|
|
animation: spinner 0.75s infinite linear;
|
|
}
|
|
|
|
.ipsLoading.ipsLoading_small:before {
|
|
font-size: 23px;
|
|
margin-top: -12px;
|
|
margin-left: -12px;
|
|
color: #222;
|
|
}
|
|
|
|
.ipsLoading.ipsLoading_tiny:before {
|
|
font-size: 16px;
|
|
margin-top: -8px;
|
|
margin-left: -8px;
|
|
color: #222;
|
|
}
|
|
|
|
.ipsLoading.ipsLoading_dark:before {
|
|
color: #fff;
|
|
}
|
|
|
|
/* Tiny spinner used in an <i> tag */
|
|
.ipsLoading_tinyIcon {
|
|
width: 16px;
|
|
height: 16px;
|
|
font-size: 17px;
|
|
display: inline-block;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* POSITIONING, CLEARING, HIDING */
|
|
.ipsPad, .ipsApp ul.ipsPad, .ipsApp ol.ipsPad { padding: 15px; }
|
|
.ipsPad_double, .ipsApp ul.ipsPad_double, .ipsApp ol.ipsPad_double { padding: 30px; }
|
|
.ipsPad_half, .ipsApp ul.ipsPad_half, .ipsApp ol.ipsPad_half { padding: 7px; }
|
|
.ipsPad_top { padding-top: 7px; }
|
|
.ipsPad_bottom { padding-bottom: 7px;}
|
|
|
|
.ipsPos_left { float: left; }
|
|
html[dir="rtl"] .ipsPos_left { float: right; }
|
|
.ipsPos_right { float: right; }
|
|
html[dir="rtl"] .ipsPos_right { float: left; }
|
|
.ipsPos_center { margin: 0 auto; }
|
|
.ipsPos_middle { vertical-align: middle; }
|
|
.ipsPos_top { vertical-align: top; }
|
|
|
|
.ipsClear { clear: both; }
|
|
|
|
.ipsClearfix:after {
|
|
visibility: hidden;
|
|
display: block;
|
|
font-size: 0;
|
|
content: " ";
|
|
clear: both;
|
|
height: 0;
|
|
}
|
|
|
|
.ipsOverflow {
|
|
width: 100%;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsApp .ipsHide {
|
|
display: none;
|
|
}
|
|
|
|
.ipsFaded {
|
|
opacity: 0.4;
|
|
}
|
|
|
|
.ipsFaded_unavailable {
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsFaded.ipsFaded_more {
|
|
opacity: 0.25;
|
|
}
|
|
|
|
.ipsFaded_withHover {
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
|
|
.ipsFaded_withHover:hover, .ipsFaded_withHover:hover .ipsFaded, .ipsFaded.ipsFaded_cancel {
|
|
opacity: 1;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* LISTS */
|
|
.ipsList_inline,
|
|
.ipsList_reset {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsList_leftAlign {
|
|
padding-left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsList_leftAlign {
|
|
padding-right: 20px;
|
|
}
|
|
|
|
.ipsList_inline > li {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
}
|
|
html[dir="ltr"] .ipsList_inline > li {
|
|
margin-right: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsList_inline > li {
|
|
margin-left: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsList_inline > li:last-child,
|
|
html[dir="ltr"] .ipsList_inline.ipsList_noSpacing > li {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsList_inline > li:last-child,
|
|
html[dir="rtl"] .ipsList_inline.ipsList_noSpacing > li {
|
|
margin-left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsList_inline.ipsList_noSpacing_left > li {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsList_inline.ipsList_noSpacing_left > li {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsList_inline > li.ipsPos_right:not( .ipsResponsive_noFloat ) {
|
|
margin-right: 0;
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsList_inline > li.ipsPos_right:not( .ipsResponsive_noFloat ) {
|
|
margin-left: 0;
|
|
margin-right: 15px;
|
|
}
|
|
|
|
.ipsList_inline.ipsList_csv li a:after {
|
|
content: ',';
|
|
}
|
|
|
|
.ipsList_inline.ipsList_csv li:last-child a:after {
|
|
content: '';
|
|
}
|
|
|
|
.ipsList_bullets {
|
|
list-style-type: disc;
|
|
margin: 0 0 0 26px;
|
|
padding: 0;
|
|
}
|
|
html[dir="rtl"] .ipsList_bullets {
|
|
margin: 0 26px 0 0;
|
|
}
|
|
.ipsList_bullets.ipsList_numbers {
|
|
list-style-type: decimal;
|
|
}
|
|
|
|
.ipsShareIcon {
|
|
width: 16px;
|
|
height: 16px;
|
|
background-image: url( "{resource="icon_share.png" app="core" location="front"}" );
|
|
background-size: 16px 16px;
|
|
background-repeat: no-repeat;
|
|
text-indent: 100%;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.ipsShareIcon:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ONLINE/OFFLINE */
|
|
.ipsOnlineStatus, .ipsOnlineStatus_online {
|
|
color: #249168;
|
|
}
|
|
|
|
.ipsOnlineStatus_offline {
|
|
color: #c7c7c7;
|
|
}
|
|
|
|
.ipsOnlineStatus_away {
|
|
color: #bd9e22;
|
|
}
|
|
|
|
.ipsOnlineStatus_busy {
|
|
color: #a03223;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CURSORS */
|
|
.ipsCursor_locked {
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
.ipsCursor_drag {
|
|
cursor: move;
|
|
}
|
|
|
|
.ipsCursor_default {
|
|
cursor: default;
|
|
}
|
|
|
|
.ipsCursor_pointer {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsCursor_help {
|
|
cursor: help;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CONTEXTUAL TOOLS */
|
|
.ipsToolList {
|
|
width: 100%;
|
|
padding: 0;
|
|
list-style: none;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsToolList.ipsToolList_vertical > li {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.ipsToolList.ipsToolList_vertical > li:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal > li,
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal > li.ipsPos_right {
|
|
float: right;
|
|
margin-left: 10px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal > li.ipsPos_left {
|
|
float: left;
|
|
margin: 0 10px 0 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal.ipsPos_left > li {
|
|
float: left;
|
|
margin-left: 0;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal > li,
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal > li.ipsPos_right {
|
|
float: left;
|
|
margin-right: 10px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal > li.ipsPos_left {
|
|
float: right;
|
|
margin: 0 0 0 10px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal.ipsPos_left > li {
|
|
float: right;
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsToolList.ipsToolList_horizontal > li.ipsToolList_primaryAction .ipsButton:not( .ipsButton_link ) {
|
|
min-width: 200px;
|
|
}
|
|
|
|
.ipsToolList.ipsToolList_horizontal > li.ipsPos_right {
|
|
min-width: 150px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MODERATION STYLES */
|
|
.ipsModerated {
|
|
background: {theme="moderated"};
|
|
color: {theme="moderated_text"};
|
|
}
|
|
|
|
.ipsModerated a {
|
|
color: {theme="moderated_text"};
|
|
}
|
|
|
|
.ipsModerated .ipsType_light {
|
|
color: {theme="moderated_text_light"};
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* STEP BAR */
|
|
.ipsStepBar {
|
|
background: #f7f7f7;
|
|
width: 100%;
|
|
overflow: hidden;
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
.ipsStepBar > li {
|
|
float: left;
|
|
position: relative;
|
|
line-height: 1.3;
|
|
}
|
|
html[dir="rtl"] .ipsStepBar > li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsStepBar > .ipsStep > a, .ipsStepBar > .ipsStep > span {
|
|
padding: 11px 33px 11px 18px;
|
|
background-color: #f0f0f0;
|
|
background-image: url( "{resource="wizard_step_large.png" app="core" location="front"}" );
|
|
background-repeat: no-repeat;
|
|
background-position: bottom right;
|
|
background-size: 200% 200%;
|
|
height: 55px;
|
|
min-height: 35px;
|
|
display: inline-block;
|
|
position: relative;
|
|
min-width: 115px;
|
|
}
|
|
html[dir="rtl"] .ipsStepBar > .ipsStep > a,
|
|
html[dir="rtl"] .ipsStepBar > .ipsStep > span {
|
|
padding: 11px 18px 11px 33px;
|
|
background-image: url( "{resource="wizard_step_large_rtl.png" app="core" location="front"}" );
|
|
background-position: bottom left;
|
|
}
|
|
|
|
.ipsStepBar > .ipsStep.ipsStep_active > a, .ipsStepBar > .ipsStep.ipsStep_active > span {
|
|
background-position: top right;
|
|
color: #fff;
|
|
}
|
|
html[dir="rtl"] .ipsStepBar > .ipsStep.ipsStep_active > a,
|
|
html[dir="rtl"] .ipsStepBar > .ipsStep.ipsStep_active > span {
|
|
background-position: top left;
|
|
}
|
|
|
|
.ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
|
|
background-size: 23px 100%;
|
|
background-repeat: no-repeat;
|
|
width: 23px;
|
|
height: 100%;
|
|
position: absolute;
|
|
top: 0;
|
|
content: '';
|
|
display: inline-block;
|
|
}
|
|
html[dir="ltr"] .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
|
|
background-image: url( "{resource="wizard_step_extra.png" app="core" location="front"}" );
|
|
left: -23px;
|
|
}
|
|
html[dir="rtl"] .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
|
|
background-image: url( "{resource="wizard_step_extra_rtl.png" app="core" location="front"}" );
|
|
right: -23px;
|
|
}
|
|
|
|
.ipsStep_title {
|
|
display: block;
|
|
}
|
|
|
|
.ipsStep_desc {
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsPageHead_special {
|
|
border-radius: 4px 4px 0px 0px;
|
|
padding: 15px;
|
|
color: #fff;
|
|
position: relative;
|
|
background-color: {theme="profile_header"};
|
|
}
|
|
|
|
.ipsPageHead_special .ipsType_pageTitle {
|
|
color: #fff;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* COMMENT & NOTIFICATION INDICATORS */
|
|
.ipsCommentCount {
|
|
padding: 5px 10px;
|
|
border-radius: 3px;
|
|
background: #ececec;
|
|
display: inline-block;
|
|
font-size: 12px;
|
|
text-transform: uppercase;
|
|
position: relative;
|
|
text-align: center;
|
|
line-height: 15px;
|
|
color: #333;
|
|
margin-bottom: 3px;
|
|
}
|
|
html[dir="ltr"] .ipsCommentCount {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsCommentCount {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.ipsCommentCount strong {
|
|
font-size: 15px;
|
|
display: block;
|
|
/*color: #fff;*/
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsCommentCount:after {
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -7px;
|
|
content: "";
|
|
display: block;
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 7px 5px;
|
|
border-style: solid;
|
|
}
|
|
html[dir="ltr"] .ipsCommentCount:after {
|
|
right: 100%;
|
|
border-color: transparent #ececec transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsCommentCount:after {
|
|
left: 100%;
|
|
border-color: transparent transparent transparent #ececec;
|
|
}
|
|
|
|
.ipsCommentCount_hot {
|
|
background: #da8619;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsCommentCount_hot:after {
|
|
border-color: transparent #da8619 transparent transparent;
|
|
}
|
|
html[dir="rtl"].ipsCommentCount_hot:after {
|
|
border-color: transparent transparent transparent #da8619;
|
|
}
|
|
|
|
.ipsSideMenu_item a .ipsCommentCount {
|
|
margin-top: -4px;
|
|
}
|
|
|
|
.ipsApp .ipsNotificationCount {
|
|
position: absolute;
|
|
top: -10px;
|
|
font-size: 11px;
|
|
color: #fff;
|
|
display: inline-block;
|
|
text-indent: 0%;
|
|
line-height: 18px;
|
|
padding: 0 6px;
|
|
border-radius: 8px;
|
|
z-index: 2;
|
|
background: {theme="notification_bubble"};
|
|
}
|
|
html[dir="ltr"] .ipsApp .ipsNotificationCount {
|
|
right: -10px;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsNotificationCount {
|
|
left: -10px;
|
|
}
|
|
|
|
.ipsApp .ipsNotificationCount.ipsHide {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CHARTS */
|
|
.ipsChart {
|
|
border-width: 0 4px 4px 4px;
|
|
border-style: solid;
|
|
border-color: #ebebeb;
|
|
}
|
|
|
|
.ipsChart .ipsChart_chart {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsChart .ipsButtonRow li > a:not( .ipsButtonRow_active ) {
|
|
background: #fff;
|
|
color: #6f6f6f;
|
|
}
|
|
|
|
.ipsChart .ipsType_sectionHead {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ACCESSIBILITY STUFF */
|
|
#ipsAccessibility_border {
|
|
width: 0;
|
|
height: 300px;
|
|
}
|
|
html[dir="ltr"] #ipsAccessibility_border {
|
|
border-left: 3px solid #d91f4b;
|
|
}
|
|
html[dir="rtl"] #ipsAccessibility_border {
|
|
border-right: 3px solid #d91f4b;
|
|
}
|
|
|
|
#ipsAccessibility_arrow {
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 10px;
|
|
border-style: solid;
|
|
border-color: transparent transparent transparent red;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* STICKY ELEMENTS */
|
|
/* Used in conjunction with the sticky widget to make elements stay on screen */
|
|
.ipsSticky {
|
|
background: #fff;
|
|
/*box-shadow: 0px 0px 35px rgba(0,0,0,0.05);*/
|
|
}
|
|
|
|
.ipsSticky.ipsSticky_bottom:before,
|
|
.ipsSticky.ipsSticky_top:before {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
height: 6px;
|
|
left: 0;
|
|
right: 0;
|
|
|
|
}
|
|
|
|
.ipsSticky.ipsSticky_top {
|
|
border-bottom: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
.ipsSticky.ipsSticky_top:before {
|
|
bottom: -6px;
|
|
background: -moz-linear-gradient(top, rgba(0,0,0,0.075) 0%, rgba(0,0,0,0) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.075)), color-stop(100%,rgba(0,0,0,0)));
|
|
background: -webkit-linear-gradient(top, rgba(0,0,0,0.075) 0%,rgba(0,0,0,0) 100%);
|
|
background: -o-linear-gradient(top, rgba(0,0,0,0.075) 0%,rgba(0,0,0,0) 100%);
|
|
background: -ms-linear-gradient(top, rgba(0,0,0,0.075) 0%,rgba(0,0,0,0) 100%);
|
|
background: linear-gradient(to bottom, rgba(0,0,0,0.075) 0%,rgba(0,0,0,0) 100%);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsSticky.ipsSticky_bottom:before {
|
|
top: -30px;
|
|
height: 30px;
|
|
background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(100%,rgba(255,255,255,1)));
|
|
background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsSticky.ipsSticky_noFade:before {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CUSTOM SCROLLBARS (webkit only for now) */
|
|
.ipsScrollbar::-webkit-scrollbar {
|
|
width: 8px;
|
|
height: 8px;
|
|
}
|
|
|
|
.ipsScrollbar::-webkit-scrollbar-thumb {
|
|
background-color: rgba(0,0,0,0.4);
|
|
border-radius: 3px;
|
|
}
|
|
.ipsScrollbar.ipsScrollbar_light::-webkit-scrollbar-thumb {
|
|
background-color: rgba(255,255,255,0.4);
|
|
border-radius: 3px;
|
|
}
|
|
|
|
.ipsScrollbar::-webkit-scrollbar-track-piece {
|
|
background-color: rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.ipsScrollbar.ipsScrollbar_light::-webkit-scrollbar-track-piece {
|
|
background-color: rgba(255,255,255,0.05);
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MULTIQUOTE ELEMENT */
|
|
#ipsMultiQuoter {
|
|
position: fixed;
|
|
bottom: 20px;
|
|
background: #333333;
|
|
padding: 15px;
|
|
border-radius: 3px;
|
|
z-index: 5000;
|
|
box-shadow: 0px 15px 110px rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="ltr"] #ipsMultiQuoter {
|
|
right: 20px;
|
|
}
|
|
html[dir="rtl"] #ipsMultiQuoter {
|
|
left: 20px;
|
|
}
|
|
|
|
#ipsMultiQuoter a {
|
|
color: #fff;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* EMPTINESS */
|
|
.ipsEmpty {
|
|
padding: 30px 0 0;
|
|
font-size: 22px;
|
|
color: #e5e5e5;
|
|
}
|
|
|
|
.ipsEmpty i {
|
|
font-size: 120px;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CALENDAR DATES */
|
|
.ipsCalendarDate {
|
|
width: 40px;
|
|
display: block;
|
|
border: 1px solid rgba(0,0,0,0.2);
|
|
background: #fafafa;
|
|
padding: 4px 0;
|
|
border-radius: 3px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsWidget .ipsCalendarDate {
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsCalendarDate > span {
|
|
display: block;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsCalendarDate_month {
|
|
color: #a93848;
|
|
text-transform: uppercase;
|
|
font-size: 10px;
|
|
line-height: 1;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsCalendarDate_date {
|
|
font-size: 20px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.ipsCalendarDate.ipsCalendarDate_large {
|
|
width: 80px;
|
|
}
|
|
|
|
.ipsCalendarDate.ipsCalendarDate_large .ipsCalendarDate_month {
|
|
font-size: 20px;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.ipsCalendarDate.ipsCalendarDate_large .ipsCalendarDate_date {
|
|
font-size: 40px;
|
|
line-height: 42px;
|
|
font-weight: 300;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CAROUSELS */
|
|
.ipsCarousel {
|
|
position: relative;
|
|
overflow: hidden;
|
|
width: 100%;
|
|
/*padding: 4px 0;*/
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel:not( [data-ipsCarousel-fullSizeItems] ) .ipsCarousel_item {
|
|
margin-right: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsCarousel:not( [data-ipsCarousel-fullSizeItems] ) .ipsCarousel_item {
|
|
margin-left: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel .ipsCarousel_item:last-child {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsCarousel .ipsCarousel_item:last-child {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.ipsCarousel .ipsCarousel_nav {
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -20px;
|
|
background: #fff;
|
|
color: #323232;
|
|
width: 30px;
|
|
height: 50px;
|
|
text-align: center;
|
|
line-height: 50px;
|
|
font-size: 18px;
|
|
box-shadow: 0px 2px 1px rgba(0,0,0,0.1);
|
|
opacity: 0.4;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel .ipsCarousel_nav[data-action='prev'] {
|
|
left: 0;
|
|
}
|
|
html[dir="ltr"] .ipsCarousel .ipsCarousel_nav[data-action='next'] {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsCarousel .ipsCarousel_nav[data-action='prev'] {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsCarousel .ipsCarousel_nav[data-action='next'] {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsCarousel:hover .ipsCarousel_nav {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsCarousel > [data-role="carouselItems"] {
|
|
padding: 0;
|
|
margin: 0;
|
|
list-style: none;
|
|
width: 15000px;
|
|
position: absolute;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel > [data-role="carouselItems"] > .ipsCarousel_item {
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsCarousel > [data-role="carouselItems"] > .ipsCarousel_item {
|
|
float: right;
|
|
}
|
|
|
|
.ipsCarousel_shadow {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 20px;
|
|
display: block;
|
|
pointer-events: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel_shadowLeft {
|
|
left: 0;
|
|
background: -moz-linear-gradient(left, rgba(0,0,0,0.25) 0%, rgba(0,0,0,0.04) 76%, rgba(0,0,0,0) 100%);
|
|
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(0,0,0,0.25)), color-stop(76%,rgba(0,0,0,0.04)), color-stop(100%,rgba(0,0,0,0)));
|
|
background: -webkit-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: -o-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: -ms-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: linear-gradient(to right, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
}
|
|
html[dir="rtl"] .ipsCarousel_shadowLeft {
|
|
right: 0;
|
|
background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.04) 24%, rgba(0,0,0,0.25) 100%);
|
|
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(0,0,0,0)), color-stop(24%,rgba(0,0,0,0.04)), color-stop(100%,rgba(0,0,0,0.25)));
|
|
background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: -o-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: -ms-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
}
|
|
|
|
html[dir="ltr"] .ipsCarousel_shadowRight {
|
|
right: 0;
|
|
background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.04) 24%, rgba(0,0,0,0.25) 100%);
|
|
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(0,0,0,0)), color-stop(24%,rgba(0,0,0,0.04)), color-stop(100%,rgba(0,0,0,0.25)));
|
|
background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: -o-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: -ms-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.04) 24%,rgba(0,0,0,0.25) 100%);
|
|
}
|
|
html[dir="rtl"] .ipsCarousel_shadowRight {
|
|
left: 0;
|
|
background: -moz-linear-gradient(left, rgba(0,0,0,0.25) 0%, rgba(0,0,0,0.04) 76%, rgba(0,0,0,0) 100%);
|
|
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(0,0,0,0.25)), color-stop(76%,rgba(0,0,0,0.04)), color-stop(100%,rgba(0,0,0,0)));
|
|
background: -webkit-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: -o-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: -ms-linear-gradient(left, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
background: linear-gradient(to right, rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.04) 76%,rgba(0,0,0,0) 100%);
|
|
}
|
|
|
|
.ipsJS_none .ipsCarousel {
|
|
min-height: 200px;
|
|
}
|
|
|
|
.ipsJS_none .ipsCarousel > [data-role="carouselItems"] {
|
|
width: auto;
|
|
position: static;
|
|
}
|
|
|
|
.ipsJS_none .ipsCarousel .ipsCarousel_nav,
|
|
.ipsJS_none .ipsCarousel_shadow {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PROGRESS BAR */
|
|
@-webkit-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-moz-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-ms-keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
@-o-keyframes progress-bar-stripes {
|
|
from { background-position: 0 0; }
|
|
to { background-position: 40px 0; }
|
|
}
|
|
@keyframes progress-bar-stripes {
|
|
from { background-position: 40px 0; }
|
|
to { background-position: 0 0; }
|
|
}
|
|
|
|
.ipsProgressBar {
|
|
width: 50%;
|
|
margin: auto;
|
|
height: 26px;
|
|
overflow: hidden;
|
|
background: rgb(156,156,156);
|
|
background: -moz-linear-gradient(top, rgba(156,156,156,1) 0%, rgba(180,180,180,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(156,156,156,1)), color-stop(100%,rgba(180,180,180,1)));
|
|
background: -webkit-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(156,156,156,1) 0%,rgba(180,180,180,1) 100%);
|
|
border-radius: 4px;
|
|
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_small {
|
|
height: 18px;
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_small .ipsProgressBar_progress {
|
|
line-height: 18px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_fullWidth {
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsProgressBar.ipsProgressBar_animated .ipsProgressBar_progress {
|
|
background-color: #5490c0;
|
|
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
|
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
|
background-size: 40px 40px;
|
|
{prefix="animation" value="progress-bar-stripes 2s linear infinite"}
|
|
}
|
|
|
|
.ipsProgressBar_progress {
|
|
float: left;
|
|
width: 0;
|
|
height: 100%;
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
color: #ffffff;
|
|
text-align: center;
|
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.25);
|
|
background: #5490c0;
|
|
position: relative;
|
|
white-space: nowrap;
|
|
line-height: 26px;
|
|
padding-left: 0;
|
|
text-indent: 3px;
|
|
}
|
|
html[dir="rtl"] .ipsProgressBar_progress {
|
|
float: right;
|
|
}
|
|
|
|
.ipsProgressBar_warning .ipsProgressBar_progress {
|
|
background: #c05454;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsProgressBar > span:first-child {
|
|
padding-left: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsProgressBar > span:first-child {
|
|
padding-right: 7px;
|
|
}
|
|
|
|
.ipsProgressBar_progress[data-progress]:after {
|
|
position: absolute;
|
|
top: 0;
|
|
line-height: 32px;
|
|
color: #fff;
|
|
content: attr(data-progress);
|
|
display: block;
|
|
font-weight: bold;
|
|
}
|
|
html[dir="ltr"] .ipsProgressBar_progress[data-progress]:after {
|
|
right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsProgressBar_progress[data-progress]:after {
|
|
left: 5px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* COVER PHOTOS */
|
|
.ipsCoverPhoto {
|
|
position: relative;
|
|
text-shadow: 1px 1px 1px #111, 0px 0px 10px rgba(0,0,0,0.7);
|
|
}
|
|
|
|
.ipsCoverPhoto .ipsType_pageTitle {
|
|
font-weight: 400;
|
|
}
|
|
|
|
.ipsCoverPhoto_container {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
overflow: hidden;
|
|
text-align: left;
|
|
|
|
}
|
|
|
|
.ipsCoverPhoto_container:after {
|
|
position: absolute;
|
|
height: 50%;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
display: block;
|
|
content: '';
|
|
pointer-events: none;
|
|
background: -moz-linear-gradient(top, rgba(51,51,51,0) 0%, rgba(34,34,34,0.9) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(51,51,51,0)), color-stop(100%,rgba(34,34,34,0.9)));
|
|
background: -webkit-linear-gradient(top, rgba(51,51,51,0) 0%,rgba(34,34,34,0.9) 100%);
|
|
background: -o-linear-gradient(top, rgba(51,51,51,0) 0%,rgba(34,34,34,0.9) 100%);
|
|
background: -ms-linear-gradient(top, rgba(51,51,51,0) 0%,rgba(34,34,34,0.9) 100%);
|
|
background: linear-gradient(to bottom, rgba(51,51,51,0) 0%,rgba(34,34,34,0.9) 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00333333', endColorstr='#333333',GradientType=0 );
|
|
}
|
|
|
|
.ipsCoverPhoto_photo {
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsCoverPhoto_container [data-role="coverPhotoControls"] {
|
|
position: absolute;
|
|
top: 10px;
|
|
}
|
|
html[dir="ltr"] .ipsCoverPhoto_container [data-role="coverPhotoControls"] {
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsCoverPhoto_container [data-role="coverPhotoControls"] {
|
|
left: 10px;
|
|
}
|
|
|
|
.ipsCoverPhoto_button {
|
|
position: absolute;
|
|
top: 10px;
|
|
}
|
|
html[dir="ltr"] .ipsCoverPhoto_button {
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsCoverPhoto_button {
|
|
left: 10px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PRINTING */
|
|
|
|
.ipsPrint {
|
|
margin-left: 50px;
|
|
margin-right: 50px;
|
|
-webkit-print-color-adjust: exact;
|
|
}
|
|
|
|
.ipsPrint table {
|
|
width: 100%;
|
|
padding: 5px;
|
|
}
|
|
|
|
.ipsPrint th {
|
|
background: #000;
|
|
color: #FFF;
|
|
padding: 5px;
|
|
text-align: left;
|
|
border: 2px solid #000;
|
|
}
|
|
|
|
.ipsPrint tbody td {
|
|
padding: 5px;
|
|
border: 2px solid #000;
|
|
}
|
|
|
|
.ipsPrint tfoot td {
|
|
padding: 5px;
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsPrint tfoot td:last-child {
|
|
padding: 5px;
|
|
text-align: left;
|
|
}
|
|
|
|
.ipsPrint_doubleHeight {
|
|
height: 50px;
|
|
}
|
|
|
|
.ipsPrint_tripleHeight {
|
|
height: 75px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="navigation.css"><![CDATA[/* MAIN NAVIGATION - Primary and secondary nav bars */
|
|
.ipsNavBar_primary > ul,
|
|
.ipsNavBar_secondary {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li,
|
|
.ipsNavBar_secondary > li {
|
|
display: inline-block;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsNavBar_primary > ul > li,
|
|
html[dir="ltr"] .ipsNavBar_secondary > li {
|
|
float: left;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsNavBar_primary > ul > li,
|
|
html[dir="rtl"] .ipsNavBar_secondary > li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsNavBar_secondary > li {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsNavBar_secondary > li .ipsNotificationCount {
|
|
top: 3px;
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li > a,
|
|
.ipsNavBar_secondary > li > a {
|
|
display: block;
|
|
position: relative;
|
|
text-align: center;
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* Primary Navigation level */
|
|
.ipsNavBar_primary {
|
|
position: relative;
|
|
padding: 5px 5px 40px 5px;
|
|
z-index: 2000;
|
|
background: {theme="main_nav"};
|
|
border-radius: 2px 2px 0px 0px;
|
|
}
|
|
|
|
.ipsNavBar_primary.ipsNavBar_noSubBars {
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li > a {
|
|
background: rgba(255,255,255,0.04);
|
|
font-size: 14px;
|
|
color: rgba(255,255,255,0.7);
|
|
padding: 9px 25px;
|
|
border-radius: 1px 1px 0px 0px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsNavBar_primary > ul > li > a {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsNavBar_primary > ul > li > a {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li > a:hover {
|
|
background: rgba(255,255,255,0.1);
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li.ipsNavBar_active > a {
|
|
background: {theme="main_nav_tab"};
|
|
color: #333;
|
|
}
|
|
|
|
.ipsNavBar_primary.ipsNavBar_noSubBars > ul > li.ipsNavBar_active > a {
|
|
background: #fff;
|
|
}
|
|
|
|
.ipsNavBar_primary > ul > li.ipsNavBar_active > .ipsNavBar_secondary,
|
|
.ipsJS_none .ipsNavBar_primary > ul > li > a:hover + .ipsNavBar_secondary {
|
|
display: block;
|
|
}
|
|
|
|
.ipsNavBar_primary:not( .ipsNavBar_noSubBars ) > ul:before {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 40px;
|
|
z-index: 100;
|
|
background: {theme="main_nav_tab"};
|
|
}
|
|
|
|
/* Secondary navigation level */
|
|
.ipsNavBar_secondary {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 40px;
|
|
z-index: 1000;
|
|
display: none;
|
|
background: {theme="main_nav_tab"};
|
|
}
|
|
|
|
.ipsNavBar_secondary > li > a {
|
|
color: rgba(50,50,50,0.6);
|
|
font-size: 13px;
|
|
padding: 12px 18px 8px;
|
|
border-bottom: 2px solid transparent;
|
|
}
|
|
|
|
.ipsNavBar_secondary > li > a:hover {
|
|
border-color: rgba(0,0,0,0.075);
|
|
color: rgba(50,50,50,0.8);
|
|
}
|
|
|
|
.ipsNavBar_secondary > li.ipsNavBar_active a {
|
|
font-weight: bold;
|
|
border-color: rgba(0,0,0,0.25);
|
|
color: #333;
|
|
}
|
|
|
|
.ipsNavBar_primary .ipsMenu:not( #elSearchFilter_menu ),
|
|
.ipsNavBar_secondary .ipsMenu {
|
|
margin-top: 0px;
|
|
}
|
|
|
|
/* BREADCRUMBS */
|
|
.ipsBreadcrumb.ipsBreadcrumb_top {
|
|
border-bottom: 1px solid rgba(0,0,0,0.075);
|
|
margin: 0px 20px 15px 20px;
|
|
padding: 12px 0;
|
|
background: #fff;
|
|
}
|
|
.ipsBreadcrumb.ipsBreadcrumb_bottom {
|
|
border-top: 1px solid rgba(0,0,0,0.1);
|
|
padding: 12px 0;
|
|
margin: 25px 20px 0 20px;
|
|
}
|
|
|
|
.ipsBreadcrumb {}
|
|
|
|
.ipsBreadcrumb > ul {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsBreadcrumb > ul > li {
|
|
display: inline-block;
|
|
line-height: 1;
|
|
font-size: 13px;
|
|
font-weight: 400;
|
|
max-width: 500px;
|
|
height: 15px;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
vertical-align: bottom;
|
|
color: #616161;
|
|
}
|
|
|
|
.ipsBreadcrumb > ul > li .fa:not( .fa-home ) {
|
|
margin: 0 3px;
|
|
}
|
|
|
|
.ipsBreadcrumb > ul > li > a {
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.ipsBreadcrumb > ul > li:last-child {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
.ipsBreadcrumb [data-action="defaultStream"],
|
|
.ipsBreadcrumb [data-action="markSiteRead"] {
|
|
font-size: 12px;
|
|
font-weight: 400;
|
|
color: {theme="text_color"}
|
|
}
|
|
|
|
#elBackHome {
|
|
display: block;
|
|
color: #fff;
|
|
}
|
|
|
|
html[dir="ltr"] #elBackHome {
|
|
padding: 7px 0 12px 10px;
|
|
}
|
|
html[dir="rtl"] #elBackHome {
|
|
padding: 7px 10px 12px 0;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="normalize.css"><![CDATA[/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
|
|
|
|
/**
|
|
* 1. Set default font family to sans-serif.
|
|
* 2. Prevent iOS text size adjust after orientation change, without disabling
|
|
* user zoom.
|
|
*/
|
|
|
|
html {
|
|
font-family: sans-serif; /* 1 */
|
|
-ms-text-size-adjust: 100%; /* 2 */
|
|
-webkit-text-size-adjust: 100%; /* 2 */
|
|
}
|
|
|
|
/**
|
|
* Remove default margin.
|
|
*/
|
|
|
|
body {
|
|
margin: 0;
|
|
}
|
|
|
|
/* HTML5 display definitions
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Correct `block` display not defined for any HTML5 element in IE 8/9.
|
|
* Correct `block` display not defined for `details` or `summary` in IE 10/11
|
|
* and Firefox.
|
|
* Correct `block` display not defined for `main` in IE 11.
|
|
*/
|
|
|
|
article,
|
|
aside,
|
|
details,
|
|
figcaption,
|
|
figure,
|
|
footer,
|
|
header,
|
|
hgroup,
|
|
main,
|
|
menu,
|
|
nav,
|
|
section,
|
|
summary {
|
|
display: block;
|
|
}
|
|
|
|
/**
|
|
* 1. Correct `inline-block` display not defined in IE 8/9.
|
|
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
|
|
*/
|
|
|
|
audio,
|
|
canvas,
|
|
progress,
|
|
video {
|
|
display: inline-block; /* 1 */
|
|
vertical-align: baseline; /* 2 */
|
|
}
|
|
|
|
/**
|
|
* Prevent modern browsers from displaying `audio` without controls.
|
|
* Remove excess height in iOS 5 devices.
|
|
*/
|
|
|
|
audio:not([controls]) {
|
|
display: none;
|
|
height: 0;
|
|
}
|
|
|
|
/**
|
|
* Address `[hidden]` styling not present in IE 8/9/10.
|
|
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
|
|
*/
|
|
|
|
[hidden],
|
|
template {
|
|
display: none;
|
|
}
|
|
|
|
/* Links
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Remove the gray background color from active links in IE 10.
|
|
*/
|
|
|
|
a {
|
|
background-color: transparent;
|
|
}
|
|
|
|
/**
|
|
* Improve readability when focused and also mouse hovered in all browsers.
|
|
*/
|
|
|
|
a:active,
|
|
a:hover {
|
|
outline: 0;
|
|
}
|
|
|
|
/* Text-level semantics
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
|
|
*/
|
|
|
|
abbr[title] {
|
|
border-bottom: 1px dotted;
|
|
}
|
|
|
|
/**
|
|
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
|
|
*/
|
|
|
|
b,
|
|
strong {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/**
|
|
* Address styling not present in Safari and Chrome.
|
|
*/
|
|
|
|
dfn {
|
|
font-style: italic;
|
|
}
|
|
|
|
/**
|
|
* Address variable `h1` font-size and margin within `section` and `article`
|
|
* contexts in Firefox 4+, Safari, and Chrome.
|
|
*/
|
|
|
|
h1 {
|
|
font-size: 2em;
|
|
margin: 0.67em 0;
|
|
}
|
|
|
|
/**
|
|
* Address styling not present in IE 8/9.
|
|
*/
|
|
|
|
mark {
|
|
background: #ff0;
|
|
color: #000;
|
|
}
|
|
|
|
/**
|
|
* Address inconsistent and variable font size in all browsers.
|
|
*/
|
|
|
|
small {
|
|
font-size: 80%;
|
|
}
|
|
|
|
/**
|
|
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
|
|
*/
|
|
|
|
sub,
|
|
sup {
|
|
font-size: 75%;
|
|
line-height: 0;
|
|
position: relative;
|
|
vertical-align: baseline;
|
|
}
|
|
|
|
sup {
|
|
top: -0.5em;
|
|
}
|
|
|
|
sub {
|
|
bottom: -0.25em;
|
|
}
|
|
|
|
/* Embedded content
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Remove border when inside `a` element in IE 8/9/10.
|
|
*/
|
|
|
|
img {
|
|
border: 0;
|
|
}
|
|
|
|
/**
|
|
* Correct overflow not hidden in IE 9/10/11.
|
|
*/
|
|
|
|
svg:not(:root) {
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Grouping content
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Address margin not present in IE 8/9 and Safari.
|
|
*/
|
|
|
|
figure {
|
|
margin: 1em 40px;
|
|
}
|
|
|
|
/**
|
|
* Address differences between Firefox and other browsers.
|
|
*/
|
|
|
|
hr {
|
|
-moz-box-sizing: content-box;
|
|
box-sizing: content-box;
|
|
height: 0;
|
|
}
|
|
|
|
/**
|
|
* Contain overflow in all browsers.
|
|
*/
|
|
|
|
pre {
|
|
overflow: auto;
|
|
}
|
|
|
|
/**
|
|
* Address odd `em`-unit font size rendering in all browsers.
|
|
*/
|
|
|
|
code,
|
|
kbd,
|
|
pre,
|
|
samp {
|
|
font-family: monospace, monospace;
|
|
font-size: 1em;
|
|
}
|
|
|
|
/* Forms
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Known limitation: by default, Chrome and Safari on OS X allow very limited
|
|
* styling of `select`, unless a `border` property is set.
|
|
*/
|
|
|
|
/**
|
|
* 1. Correct color not being inherited.
|
|
* Known issue: affects color of disabled elements.
|
|
* 2. Correct font properties not being inherited.
|
|
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
|
|
*/
|
|
|
|
button,
|
|
input,
|
|
optgroup,
|
|
select,
|
|
textarea {
|
|
color: inherit; /* 1 */
|
|
font: inherit; /* 2 */
|
|
margin: 0; /* 3 */
|
|
}
|
|
|
|
/**
|
|
* Address `overflow` set to `hidden` in IE 8/9/10/11.
|
|
*/
|
|
|
|
button {
|
|
overflow: visible;
|
|
}
|
|
|
|
/**
|
|
* Address inconsistent `text-transform` inheritance for `button` and `select`.
|
|
* All other form control elements do not inherit `text-transform` values.
|
|
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
|
|
* Correct `select` style inheritance in Firefox.
|
|
*/
|
|
|
|
button,
|
|
select {
|
|
text-transform: none;
|
|
}
|
|
|
|
/**
|
|
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
|
* and `video` controls.
|
|
* 2. Correct inability to style clickable `input` types in iOS.
|
|
* 3. Improve usability and consistency of cursor style between image-type
|
|
* `input` and others.
|
|
*/
|
|
|
|
button,
|
|
html input[type="button"], /* 1 */
|
|
input[type="reset"],
|
|
input[type="submit"] {
|
|
-webkit-appearance: button; /* 2 */
|
|
cursor: pointer; /* 3 */
|
|
}
|
|
|
|
/**
|
|
* Re-set default cursor for disabled elements.
|
|
*/
|
|
|
|
button[disabled],
|
|
html input[disabled] {
|
|
cursor: default;
|
|
}
|
|
|
|
/**
|
|
* Remove inner padding and border in Firefox 4+.
|
|
*/
|
|
|
|
button::-moz-focus-inner,
|
|
input::-moz-focus-inner {
|
|
border: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/**
|
|
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
|
|
* the UA stylesheet.
|
|
*/
|
|
|
|
input {
|
|
line-height: normal;
|
|
}
|
|
|
|
/**
|
|
* It's recommended that you don't attempt to style these elements.
|
|
* Firefox's implementation doesn't respect box-sizing, padding, or width.
|
|
*
|
|
* 1. Address box sizing set to `content-box` in IE 8/9/10.
|
|
* 2. Remove excess padding in IE 8/9/10.
|
|
*/
|
|
|
|
input[type="checkbox"],
|
|
input[type="radio"] {
|
|
box-sizing: border-box; /* 1 */
|
|
padding: 0; /* 2 */
|
|
}
|
|
|
|
/**
|
|
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
|
|
* `font-size` values of the `input`, it causes the cursor style of the
|
|
* decrement button to change from `default` to `text`.
|
|
*/
|
|
|
|
input[type="number"]::-webkit-inner-spin-button,
|
|
input[type="number"]::-webkit-outer-spin-button {
|
|
height: auto;
|
|
}
|
|
|
|
/**
|
|
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
|
|
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
|
|
* (include `-moz` to future-proof).
|
|
*/
|
|
|
|
input[type="search"] {
|
|
-webkit-appearance: textfield; /* 1 */
|
|
-moz-box-sizing: content-box;
|
|
-webkit-box-sizing: content-box; /* 2 */
|
|
box-sizing: content-box;
|
|
}
|
|
|
|
/**
|
|
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
|
|
* Safari (but not Chrome) clips the cancel button when the search input has
|
|
* padding (and `textfield` appearance).
|
|
*/
|
|
|
|
input[type="search"]::-webkit-search-cancel-button,
|
|
input[type="search"]::-webkit-search-decoration {
|
|
-webkit-appearance: none;
|
|
}
|
|
|
|
/**
|
|
* Define consistent border, margin, and padding.
|
|
*/
|
|
|
|
fieldset {
|
|
border: 1px solid #c0c0c0;
|
|
margin: 0 2px;
|
|
padding: 0.35em 0.625em 0.75em;
|
|
}
|
|
|
|
/**
|
|
* 1. Correct `color` not being inherited in IE 8/9/10/11.
|
|
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
|
*/
|
|
|
|
legend {
|
|
border: 0; /* 1 */
|
|
padding: 0; /* 2 */
|
|
}
|
|
|
|
/**
|
|
* Remove default vertical scrollbar in IE 8/9/10/11.
|
|
*/
|
|
|
|
textarea {
|
|
overflow: auto;
|
|
}
|
|
|
|
/**
|
|
* Don't inherit the `font-weight` (applied by a rule above).
|
|
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
|
|
*/
|
|
|
|
optgroup {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Tables
|
|
========================================================================== */
|
|
|
|
/**
|
|
* Remove most spacing between table cells.
|
|
*/
|
|
|
|
table {
|
|
border-collapse: collapse;
|
|
border-spacing: 0;
|
|
}
|
|
|
|
td,
|
|
th {
|
|
padding: 0;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="pagination.css"><![CDATA[/* Pagination control */
|
|
/* ======================================================== */
|
|
.ipsPagination {
|
|
padding: 0 10px 0 0;
|
|
margin: 0;
|
|
border-radius: 30px;
|
|
display: inline-block;
|
|
line-height: 26px;
|
|
font-size: 11px;
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
html[dir="rtl"] .ipsPagination {
|
|
padding: 0 0 0 10px;
|
|
}
|
|
|
|
.ipsPagination > li, .ipsPagination a {
|
|
display: inline-block;
|
|
font-weight: 500;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_page a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_next a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_prev a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last a {
|
|
padding: 0 10px;
|
|
border-radius: 2px;
|
|
font-weight: bold;
|
|
text-align: center;
|
|
background: #f0f0f0;
|
|
color: #414141;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_page.ipsPagination_active a {
|
|
background: #323232;
|
|
color: #fff;
|
|
border-color: #323232;
|
|
box-shadow: none;
|
|
text-shadow: none;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_page a {
|
|
text-shadow: 0px 1px 0px rgba(255,255,255,0.6);
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_next a,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_prev a {
|
|
font-size: 10px;
|
|
text-transform: uppercase;
|
|
{prefix="transition" value="all 0.3s linear"}
|
|
}
|
|
|
|
.ipsPagination:hover a {
|
|
opacity: 1;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPagination .ipsPagination_pageJump {
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsPagination .ipsPagination_pageJump {
|
|
margin-right: 15px;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_pageJump a {
|
|
color: #787878;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsPagination li:not( .ipsPagination_pageJump ):not( .ipsPagination_mini ) .fa {
|
|
font-size: 15px;
|
|
position: relative;
|
|
top: 1px;
|
|
}
|
|
|
|
.ipsPagination > li.ipsPagination_inactive {
|
|
display: none;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* Mini pagination control, used inline in tables */
|
|
.ipsPagination.ipsPagination_mini {
|
|
display: inline;
|
|
line-height: 16px;
|
|
opacity: 0.3;
|
|
{prefix="transition" value="all 0.3s linear"}
|
|
}
|
|
html[dir="ltr"] .ipsPagination.ipsPagination_mini {
|
|
margin-left: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsPagination.ipsPagination_mini {
|
|
margin-right: 5px;
|
|
}
|
|
|
|
.ipsPagination.ipsPagination_mini:hover,
|
|
.ipsDataItem:hover .ipsPagination_mini {
|
|
opacity: 1;
|
|
}
|
|
|
|
.ipsPagination.ipsPagination_mini a {
|
|
background: rgba(0,0,0,0.05);
|
|
padding: 0 4px;
|
|
color: #333;
|
|
border-radius: 2px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* PAGER CONTROL */
|
|
/* Used to indicate the user can go backwards or forwards to other pages */
|
|
.ipsPager .ipsPager_next a,
|
|
.ipsPager .ipsPager_prev a {
|
|
display: block;
|
|
position: relative;
|
|
padding: 15px;
|
|
}
|
|
|
|
.ipsPager.ipsPager_small .ipsPager_next a,
|
|
.ipsPager.ipsPager_small .ipsPager_prev a {
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsPager .ipsPager_next a:after,
|
|
.ipsPager .ipsPager_prev a:after {
|
|
content: '\f105';
|
|
font-family: 'FontAwesome';
|
|
font-size: 45px;
|
|
position: absolute;
|
|
top: 23px;
|
|
color: #404040;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
|
|
.ipsPager.ipsPager_small .ipsPager_next a:after,
|
|
.ipsPager.ipsPager_small .ipsPager_prev a:after {
|
|
top: 7px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager .ipsPager_next a,
|
|
html[dir="rtl"] .ipsPager .ipsPager_prev a {
|
|
padding-right: 45px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager.ipsPager_small .ipsPager_next a,
|
|
html[dir="rtl"] .ipsPager.ipsPager_small .ipsPager_prev a {
|
|
padding-right: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager .ipsPager_prev a,
|
|
html[dir="rtl"] .ipsPager .ipsPager_next a {
|
|
padding-left: 45px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager.ipsPager_small .ipsPager_prev a,
|
|
html[dir="rtl"] .ipsPager.ipsPager_small .ipsPager_next a {
|
|
padding-left: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager .ipsPager_next a:after,
|
|
html[dir="rtl"] .ipsPager .ipsPager_prev a:after {
|
|
content: '\f105';
|
|
right: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager.ipsPager_small .ipsPager_next a:after,
|
|
html[dir="rtl"] .ipsPager.ipsPager_small .ipsPager_prev a:after {
|
|
right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager .ipsPager_prev a:after,
|
|
html[dir="rtl"] .ipsPager .ipsPager_next a:after {
|
|
content: '\f104';
|
|
left: 15px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsPager.ipsPager_small .ipsPager_next a:after,
|
|
html[dir="ltr"] .ipsPager.ipsPager_small .ipsPager_prev a:after {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsPager_type {
|
|
text-transform: uppercase;
|
|
font-size: 11px;
|
|
font-weight: bold;
|
|
color: #404040;
|
|
}
|
|
|
|
.ipsPager_title, .ipsPager_type {
|
|
display: block;
|
|
height: 18px;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
max-width: 100%;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="popup.css"><![CDATA[/* Popups: various widgets that have popup windows. Dialogs, tooltips, hovercards, etc. */
|
|
|
|
/* ======================================================== */
|
|
/* Modal element - used to block out the screen under popup controls */
|
|
.ipsModal {
|
|
background: rgba(30,30,30,0.4);
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
z-index: 15000;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* DIALOG WINDOWS */
|
|
.ipsDialog {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
z-index: 20000;
|
|
padding-bottom: 15px;
|
|
}
|
|
|
|
.ipsDialog > * {
|
|
/* Attempt to stop some webkit oddities */
|
|
{prefix="transform" value="scale(1)"}
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_fixed {
|
|
position: fixed;
|
|
}
|
|
|
|
.ipsDialog > div {
|
|
display: block;
|
|
width: 90%;
|
|
max-width: 1200px;
|
|
background: #fff;
|
|
margin: 3% auto 0 auto;
|
|
box-shadow: 0px 5px 55px rgba(0,0,0,0.4);
|
|
position: relative;
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_fixed > div {
|
|
height: 90%;
|
|
max-height: 90%;
|
|
}
|
|
|
|
.ipsDialog .ipsDialog_loading {
|
|
background-color: #fff;
|
|
height: 200px;
|
|
}
|
|
|
|
/* Sizes */
|
|
.ipsDialog.ipsDialog_narrow > div {
|
|
max-width: 500px;
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_medium > div {
|
|
max-width: 850px;
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_wide > div {
|
|
max-width: 1000px;
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_fullscreen > div {
|
|
position: absolute;
|
|
top: 30px;
|
|
right: 30px;
|
|
bottom: 30px;
|
|
left: 30px;
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
width: auto;
|
|
height: auto;
|
|
margin: 0;
|
|
}
|
|
|
|
/* Dialog elements */
|
|
.ipsDialog_close {
|
|
position: absolute;
|
|
top: 0;
|
|
display: block;
|
|
color: #000;
|
|
width: 44px;
|
|
height: 44px;
|
|
line-height: 48px;
|
|
font-size: 34px;
|
|
font-weight: 300;
|
|
text-align: center;
|
|
z-index: 1000;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
html[dir="ltr"] .ipsDialog_close {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDialog_close {
|
|
left: 0;
|
|
}
|
|
|
|
.ipsDialog_title {
|
|
color: #333;
|
|
font-size: 26px;
|
|
font-weight: 300;
|
|
text-align: left;
|
|
line-height: 1.2;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
margin: 0;
|
|
padding: 12px 15px 0 15px;
|
|
}
|
|
html[dir="rtl"] .ipsDialog_title {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsDialog_title ~ .ipsHr {
|
|
margin: 12px 15px 0 15px;
|
|
}
|
|
|
|
.ipsDialog_fixed .ipsDialog_content {
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
position: absolute;
|
|
display: -webkit-box;
|
|
-webkit-box-orient: vertical;
|
|
-webkit-box-align: stretch;
|
|
-webkit-box-flex: 1;
|
|
-webkit-overflow-scrolling: touch;
|
|
overflow: auto;
|
|
}
|
|
|
|
.ipsDialog_fixed .ipsDialog_title ~ .ipsDialog_content {
|
|
top: 56px;
|
|
}
|
|
|
|
.ipsDialog_footer {
|
|
position: fixed;
|
|
bottom: 60px;
|
|
left: 0;
|
|
right: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* HOVERCARD */
|
|
.ipsHovercard {
|
|
background: #fff;
|
|
box-shadow: 0px 7px 20px rgba(0, 0, 0, 0.2), 0px 5px 20px rgba(0,0,0,0.1);;
|
|
border: 1px solid #ebebeb;
|
|
|
|
/*border: 1px solid rgba(0,0,0,0.05);
|
|
box-shadow: 0px 5px 40px rgba(0,0,0,0.1), */
|
|
border-radius: 4px;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsHovercard > div {
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Hovercard stem */
|
|
.ipsHovercard:not( .ipsHovercard_noStem ) .ipsHovercard_stem {
|
|
display: block;
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 15px;
|
|
border-style: solid;
|
|
pointer-events: none !important;
|
|
}
|
|
|
|
.ipsHovercard:not( .ipsHovercard_noStem ) .ipsHovercard_stem:before {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
border-width: 16px;
|
|
z-index: -1;
|
|
}
|
|
|
|
.ipsHovercard.ipsHovercard_stemTop { margin-top: -10px; }
|
|
.ipsHovercard.ipsHovercard_stemBottom { margin-top: 10px; }
|
|
.ipsHovercard.ipsHovercard_stemLeft { margin-left: -15px; }
|
|
.ipsHovercard.ipsHovercard_stemRight { margin-left: 15px; }
|
|
|
|
.ipsHovercard_stemLeft .ipsHovercard_stem { left: 15px; }
|
|
.ipsHovercard_stemLeft .ipsHovercard_stem:before { left: -16px; }
|
|
.ipsHovercard_stemRight .ipsHovercard_stem { right: 15px; }
|
|
.ipsHovercard_stemRight .ipsHovercard_stem:before { right: -16px; }
|
|
|
|
.ipsHovercard_stemTop .ipsHovercard_stem {
|
|
top: 100%;
|
|
border-color: #fff transparent transparent transparent;
|
|
}
|
|
|
|
.ipsHovercard_stemTop .ipsHovercard_stem:before {
|
|
bottom: -17px;
|
|
border-color: #ebebeb transparent transparent transparent;
|
|
}
|
|
|
|
.ipsHovercard_stemBottom .ipsHovercard_stem {
|
|
bottom: 100%;
|
|
border-color: transparent transparent #fff transparent;
|
|
}
|
|
|
|
.ipsHovercard_stemBottom .ipsHovercard_stem:before {
|
|
top: -17px;
|
|
border-color: transparent transparent #ebebeb transparent;
|
|
}
|
|
|
|
/* Hovercard elements */
|
|
.ipsHovercard_loading {
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 4px;
|
|
padding: 5px;
|
|
box-shadow: 0px 5px 40px rgba(0,0,0,0.4);
|
|
background-color: #fff;
|
|
}
|
|
|
|
.ipsHovercard_loading .ipsLoading_tinyIcon {
|
|
width: 20px;
|
|
height: 20px;
|
|
font-size: 20px;
|
|
}
|
|
|
|
.ipsHovercard_loading:after {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
border-color: #fff transparent transparent transparent;
|
|
left: 50%;
|
|
top: 100%;
|
|
}
|
|
html[dir="ltr"] .ipsHovercard_loading:after {
|
|
margin-left: -5px;
|
|
}
|
|
html[dir="rtl"] .ipsHovercard_loading:after {
|
|
margin-right: -5px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* TOOLTIPS */
|
|
/* This is an ID because we always reuse the same element */
|
|
.ipsTooltip {
|
|
background: #2a2a2a;
|
|
line-height: 26px;
|
|
font-size: 12px;
|
|
color: #fff;
|
|
position: absolute;
|
|
padding: 0 8px;
|
|
pointer-events: none;
|
|
border-radius: 2px;
|
|
{prefix="user-select" value="none"}
|
|
}
|
|
|
|
body[data-dragging] .ipsTooltip {
|
|
display: none !important;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_top {
|
|
margin-top: -2px;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_bottom {
|
|
margin-top: 2px;
|
|
}
|
|
|
|
.ipsTooltip:after {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
left: 50%;
|
|
margin-left: -5px;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_right:after {
|
|
left: auto;
|
|
right: 4px;
|
|
margin-left: 0;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_left:after {
|
|
left: 4px;
|
|
margin-left: 0;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_top:after {
|
|
border-color: #2a2a2a transparent transparent transparent;
|
|
bottom: -10px;
|
|
}
|
|
|
|
.ipsTooltip.ipsTooltip_bottom:after {
|
|
border-color: transparent transparent #2a2a2a transparent;
|
|
top: -10px;
|
|
}
|
|
|
|
.ipsTooltip a {
|
|
color: #fff;
|
|
border-bottom: 1px dotted #fff;
|
|
}
|
|
/* ======================================================== */
|
|
/* PAGE ACTIONS */
|
|
/* Page actions are used primarily for moderation, presenting a floating toolbar of actions for selected items */
|
|
.ipsPageAction {
|
|
background: rgb(32,32,32);
|
|
background: -moz-linear-gradient(top, rgba(49,49,49,1) 0%, rgba(32,32,32,1) 100%);
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(49,49,49,1)), color-stop(100%,rgba(32,32,32,1)));
|
|
background: -webkit-linear-gradient(top, rgba(49,49,49,1) 0%,rgba(32,32,32,1) 100%);
|
|
background: -o-linear-gradient(top, rgba(49,49,49,1) 0%,rgba(32,32,32,1) 100%);
|
|
background: -ms-linear-gradient(top, rgba(49,49,49,1) 0%,rgba(32,32,32,1) 100%);
|
|
background: linear-gradient(to bottom, rgba(49,49,49,1) 0%,rgba(32,32,32,1) 100%);
|
|
border: 1px solid rgba(0,0,0,0.4);
|
|
box-shadow: 0px 15px 110px rgba(0,0,0,0.2);
|
|
position: fixed;
|
|
left: 50%;
|
|
bottom: 10px;
|
|
border-radius: 5px;
|
|
z-index: 2000;
|
|
color: #cdcdcd;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li {
|
|
padding: 5px 10px;
|
|
margin: 0;
|
|
float: left;
|
|
border-right: 1px solid rgba(0,0,0,0.3);
|
|
min-width: 58px;
|
|
line-height: 29px;
|
|
text-align: center;
|
|
}
|
|
html[dir="rtl"] .ipsPageAction > ul[data-role='actionItems'] > li {
|
|
float: right;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li:first-child {
|
|
background: #000;
|
|
}
|
|
|
|
.ipsPageAction > ul > li.ipsPageAction_active {
|
|
background: #000;
|
|
}
|
|
|
|
.ipsPageAction > ul > li.ipsPageAction_active .ipsPageAction_icon {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsPageAction .ipsPageAction_icon {
|
|
display: inline-block;
|
|
min-width: 26px;
|
|
line-height: 32px;
|
|
color: #d9d9d9;
|
|
font-size: 26px;
|
|
text-shadow: 0px 1px 2px #000;
|
|
border-radius: 2px;
|
|
vertical-align: middle;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsPageAction [data-role="actionMenu"]:hover, .ipsPageAction [data-role="actionButton"]:hover {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsPageAction [data-role="actionMenu"]:hover .ipsPageAction_icon, .ipsPageAction [data-role="actionButton"]:hover .ipsPageAction_icon {
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsPageAction select {
|
|
padding: 5px 10px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ALERT BOXES */
|
|
/* Gives the user choices, like OK, Cancel etc. Replaces the ugly javascript alert() */
|
|
.ipsAlert {
|
|
background: #fff;
|
|
padding: 30px;
|
|
width: 480px;
|
|
position: fixed;
|
|
top: 100px;
|
|
border-radius: 4px;
|
|
box-shadow: 0px 5px 55px rgba(0,0,0,0.4);
|
|
}
|
|
html[dir="ltr"] .ipsAlert {
|
|
left: 50%;
|
|
margin-left: -240px;
|
|
}
|
|
html[dir="rtl"] .ipsAlert {
|
|
right: 50%;
|
|
margin-right: -240px;
|
|
}
|
|
|
|
.ipsAlert_icon {
|
|
font-size: 60px;
|
|
float: left;
|
|
}
|
|
html[dir="rtl"] .ipsAlert_icon {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsAlert_icon + .ipsAlert_msg {
|
|
margin-left: 80px;
|
|
}
|
|
html[dir="rtl"] .ipsAlert_icon + .ipsAlert_msg {
|
|
margin-right: 80px;
|
|
}
|
|
|
|
.ipsAlert_msg {
|
|
font-size: 16px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.ipsAlert_msg > .ipsType_normal {
|
|
line-height: 18px !important;
|
|
margin-top: 7px;
|
|
}
|
|
|
|
.ipsApp .ipsAlert_buttonRow {
|
|
margin-top: 25px;
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsAlert_buttonRow li {
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsAlert_buttonRow li {
|
|
margin-left: 5px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* jQuery UI Date Picker */
|
|
/* Not strictly part of our framework, but used globally */
|
|
|
|
.ui-datepicker {
|
|
background: white;
|
|
box-shadow: 0px 12px 25px rgba(0, 0, 0, 0.58 );
|
|
width: 375px;
|
|
border-radius: 6px;
|
|
}
|
|
|
|
.ui-datepicker-header {
|
|
line-height: 36px;
|
|
font-size: 14px;
|
|
text-align: center;
|
|
background: #333;
|
|
color: #fff;
|
|
border-bottom: 1px solid #333;
|
|
-moz-border-radius-topleft: 5px;
|
|
-moz-border-radius-topright: 5px;
|
|
border-top-left-radius: 5px;
|
|
border-top-right-radius: 5px;
|
|
}
|
|
|
|
.ui-datepicker-prev, .ui-datepicker-next {
|
|
position:absolute;
|
|
top: 10px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ui-datepicker-prev:after, .ui-datepicker-next:after {
|
|
font-family: 'FontAwesome';
|
|
color: #fff;
|
|
display: block;
|
|
position: absolute;
|
|
top: -9px;
|
|
width: 20px;
|
|
height: 20px;
|
|
}
|
|
html[dir="ltr"] .ui-datepicker-prev:after, .ui-datepicker-next:after {
|
|
right: 9px;
|
|
}
|
|
html[dir="rtl"] .ui-datepicker-prev:after, .ui-datepicker-next:after {
|
|
left: 9px;
|
|
}
|
|
|
|
html[dir="ltr"] .ui-datepicker-next {
|
|
right: 9px;
|
|
}
|
|
html[dir="rtl"] .ui-datepicker-next {
|
|
left: 9px;
|
|
}
|
|
|
|
html[dir="ltr"] .ui-datepicker-next:after {
|
|
content: '\f054';
|
|
}
|
|
html[dir="rtl"] .ui-datepicker-next:after {
|
|
content: '\f053';
|
|
}
|
|
|
|
html[dir="ltr"] .ui-datepicker-prev {
|
|
left: 0px;
|
|
}
|
|
html[dir="rtl"] .ui-datepicker-prev {
|
|
right: 0px;
|
|
}
|
|
|
|
html[dir="ltr"] .ui-datepicker-prev:after {
|
|
content: '\f053';
|
|
}
|
|
html[dir="rtl"] .ui-datepicker-prev:after {
|
|
content: '\f054';
|
|
}
|
|
|
|
.ui-datepicker-next span, .ui-datepicker-prev span {
|
|
visibility: hidden;
|
|
}
|
|
|
|
.ui-datepicker table {
|
|
width: 100%;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ui-datepicker th {
|
|
padding: 4px 0;
|
|
background: #f5f5f5;
|
|
}
|
|
.ui-datepicker td, .ui-datepicker th {
|
|
text-align: center;
|
|
}
|
|
|
|
.ui-datepicker td a {
|
|
display: block;
|
|
width: 50px;
|
|
height: 100%;
|
|
padding: 5px 0px;
|
|
}
|
|
|
|
.ui-datepicker td a:hover, .ui-datepicker-current-day {
|
|
background-color: #dbdbdb;
|
|
}
|
|
|
|
.ui-datepicker-today {
|
|
background-color: #eaeaea;
|
|
}
|
|
|
|
.ui-datepicker-title select, .ui-datepicker-title option {
|
|
color: #000;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="post-content.css"><![CDATA[/* Post content styles: quotes, spoilers, other formatting */
|
|
/* We recommend you don't change these too much; users expect certain styles to look a certain way */
|
|
|
|
/* ======================================================== */
|
|
/* Fix some CKEditor styles */
|
|
/* ======================================================== */
|
|
.cke_wysiwyg_div {
|
|
padding: 15px !important;
|
|
min-height: 200px;
|
|
}
|
|
|
|
.cke_wysiwyg_div > p:first-child {
|
|
margin-top: 0 !important;
|
|
}
|
|
|
|
.ipsApp .cke_widget_wrapper:hover > .cke_widget_element,
|
|
.ipsApp .cke_widget_wrapper:hover .cke_widget_editable {
|
|
outline-width: 1px;
|
|
outline-style: solid;
|
|
outline-color: #8ec2ed;
|
|
}
|
|
|
|
.ipsApp .cke_widget_wrapper:hover .cke_widget_editable.cke_widget_editable_focused {
|
|
box-shadow: 0 1px 1px rgba(0,0,0,0.075), 0px 1px 9px rgba(82,168,236,0.7);
|
|
}
|
|
|
|
.ipsMenu_item[data-mentionid] > a {
|
|
padding: 3px 15px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* QUOTES */
|
|
/* ======================================================== */
|
|
|
|
/* Basic quote style */
|
|
.ipsQuote {
|
|
margin: 0;
|
|
padding: 0px 15px;
|
|
border-width: 1px 1px 1px 2px;
|
|
border-color: #ededed #e8e8e8 #dbdbdb #666666;
|
|
border-style: solid;
|
|
position: relative;
|
|
background: #fbfbfb;
|
|
clear: both;
|
|
}
|
|
|
|
.ipsQuote + .ipsQuote {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsQuote {
|
|
border-width: 1px 2px 1px 2px;
|
|
border-color: #ededed #666666 #dbdbdb #e8e8e8;
|
|
}
|
|
|
|
/* Citation bar */
|
|
.ipsQuote_citation {
|
|
background: #f3f3f3;
|
|
margin: 0px -15px;
|
|
padding: 5px 15px;
|
|
color: #222;
|
|
font-weight: bold;
|
|
font-size: 13px;
|
|
display: block;
|
|
}
|
|
.ipsQuote .ipsQuote_citation a {
|
|
color: #222;
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* The open/close icon */
|
|
.ipsQuote_citation [data-action='toggleQuote'] {
|
|
vertical-align: middle;
|
|
font-family: 'FontAwesome';
|
|
font-size: 16px;
|
|
margin-top: -4px;
|
|
}
|
|
.ipsQuote_citation.ipsQuote_closed [data-action='toggleQuote']:before {
|
|
content: "\f138";
|
|
}
|
|
html[dir="rtl"] .ipsQuote_citation.ipsQuote_closed [data-action='toggleQuote']:before {
|
|
content: "\f137";
|
|
}
|
|
.ipsQuote_citation.ipsQuote_open [data-action='toggleQuote']:before {
|
|
content: "\f13a";
|
|
color: #bdbdbd;
|
|
}
|
|
|
|
/* The snapback icon */
|
|
.ipsQuote_citation .fa {
|
|
line-height: 23px;
|
|
opacity: 0.1;
|
|
{prefix="transition" value="all 0.3s linear"}
|
|
}
|
|
.ipsQuote_citation:hover .fa {
|
|
opacity: 1;
|
|
}
|
|
|
|
a[data-mentionid] {
|
|
display: inline-block;
|
|
border-radius: 2px;
|
|
padding: 0px 5px;
|
|
font-size: 90%;
|
|
color: #fff;
|
|
text-decoration: none !important;
|
|
background: {theme="mentions"};
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* CODE */
|
|
/* ======================================================== */
|
|
.ipsCode {
|
|
background: #fafafa;
|
|
padding: 15px !important;
|
|
border: 0 !important;
|
|
border-left: 4px solid #e0e0e0 !important;
|
|
clear: both;
|
|
direction: ltr;
|
|
white-space: pre-wrap;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SPOILERS */
|
|
/* ======================================================== */
|
|
|
|
.ipsSpoiler, .ipsStyle_spoiler {
|
|
margin: 0;
|
|
padding: 0px 15px;
|
|
border-width: 1px 1px 1px 1px;
|
|
border-color: #e5e5e5;
|
|
border-style: solid;
|
|
position: relative;
|
|
background: #fafafa;
|
|
clear: both;
|
|
}
|
|
|
|
.ipsSpoiler_header {
|
|
background: #e5e5e5;
|
|
margin: 0px -15px;
|
|
padding: 5px 15px;
|
|
color: #353535;
|
|
font-weight: bold;
|
|
font-size: 13px;
|
|
display: block;
|
|
cursor: pointer;
|
|
}
|
|
.ipsSpoiler .ipsSpoiler_header a, .ipsStyle_spoiler .ipsSpoiler_header a {
|
|
color: #222;
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* The open/close icon */
|
|
.ipsSpoiler_header [data-action='toggleSpoiler'] {
|
|
vertical-align: middle;
|
|
font-family: 'FontAwesome';
|
|
font-size: 16px;
|
|
margin-top: -4px;
|
|
}
|
|
.ipsSpoiler_header.ipsSpoiler_closed [data-action='toggleSpoiler']:before {
|
|
content: "\f138";
|
|
}
|
|
html[dir="rtl"] .ipsSpoiler_header.ipsSpoiler_closed [data-action='toggleSpoiler']:before {
|
|
content: "\f137";
|
|
}
|
|
.ipsSpoiler_header.ipsSpoiler_open [data-action='toggleSpoiler']:before {
|
|
content: "\f13a";
|
|
color: #bdbdbd;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* IMAGES */
|
|
/* ======================================================== */
|
|
html[dir="ltr"] .ipsAttachLink_image.ipsAttachLink_right,
|
|
html[dir="rtl"] .ipsAttachLink_image.ipsAttachLink_left {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="ltr"] .ipsAttachLink_image.ipsAttachLink_left,
|
|
html[dir="rtl"] .ipsAttachLink_image.ipsAttachLink_right {
|
|
margin-right: 30px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* EMBEDDABLES - Internal Embeds */
|
|
/* These styles are used for the iframes when a user posts */
|
|
/* a link to another piece of content on the suite (for */
|
|
/* example, a topic) */
|
|
/* ======================================================== */
|
|
|
|
iframe[data-embedContent] {
|
|
width: 100%;
|
|
min-height: 165px;
|
|
margin: 10px 0;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
position: relative;
|
|
background-color: #fcfcfc;
|
|
background-image: url( "{resource="loaders/large_loading@2x.gif" app="core" location="front"}" );
|
|
background-repeat: no-repeat;
|
|
background-position: center center;
|
|
background-size: 40px 40px;
|
|
}
|
|
|
|
/* A nasty hack which forces iOS to honor max-widths on iframes. Without this, our iframe
|
|
pushes the page width out because of the white-space:nowrap; on the embeddable titles.
|
|
See: http://stackoverflow.com/a/23083463
|
|
See: https://community.invisionpower.com/4bugtrack/active-reports/this-site-embeded-links-on-mobile-r7413/
|
|
*/
|
|
.ipsEmbedded {
|
|
width: 1px;
|
|
min-width: 100%;
|
|
*width: 100%;
|
|
}
|
|
|
|
.ipsEmbedded_image {
|
|
background-color: #333;
|
|
background-size: cover;
|
|
background-position: 50%;
|
|
background-repeat: no-repeat;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsEmbedded_image, .ipsEmbedded_image a {
|
|
width: 110px;
|
|
height: 110px;
|
|
}
|
|
|
|
.ipsEmbedded_image a {
|
|
display: block;
|
|
}
|
|
|
|
.ipsEmbedded_image img {
|
|
display: none;
|
|
}
|
|
|
|
.ipsEmbedded_withImage .ipsEmbedded_image {
|
|
position: absolute;
|
|
top: 10px;
|
|
border: 3px solid #fff;
|
|
}
|
|
html[dir="ltr"] .ipsEmbedded_withImage .ipsEmbedded_image {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsEmbedded_withImage .ipsEmbedded_image {
|
|
right: 10px;
|
|
}
|
|
|
|
.ipsEmbedded_headerArea {
|
|
background: #efefef;
|
|
border-bottom: 1px solid rgba(0,0,0,0.055);
|
|
padding: 10px;
|
|
line-height: 1;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.ipsEmbedded_headerArea .ipsEmbedded_type {
|
|
font-size: 12px;
|
|
}
|
|
|
|
.ipsEmbedded .ipsType_medium, .ipsEmbedded .ipsType_small {
|
|
line-height: 1.3;
|
|
}
|
|
|
|
.ipsEmbedded_content {
|
|
padding: 9px 7px 7px;
|
|
background-color: #fcfcfc;
|
|
min-height: 75px;
|
|
}
|
|
|
|
.ipsEmbedded_stats {
|
|
margin-top: 9px;
|
|
padding: 7px 0;
|
|
border-top: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.ipsEmbedded .ipsUserPhoto_tiny img {
|
|
width: 30px;
|
|
height: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsEmbedded_withImage .ipsEmbedded_headerArea,
|
|
html[dir="ltr"] .ipsEmbedded_withImage .ipsEmbedded_content {
|
|
padding-left: 130px;
|
|
}
|
|
html[dir="rtl"] .ipsEmbedded_withImage .ipsEmbedded_headerArea,
|
|
html[dir="rtl"] .ipsEmbedded_withImage .ipsEmbedded_content {
|
|
padding-right: 130px;
|
|
}
|
|
|
|
.ipsEmbedded_error {
|
|
text-align: center;
|
|
padding-top: 50px;
|
|
font-size: 12px;
|
|
color: rgba(0,0,0,0.3);
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* EMBEDDABLES - oEmbed Videos */
|
|
/* These styles are used for embedded links to oEmbed */
|
|
/* services that identify themselves as videos (for example */
|
|
/* YouTube, Vimeo and Hulu) */
|
|
/* ======================================================== */
|
|
|
|
.ipsEmbeddedVideo.ipsEmbeddedVideo_limited {
|
|
max-width: {setting="max_video_width"}px;
|
|
}
|
|
|
|
.ipsEmbeddedVideo.ipsEmbeddedVideo_limited > div,
|
|
.ipsEmbeddedVideo:not( .ipsEmbeddedVideo_limited ) {
|
|
float: none;
|
|
clear: both;
|
|
width: 100%;
|
|
overflow: auto;
|
|
position: relative;
|
|
/* This allows videos to resize responsively */
|
|
padding-bottom: 56.25%;
|
|
padding-top: 25px;
|
|
}
|
|
|
|
.ipsEmbeddedVideo iframe {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
.ipsQuote .ipsEmbeddedVideo.ipsEmbeddedVideo_limited > div,
|
|
.ipsQuote .ipsEmbeddedVideo:not( .ipsEmbeddedVideo_limited ) {
|
|
width: 98%;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* EMBEDDABLES - oEmbed Misc */
|
|
/* These styles are used for embedded links to oEmbed */
|
|
/* services that are not videos or photos (for example */
|
|
/* Twitter and Instagram) */
|
|
/* ======================================================== */
|
|
|
|
.ipsEmbeddedOther iframe {
|
|
float: none;
|
|
clear: both;
|
|
width: 100%;
|
|
position: relative;
|
|
border: none;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="posts.css"></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="prettify.css">.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="streams.css"><![CDATA[html[dir="ltr"] .ipsStream.ipsStream_withTimeline {
|
|
border-left: 3px solid {theme="timeline_color"};
|
|
margin-left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsStream.ipsStream_withTimeline {
|
|
border-right: 3px solid {theme="timeline_color"};
|
|
margin-right: 20px;
|
|
}
|
|
|
|
.ipsStreamItem {
|
|
margin-top: 10px;
|
|
margin-bottom: 10px;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_contentBlock {
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
padding: 10px;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_actionBlock {
|
|
padding-top: 4px;
|
|
padding-bottom: 4px;
|
|
background: transparent;
|
|
}
|
|
|
|
.ipsStreamItem_snippet {
|
|
margin-top: 10px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.ipsStream .ipsStreamItem:first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem {
|
|
margin-right: 30px;
|
|
}
|
|
|
|
.ipsStreamItem_title {
|
|
color: #000;
|
|
font-size: 18px;
|
|
font-weight: 400;
|
|
line-height: 1.2;
|
|
}
|
|
|
|
.ipsStreamItem_titleSmall {
|
|
font-weight: 400;
|
|
font-size: 15px;
|
|
}
|
|
|
|
.ipsStreamItem_unread .ipsStreamItem_title,
|
|
.ipsStreamItem_unread .ipsStreamItem_titleSmall {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsStreamItem_status {
|
|
font-size: 13px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem_snippet,
|
|
html[dir="ltr"] .ipsStreamItem_meta {
|
|
margin-left: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem_snippet,
|
|
html[dir="rtl"] .ipsStreamItem_meta {
|
|
margin-right: 55px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem_loadMore {
|
|
margin-left: 25px;
|
|
margin-top: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem_loadMore {
|
|
margin-right: 25px;
|
|
margin-top: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem_bar hr.ipsHr {
|
|
border-color: #3d5e78;
|
|
margin-left: 25px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem_bar hr.ipsHr {
|
|
border-color: #3d5e78;
|
|
margin-right: 25px;
|
|
}
|
|
|
|
/* The little pointer on the box */
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before,
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:after {
|
|
content: '';
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
position: absolute;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before {
|
|
border-width: 12px;
|
|
top: 7px;
|
|
z-index: 100;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before {
|
|
border-color: transparent #e0e0e0 transparent transparent;
|
|
left: -24px;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before {
|
|
border-color: transparent transparent transparent #e0e0e0;
|
|
right: -24px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock.ipsModerated:before {
|
|
border-color: transparent #ede4e4 transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock.ipsModerated:before {
|
|
border-color: transparent transparent transparent #ede4e4;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem:after {
|
|
border-width: 11px;
|
|
top: 8px;
|
|
z-index: 200;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem:after {
|
|
left: -22px;
|
|
border-color: transparent #fff transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem:after {
|
|
right: -22px;
|
|
border-color: transparent transparent transparent #fff;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem.ipsModerated:after {
|
|
border-color: transparent {theme="moderated"} transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem.ipsModerated:after {
|
|
border-color: transparent transparent transparent {theme="moderated"};
|
|
}
|
|
|
|
/* The circle on the timeline */
|
|
.ipsStream_withTimeline .ipsStreamItem_container:before {
|
|
content: '';
|
|
box-sizing: border-box;
|
|
display: block;
|
|
position: absolute;
|
|
}
|
|
|
|
/* Comment items */
|
|
.ipsStream_comment {
|
|
background: {theme="area_background_light"};
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_comment {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsStream_comment {
|
|
margin-right: 30px;
|
|
}
|
|
|
|
.ipsStream_comment:before {
|
|
content: '';
|
|
display: block;
|
|
width: 0;
|
|
height: 0;
|
|
position: absolute;
|
|
top: 10px;
|
|
border-width: 15px;
|
|
border-style: solid;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_comment:before {
|
|
left: 0px;
|
|
border-color: transparent {theme="area_background_light"} transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsStream_comment:before {
|
|
right: 0px;
|
|
border-color: transparent transparent transparent {theme="area_background_light"};
|
|
}
|
|
|
|
/* ACTIONS */
|
|
/* e.g. follows, joins etc. */
|
|
.ipsStreamItem_actionBlock {
|
|
font-size: 13px;
|
|
}
|
|
|
|
/* TIMES */
|
|
.ipsStreamItem_time {
|
|
display: inline-block;
|
|
border-radius: 20px;
|
|
background: {theme="timeline_color"};
|
|
color: #fff;
|
|
line-height: 24px;
|
|
font-size: 12px;
|
|
padding: 0 20px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem_time {
|
|
margin-left: -20px;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem_time {
|
|
margin-right: -20px;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed ~ .ipsStreamItem_time {
|
|
margin-top: 7px;
|
|
margin-bottom: 7px;
|
|
}
|
|
|
|
.ipsStream .ipsStreamItem_time:first-child {
|
|
margin-bottom: 7px;
|
|
}
|
|
|
|
/* CONTENT TYPE */
|
|
.ipsStream .ipsStreamItem_contentType {
|
|
position: absolute;
|
|
display: block;
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 30px;
|
|
line-height: 25px;
|
|
font-size: 15px;
|
|
text-align: center;
|
|
background: #fff;
|
|
z-index: 500;
|
|
border: 2px solid {theme="timeline_color"};
|
|
}
|
|
|
|
.ipsStreamItem.ipsModerated .ipsStreamItem_contentType {
|
|
background: #e8dfdf;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream.ipsStream_withTimeline .ipsStreamItem_contentType {
|
|
left: -48px;
|
|
top: 5px;
|
|
}
|
|
html[dir="ltr"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
right: 7px;
|
|
top: 7px;
|
|
}
|
|
html[dir="rtl"] .ipsStream.ipsStream_withTimeline .ipsStreamItem_contentType {
|
|
right: -48px;
|
|
top: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
left: 7px;
|
|
top: 7px;
|
|
}
|
|
|
|
/* SNIPPET STYLES */
|
|
.ipsStream_price {
|
|
color: {theme="price"};
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsStream_snippetInfo {
|
|
border-style: solid;
|
|
border-color: rgba(0,0,0,0.1);
|
|
padding-left: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_snippetInfo {
|
|
border-width: 0 0 0 1px;
|
|
}
|
|
html[dir="rtl"] .ipsStream_snippetInfo {
|
|
border-width: 0 1px 0 0;
|
|
}
|
|
|
|
/* EXPANDED VIEW */
|
|
html[dir="ltr"] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_expanded {
|
|
padding-left: 65px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_expanded {
|
|
padding-right: 65px;
|
|
}
|
|
|
|
/* CONDENSED VIEW */
|
|
.ipsStreamItem_condensed .ipsStreamItem_titleSmall {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.ipsStreamItem_condensed.ipsStreamItem {
|
|
margin-top: 5px;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ipsStreamItem_condensed.ipsStreamItem.ipsStreamItem_contentBlock {
|
|
padding: 10px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_condensed {
|
|
padding-left: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_condensed {
|
|
padding-right: 55px;
|
|
}
|
|
|
|
.ipsStreamItem_condensed .ipsUserPhoto_tiny img {
|
|
width: 30px;
|
|
height: 30px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem_condensed .ipsPhotoPanel_small > div {
|
|
margin-left: 85px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem_condensed .ipsPhotoPanel_small > div {
|
|
margin-right: 85px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem_condensed .ipsPhotoPanel_mini > div {
|
|
margin-left: 45px;
|
|
margin-right: 200px;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem_condensed .ipsPhotoPanel_mini > div {
|
|
margin-right: 45px;
|
|
margin-left: 200px;
|
|
}
|
|
|
|
.ipsStreamItem_condensed .ipsCalendarDate {
|
|
width: 75px;
|
|
}
|
|
|
|
.ipsStreamItem_condensed .ipsStreamItem_status {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_contentBlock:before,
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_contentBlock:after {
|
|
top: 50%;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_contentBlock:before {
|
|
margin-top: -12px; /* Needs to be equal to the border width of this pointer */
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_contentBlock:after {
|
|
margin-top: -11px; /* Needs to be equal to the border width of this pointer */
|
|
}
|
|
|
|
html[dir] .ipsStream.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_contentType {
|
|
top: 50%;
|
|
margin-top: -15px; /* Half of the badge height */
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats {
|
|
width: 200px;
|
|
line-height: 24px;
|
|
position: absolute;
|
|
top: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats {
|
|
border-left: 1px solid rgba(0,0,0,0.2);
|
|
padding-left: 15px;
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats {
|
|
border-right: 1px solid rgba(0,0,0,0.2);
|
|
padding-right: 15px;
|
|
left: 0;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats time,
|
|
.ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_actionBlock time {
|
|
font-size: 0px;
|
|
line-height: 1;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats time:after,
|
|
.ipsStreamItem.ipsStreamItem_condensed.ipsStreamItem_actionBlock time:after {
|
|
content: attr(data-short);
|
|
font-size: 13px;
|
|
line-height: inherit;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="tables.css">/* Tables; used primarily in AdminCP */
|
|
.ipsTable {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
}
|
|
|
|
.ipsTable th {
|
|
text-align: left;
|
|
background: #f3f3f3;
|
|
padding: 15px 10px;
|
|
font-size: 13px;
|
|
}
|
|
html[dir="rtl"] .ipsTable th {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsTable th a {
|
|
color: inherit;
|
|
}
|
|
|
|
.ipsTable th, .ipsTable td {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsTable th.ipsPos_top, .ipsTable td.ipsPos_top {
|
|
vertical-align: top;
|
|
}
|
|
|
|
.ipsTable td {
|
|
padding: 7px;
|
|
border-bottom: 1px solid rgba(0,0,0,0.01);
|
|
}
|
|
|
|
.ipsTable_zebra tbody tr:nth-child( even ):not(.ipsTable_highlight) {
|
|
background: #f9f9f9;
|
|
}
|
|
|
|
.ipsTable_zebra tbody tr:nth-child( even ):not(.ipsTable_highlight) td {
|
|
border-bottom: 1px solid rgba(0,0,0,0.025);
|
|
}
|
|
|
|
.ipsTable_highlight {
|
|
background: #f2eae2;
|
|
}
|
|
|
|
.ipsTable_highlight .ipsCommentCount {
|
|
background-color: #e2d6ca;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTable_highlight .ipsCommentCount:after {
|
|
border-color: transparent #e2d6ca transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsTable_highlight .ipsCommentCount:after {
|
|
border-color: transparent transparent transparent #e2d6ca;
|
|
}
|
|
|
|
/* Column sizes */
|
|
.ipsTable td.ipsTable_icon {
|
|
width: 65px;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsTable td.ipsTable_controls {
|
|
width: 120px;
|
|
}
|
|
|
|
/* Sortables */
|
|
.ipsTable_sortable {
|
|
position: relative;
|
|
}
|
|
|
|
.ipsTable_sortable:hover {
|
|
background: rgba(0,0,0,0.06);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.ipsTable_sortable:hover:after {
|
|
opacity: 0.3;
|
|
}
|
|
|
|
.ipsTable_sortable a {
|
|
display: block;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsTable_sortIcon {
|
|
display: block;
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -8px;
|
|
}
|
|
html[dir="ltr"] .ipsTable_sortIcon {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsTable_sortIcon {
|
|
right: auto;
|
|
left: 0;
|
|
}
|
|
|
|
.ipsTable_sortable .ipsTable_sortIcon:after {
|
|
font-family: 'FontAwesome';
|
|
display: block;
|
|
color: #000;
|
|
opacity: 0.15;
|
|
}
|
|
|
|
.ipsTable_sortable.ipsTable_sortableDesc .ipsTable_sortIcon:after {
|
|
content: '\f0d7';
|
|
}
|
|
|
|
.ipsTable_sortable.ipsTable_sortableAsc .ipsTable_sortIcon:after {
|
|
content: '\f0d8';
|
|
}
|
|
|
|
.ipsTable_sortable.ipsTable_sortableActive {
|
|
background: #4791c4;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsTable_sortable.ipsTable_sortableActive .ipsTable_sortIcon:after {
|
|
color: #fff;
|
|
opacity: 1;
|
|
}
|
|
|
|
/* Matrices */
|
|
.ipsTable.ipsMatrix thead th {
|
|
background: #262e33;
|
|
color: #fff;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsTable.ipsMatrix .ipsMatrix_subHeader {
|
|
background: #f9f9f9;
|
|
color: #333;
|
|
padding: 15px;
|
|
font-size: 16px;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsTable.ipsMatrix td {
|
|
padding: 15px;
|
|
}
|
|
|
|
.ipsTable.ipsMatrix .ipsMatrix_error {
|
|
background: #f9eef1;
|
|
}
|
|
|
|
.ipsTable.ipsMatrix .ipsButton[data-action] {
|
|
line-height: 18px;
|
|
padding: 0 5px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.ipsTable.ipsMatrix .ipsMatrix_highlighted {
|
|
background: #FBE9E7;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="tabs.css"><![CDATA[/* Tab bars... bars of tabs, see? */
|
|
.ipsTabs {
|
|
background: #3d648a;
|
|
padding: 10px 10px 0 10px;
|
|
margin: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
/* action='expandTabs' is used to open tab menus on responsive views. We hide by default */
|
|
.ipsTabs [data-action='expandTabs'] {
|
|
display: none !important;
|
|
}
|
|
|
|
.ipsTabs [role="tablist"] {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
/* On stretched tabs, we set the ul to table so that cells share the available space */
|
|
.ipsTabs.ipsTabs_stretch [role="tablist"] {
|
|
display: table;
|
|
table-layout: fixed;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_stretch [role="tablist"] > li {
|
|
display: table-cell;
|
|
}
|
|
|
|
.ipsTabs_small {
|
|
padding: 4px 4px 0 4px;
|
|
}
|
|
|
|
.ipsTabs_item {
|
|
display: block;
|
|
float: left;
|
|
white-space: nowrap;
|
|
line-height: 38px;
|
|
font-size: 14px;
|
|
color: #fff;
|
|
background: rgba(255,255,255,0.1);
|
|
padding: 0 20px;
|
|
text-overflow: ellipsis;
|
|
max-width: 100%;
|
|
overflow: hidden;
|
|
margin-right: 2px;
|
|
}
|
|
html[dir="rtl"] .ipsTabs_item {
|
|
float: right;
|
|
margin-left: 2px;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_stretch .ipsTabs_item {
|
|
float: none;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_stretch.ipsTabs_small .ipsTabs_item {
|
|
padding: 0 10px;
|
|
text-align: center;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTabs [role="tablist"] > li:last-child .ipsTabs_item {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsTabs [role="tablist"] > li:last-child .ipsTabs_item {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_small .ipsTabs_item {
|
|
font-size: 12px;
|
|
line-height: 30px;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsTabs_activeItem {
|
|
background: #fff;
|
|
color: #333;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsTabs_activeItem:hover {
|
|
color: #333;
|
|
}
|
|
|
|
.ipsTabs_item:not( .ipsTabs_activeItem ):hover {
|
|
background: rgba(255,255,255,0.2);
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsTabs_withIcons .ipsTabs_item {
|
|
text-align: center;
|
|
padding: 8px 15px;
|
|
line-height: 24px;
|
|
min-width: 125px;
|
|
}
|
|
|
|
.ipsTabs_withIcons .ipsTabs_item i {
|
|
font-size: 20px;
|
|
display: block;
|
|
margin: 0 auto;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsTabs_dummyItem {
|
|
background: #4e5b62;
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsTabs_panel {
|
|
height: 100%;
|
|
background: #fff;
|
|
}
|
|
|
|
/* 'Contained' tabs with a border */
|
|
.ipsTabs_panels.ipsTabs_contained {
|
|
border-width: 3px;
|
|
border-style: solid;
|
|
border-color: #e8e8e8;
|
|
border-top: 0;
|
|
}
|
|
|
|
.ipsTabs_panels.ipsTabs_contained .ipsTabs_panel {
|
|
padding: 15px;
|
|
}
|
|
|
|
.ipsTabs_panels.ipsTabs_contained .ipsTabs_panel .ipsTabs_pullOut {
|
|
margin: -15px;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_contained {
|
|
padding: 0;
|
|
border-width: 3px 3px 0px 3px;
|
|
border-style: solid;
|
|
border-color: #ededed #e8e8e8 transparent #ededed;
|
|
}
|
|
|
|
.ipsTabs_loadingContent {
|
|
min-height: 150px;
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="tags.css"><![CDATA[/* Tag lists & prefixes */
|
|
.ipsTags_inline {
|
|
display: inline;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTags > li {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsTags > li {
|
|
margin-left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTags li:first-child a {
|
|
margin-left: 8px;
|
|
}
|
|
html[dir="rtl"] .ipsTags li:first-child a {
|
|
margin-right: 8px;
|
|
}
|
|
|
|
.ipsTags a, .ipsTag_prefix {
|
|
background: #676767;
|
|
color: #fff !important; /* important required to override title coloring */
|
|
font-size: 10px;
|
|
vertical-align: middle;
|
|
line-height: 15px;
|
|
height: 16px;
|
|
padding: 0 7px;
|
|
margin: -3px 3px 0 8px;
|
|
display: inline-block;
|
|
position: relative;
|
|
letter-spacing: 0;
|
|
border-radius: 0px 2px 2px 0;
|
|
}
|
|
html[dir="rtl"] .ipsTags a,
|
|
html[dir="rtl"] .ipsTag_prefix {
|
|
margin: -3px 8px 0 3px;
|
|
border-radius: 2px 0 0 2px;
|
|
}
|
|
|
|
.ipsTags a > span, .ipsTag_prefix > span {
|
|
display: inline-block;
|
|
max-width: 250px;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.ipsTags a:hover {
|
|
background: #707070;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTags a:hover:before {
|
|
border-color: transparent #707070 transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsTags a:hover:before {
|
|
border-color: transparent transparent transparent #707070;
|
|
}
|
|
|
|
.ipsTags a:before, .ipsTag_prefix:before {
|
|
content: '';
|
|
display: block;
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
border-width: 8px 8px;
|
|
position: absolute;
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsTags a:before,
|
|
html[dir="ltr"] .ipsTag_prefix:before {
|
|
border-color: transparent #676767 transparent transparent;
|
|
right: 100%;
|
|
}
|
|
html[dir="rtl"] .ipsTags a:before,
|
|
html[dir="rtl"] .ipsTag_prefix:before {
|
|
border-color: transparent transparent transparent #676767;
|
|
left: 100%;
|
|
}
|
|
|
|
.ipsTags a:after, .ipsTag_prefix:after {
|
|
content: '';
|
|
display: block;
|
|
width: 4px;
|
|
height: 4px;
|
|
border-radius: 4px;
|
|
background: #fff;
|
|
position: absolute;
|
|
top: 6px;
|
|
}
|
|
html[dir="ltr"] .ipsTags a:after,
|
|
html[dir="ltr"] .ipsTag_prefix:after {
|
|
left: -3px;
|
|
}
|
|
html[dir="rtl"] .ipsTags a:after,
|
|
html[dir="rtl"] .ipsTag_prefix:after {
|
|
right: -3px;
|
|
}
|
|
|
|
/* Search results */
|
|
.ipsTags a mark, .ipsTag_prefix mark {
|
|
background: #fff !important;
|
|
border-bottom: none;
|
|
}
|
|
|
|
/* Prefix: shown before titles on content items */
|
|
.ipsTag_prefix {
|
|
background: {theme="prefix"};
|
|
color: #fff !important;
|
|
}
|
|
html[dir="ltr"] .ipsTag_prefix {
|
|
margin-left: 8px;
|
|
}
|
|
html[dir="rtl"] .ipsTag_prefix {
|
|
margin-right: 8px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTag_prefix:before {
|
|
border-color: transparent {theme="prefix"} transparent transparent;
|
|
}
|
|
html[dir="rtl"] .ipsTag_prefix:before {
|
|
border-color: transparent transparent transparent {theme="prefix"};
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="toolbox.css">/* Toolboxes are side panels, used for things like sidebar manager and easy mode themes */
|
|
.ipsApp .ipsToolbox {
|
|
background: #212223;
|
|
}
|
|
|
|
.ipsApp .ipsToolbox a:not( .ipsButton ) {
|
|
color: #a8bed5;
|
|
}
|
|
.ipsApp .ipsToolbox .ipsToolbox_title {
|
|
color: #fff;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.ipsApp .ipsToolbox .ipsToolbox_sectionTitle {
|
|
background: #000;
|
|
color: #dfdfdf;
|
|
padding: 10px 15px;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsApp .ipsToolbox input, .ipsApp .ipsToolbox select,
|
|
.ipsApp .ipsToolbox textarea {
|
|
background-color: rgba(255,255,255,0.1);
|
|
border: 1px solid rgba(0,0,0,0.6);
|
|
color: #fff;
|
|
}
|
|
|
|
.ipsApp .ipsToolbox input:focus, .ipsApp .ipsToolbox textarea:focus {
|
|
background: rgba(255,255,255,0.2);
|
|
}
|
|
|
|
.ipsApp .ipsToolbox select {
|
|
background: rgba(0,0,0,0.6);
|
|
width: 100%;
|
|
max-width: 350px;
|
|
}
|
|
|
|
.ipsApp .ipsToolbox input[type=number] {
|
|
width: 100%;
|
|
max-width: 350px;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="typography.css"><![CDATA[/* HEADINGS */
|
|
/* ======================================================== */
|
|
/* Page title: the large text shown at the top of pages */
|
|
.ipsType_pageTitle {
|
|
font-size: 26px;
|
|
font-weight: 400;
|
|
line-height: 1.2;
|
|
margin: 0;
|
|
color: #000;
|
|
}
|
|
|
|
.ipsType_pageTitle.ipsType_largeTitle {
|
|
font-size: 27px;
|
|
letter-spacing: -1px;
|
|
}
|
|
|
|
.ipsType_pageTitle > .fa {
|
|
font-size: 18px;
|
|
}
|
|
|
|
.ipsType_pageTitle a:not( .ipsBadge, .ipsButton ) {
|
|
color: inherit;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* Section title: formerly known as main title, the bar separating sections */
|
|
.ipsType_sectionTitle {
|
|
font-size: 15px;
|
|
font-weight: 400;
|
|
padding: 11px 15px 11px 15px;
|
|
margin-top: 0;
|
|
background: {theme="section_title"};
|
|
color: {theme="section_title_font"};
|
|
border-radius: 2px 2px 0px 0px;
|
|
}
|
|
|
|
a.ipsType_sectionTitle, .ipsType_sectionTitle a {
|
|
color: {theme="section_title_font"};
|
|
}
|
|
|
|
.ipsType_sectionTitle .ipsButton {
|
|
position: relative;
|
|
top: -5px;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* Secondary title: a secondary version of above, for sub-sections */
|
|
.ipsType_secondaryTitle {
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
padding: 10px 15px 10px 15px;
|
|
margin-top: 0;
|
|
border-radius: 3px 3px 0 0;
|
|
background: {theme="secondary_title"};
|
|
color: {theme="secondary_title_font"};
|
|
}
|
|
|
|
a.ipsType_secondaryTitle, .ipsType_secondaryTitle a {
|
|
color: {theme="secondary_title_font"};
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* Section heading: a text-based heading for smaller sections */
|
|
.ipsType_sectionHead {
|
|
font-size: 20px;
|
|
color: #000;
|
|
line-height: 24px;
|
|
font-weight: 400;
|
|
display: inline-block;
|
|
margin: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* Minor heading: used in miscellanious situations */
|
|
.ipsType_minorHeading {
|
|
color: #868686;
|
|
text-transform: uppercase;
|
|
font-size: 11px;
|
|
margin: 0;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* ALIGNMENT */
|
|
.ipsType_center {
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsType_left {
|
|
text-align: left;
|
|
}
|
|
html[dir="rtl"] .ipsType_left {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsType_right {
|
|
text-align: right;
|
|
}
|
|
html[dir="rtl"] .ipsType_right {
|
|
text-align: left;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* MISC */
|
|
.ipsType_bold {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsType_unbold {
|
|
font-weight: normal;
|
|
}
|
|
|
|
.ipsType_monospace {
|
|
font-family: monospace;
|
|
}
|
|
|
|
.ipsType_noBreak {
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.ipsType_break {
|
|
word-break: break-word;
|
|
word-wrap: break-word;
|
|
-webkit-hyphens: auto;
|
|
-moz-hyphens: auto;
|
|
-ms-hyphens: auto;
|
|
hyphens: auto;
|
|
}
|
|
|
|
.ipsType_richText {
|
|
word-wrap: break-word;
|
|
overflow-wrap: break-word;
|
|
line-height: 1.5;
|
|
color: #272a34;
|
|
}
|
|
|
|
.ipsType_normal.ipsType_richText {
|
|
line-height: 1.6;
|
|
}
|
|
|
|
{{if intval( settings.editor_paragraph_padding ) === 0}}
|
|
.ipsType_richText p:not( [class] ) {
|
|
margin-top: 0;
|
|
margin-bottom: 0;
|
|
}
|
|
{{endif}}
|
|
|
|
.ipsType_richText a {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
.ipsType_richText .ipsForm a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* Makes links go the color of surrounding text */
|
|
a.ipsType_blendLinks, .ipsType_blendLinks a {
|
|
color: inherit;
|
|
}
|
|
|
|
a.ipsType_blendLinks:not( .ipsType_noUnderline ):hover,
|
|
.ipsType_blendLinks:not( .ipsType_noUnderline ) a:not( .ipsType_noUnderline ):hover {
|
|
color: {theme="link_hover"};
|
|
}
|
|
|
|
.ipsType_reset {
|
|
margin: 0;
|
|
}
|
|
|
|
/* I LIKE SHOUTING */
|
|
.ipsType_uppercase {
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
/* Highlighted words (e.g. search results) */
|
|
mark {
|
|
background: #FBE9E7;
|
|
padding: 0 5px;
|
|
color: #000 !important;
|
|
font-weight: bold !important;
|
|
display: inline-block;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* SIZING */
|
|
.ipsType_small {
|
|
font-size: 11px;
|
|
}
|
|
|
|
.ipsType_small:not( .ipsType_richText ){
|
|
line-height: 16px;
|
|
}
|
|
|
|
.ipsType_medium {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsType_medium:not( .ipsType_richText ){
|
|
line-height: 20px;
|
|
}
|
|
|
|
.ipsType_normal {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.ipsType_normal:not( .ipsType_richText ){
|
|
line-height: 22px;
|
|
}
|
|
|
|
.ipsType_large {
|
|
font-size: 16px;
|
|
}
|
|
|
|
.ipsType_large:not( .ipsType_richText ){
|
|
line-height: 20px;
|
|
}
|
|
|
|
.ipsType_veryLarge {
|
|
font-size: 44px;
|
|
line-height: 52px;
|
|
font-weight: 300;
|
|
}
|
|
|
|
.ipsType_huge {
|
|
font-size: 72px;
|
|
line-height: 80px;
|
|
font-weight: 300;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* COLORS */
|
|
.ipsType_light {
|
|
color: {theme="text_light"};
|
|
}
|
|
|
|
.ipsType_warning, .ipsType_negative {
|
|
color: #c75050;
|
|
}
|
|
|
|
.ipsType_issue {
|
|
color: #d69625;
|
|
}
|
|
|
|
.ipsType_success, .ipsType_positive {
|
|
color: #598f5b;
|
|
}
|
|
|
|
.ipsType_neutral {
|
|
color: #959595;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* RICH TEXT */
|
|
.ipsType_richText > p:first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.ipsType_richText > p:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsType_richText img {
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* ======================================================== */
|
|
/* TRUNCATED TEXT */
|
|
.ipsTruncate {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsTruncate.ipsTruncate_line {
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
a.ipsTruncate.ipsTruncate_line,
|
|
span.ipsTruncate.ipsTruncate_line {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ipsTruncate + .ipsTruncate_more {
|
|
display: inline-block;
|
|
text-decoration: none !important;
|
|
cursor: pointer;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.ipsTruncate > .ipsTruncate_more span {
|
|
z-index: 40;
|
|
}
|
|
|
|
/*.ipsAreaBackground .ipsTruncate > .ipsTruncate_more,
|
|
.ipsAreaBackground .ipsTruncate > .ipsTruncate_more span {
|
|
background: {theme="area_background"};
|
|
}
|
|
|
|
.ipsAreaBackground_light .ipsTruncate > .ipsTruncate_more,
|
|
.ipsAreaBackground_light .ipsTruncate > .ipsTruncate_more span {
|
|
background: {theme="area_background_light"};
|
|
}
|
|
|
|
.ipsAreaBackground_reset .ipsTruncate > .ipsTruncate_more,
|
|
.ipsAreaBackground_reset .ipsTruncate > .ipsTruncate_more span {
|
|
background: {theme="area_background_reset"};
|
|
}*/]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="members" css_name="group.css"><![CDATA[.cGroupPermissions.ipsTable.ipsMatrix tr:not( .ipsMatrix_empty ) td {
|
|
padding: 0;
|
|
}
|
|
|
|
.cGroupPermissions.ipsTable.ipsMatrix tr:not( .ipsMatrix_empty ) td > div {
|
|
padding: 10px;
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="members" css_name="member.css">.editMemberPhoto {
|
|
margin: 15px auto;
|
|
width: 65%;
|
|
text-align: right;
|
|
}
|
|
html[dir="rtl"] .editMemberPhoto {
|
|
text-align: left;
|
|
}
|
|
|
|
.editMemberPhoto .ipsControlStrip {
|
|
float: right;
|
|
opacity: 1;
|
|
position: relative;
|
|
bottom: 22px;
|
|
}
|
|
html[dir="rtl"] .editMemberPhoto .ipsControlStrip {
|
|
float: left;
|
|
}
|
|
|
|
.memberSidebarInfo {
|
|
margin: 15px;
|
|
padding: 10px;
|
|
border: 1px solid #B3C2D2;
|
|
}
|
|
|
|
.memberSidebarInfo dt {
|
|
float:left;
|
|
width: 60%;
|
|
font-weight: bold;
|
|
}
|
|
html[dir="rtl"] .memberSidebarInfo dt {
|
|
float: right;
|
|
}
|
|
|
|
#elEditMemberHeader {
|
|
position: relative;
|
|
}
|
|
|
|
#elEditPhoto {
|
|
position: absolute;
|
|
bottom: 10px;
|
|
}
|
|
html[dir="ltr"] #elEditPhoto {
|
|
left: 25px;
|
|
}
|
|
html[dir="rtl"] #elEditPhoto {
|
|
right: 25px;
|
|
}
|
|
|
|
.cIPInfo_map {
|
|
padding-top: 0;
|
|
padding-left: 0;
|
|
}
|
|
|
|
.cIPInfo_value {
|
|
font-size: 34px;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="members" css_name="notifications.css">.ipsApp .cMemberNotifications .ipsMatrixHeader,
|
|
.ipsApp .cMemberNotifications td {
|
|
text-align: left;
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="members" css_name="restrictions.css"><![CDATA[#elRestrictions_content ul {
|
|
list-style: none;
|
|
}
|
|
|
|
#elRestrictions_content li {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
#elRestrictions_content .acpRestrictions_disabled {
|
|
opacity: 0.5;
|
|
pointer-events: none;
|
|
}
|
|
|
|
#elRestrictions_root {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/*#elRestrictions_root > li:nth-child( odd ) {
|
|
background: #f9f9f9;
|
|
}*/
|
|
|
|
#elRestrictions_root > li {
|
|
padding: 15px 15px 15px 30px;
|
|
border-bottom: 1px solid #f0f0f0;
|
|
}
|
|
html[dir="rtl"] #elRestrictions_root > li {
|
|
padding: 15px 30px 15px 15px;
|
|
}
|
|
|
|
#elRestrictions_root > li > ul > li {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#elRestrictions_root > li > ul > li:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
[data-role='massToggle'], [data-role='toggle'] {
|
|
opacity: 0;
|
|
{prefix="transition" value="all 0.2s linear"}
|
|
}
|
|
|
|
.acpRestrictions_header h2,
|
|
.acpRestrictions_subHeader h3 {
|
|
display: inline;
|
|
margin: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .acpRestrictions_header + ul {
|
|
padding-left: 15px;
|
|
}
|
|
html[dir="rtl"] .acpRestrictions_header + ul {
|
|
padding-right: 15px;
|
|
}
|
|
|
|
.acpRestrictions_header > label {
|
|
font-size: 15px;
|
|
}
|
|
|
|
.acpRestrictions_subHeader {
|
|
font-weight: bold;
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.acpRestrictions_subHeader h3 {
|
|
font-size: 14px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.acpRestrictions_subHeader:hover [data-role='massToggle'],
|
|
.acpRestrictions_header:hover [data-role='toggle'] {
|
|
opacity: 1;
|
|
}
|
|
|
|
.acpRestrictions_subHeader h3:before {
|
|
display: inline-block;
|
|
font-family: 'FontAwesome';
|
|
font-size: 17px;
|
|
}
|
|
html[dir="ltr"] .acpRestrictions_subHeader h3:before {
|
|
content: '\f0da';
|
|
margin-right: 5px;
|
|
}
|
|
html[dir="rtl"] .acpRestrictions_subHeader h3:before {
|
|
content: '\f0d9';
|
|
margin-right: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .acpRestrictions_closed.acpRestrictions_subHeader h3:before {
|
|
content: '\f0da';
|
|
}
|
|
html[dir="rtl"] .acpRestrictions_closed.acpRestrictions_subHeader h3:before {
|
|
content: '\f0d9';
|
|
}
|
|
|
|
.acpRestrictions_open.acpRestrictions_subHeader h3:before {
|
|
content: '\f0d7';
|
|
}
|
|
|
|
.acpRestrictions_closed.acpRestrictions_subHeader + ul {
|
|
display: none;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="promotion" css_name="advertisements.css">.ipsAdvertisement img {
|
|
max-width: 300px;
|
|
max-height: 100px;
|
|
}
|
|
|
|
.ipsAdvertisementPreview {
|
|
border: 0px;
|
|
}
|
|
|
|
.ipsAdvertisement .ipsAdvertisement_large,
|
|
.ipsAdvertisement .ipsAdvertisement_medium,
|
|
.ipsAdvertisement .ipsAdvertisement_small {
|
|
display: block !important;
|
|
background: transparent !important;
|
|
margin: 0 !important;
|
|
}
|
|
|
|
.ipsAdvertisement_tag {
|
|
display: none !important;
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="badges.css">/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
/* Make the unread indicators larger on mobile */
|
|
.ipsItemStatus:not( .ipsItemStatus_large ),
|
|
.ipsItemStatus.ipsItemStatus_tiny,
|
|
.ipsItemStatus.ipsItemStatus_small {
|
|
font-size: 18px;
|
|
vertical-align: initial;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.ipsBadge.ipsBadge_icon {
|
|
width: 19px;
|
|
height: 19px;
|
|
line-height: 19px;
|
|
font-size: 11px;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="buttons.css">/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsButtonBar {
|
|
background: transparent;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="buttons.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsButtonBar [data-role='tablePagination'] {
|
|
clear: both;
|
|
}
|
|
|
|
.ipsButtonBar .ipsPagination {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsButtonBar .ipsButtonRow + [data-role='tablePagination'] .ipsPagination {
|
|
margin-top: 33px;
|
|
}
|
|
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="comments.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
html[dir="ltr"] .ipsComment_content,
|
|
html[dir="ltr"] .ipsComment_subComments .ipsComment_content {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="ltr"] .ipsComment_content,
|
|
html[dir="ltr"] .ipsComment_subComments .ipsComment_content {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComment_subComments {
|
|
margin-left: 0;
|
|
padding: 15px 0 0 0;
|
|
}
|
|
html[dir="rtl"] .ipsComment_subComments {
|
|
margin-right: 0;
|
|
padding: 15px 0 0 0;
|
|
}
|
|
|
|
.ipsComment_parent > .ipsComment > .ipsComment_content:before {
|
|
display: none;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="compose.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
}
|
|
|
|
@media screen and (max-width: 767px) {
|
|
.ipsApp .ipsComposeArea .ipsToolList .ipsComposeArea_formControl {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* Hide photo and arrow */
|
|
.ipsComposeArea > .ipsUserPhoto,
|
|
.ipsComposeArea_editor:before {
|
|
display: none;
|
|
}
|
|
|
|
/* Make editor box take up whole width */
|
|
html[dir="ltr"] .ipsComposeArea.ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea.ipsComposeArea_withPhoto .ipsComposeArea_editor {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsComposeArea.ipsComposeArea_withPhoto .ipsComposeArea_editor:before {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_warning {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_warning {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsComposeArea_dropZone .fa-paperclip {
|
|
font-size: 24px;
|
|
}
|
|
.ipsComposeArea_dropZone .fa-clipboard {
|
|
font-size: 19px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsComposeArea_dropZone > div {
|
|
margin-left: 30px;
|
|
}
|
|
html[dir="rtl"] .ipsComposeArea_dropZone > div {
|
|
margin-right: 30px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="controlstrip.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsControlStrip {
|
|
float: none;
|
|
}
|
|
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="data-lists.css">/* DESKTOP */
|
|
@media screen and (max-width: 1200px) {
|
|
|
|
/* Hides the photo and makes the column narrower */
|
|
.ipsDataItem_lastPoster {
|
|
min-width: 160px;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster li:first-child {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li {
|
|
margin: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li {
|
|
margin: 0;
|
|
}
|
|
}
|
|
|
|
/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
/* Reset data list styles */
|
|
.ipsDataList, .ipsDataItem, .ipsDataItem_main, .ipsDataItem_stats, .ipsDataItem_lastPoster,
|
|
.ipsDataItem_generic, .ipsDataitem_modCheck {
|
|
display: block !important;
|
|
padding: 0 !important;
|
|
width: auto;
|
|
}
|
|
|
|
/* Main item */
|
|
.ipsDataItem {
|
|
padding: 15px 10px 15px 10px !important;
|
|
}
|
|
|
|
.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem {
|
|
padding: 7px !important;
|
|
}
|
|
|
|
/* Icon */
|
|
.ipsDataItem_icon {
|
|
width: auto;
|
|
padding-top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_icon {
|
|
float: left;
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_icon {
|
|
float: right;
|
|
padding-right: 0;
|
|
}
|
|
|
|
.ipsDataList_large .ipsDataItem_icon {
|
|
min-width: 40px;
|
|
padding-top: 4px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataList_large .ipsDataItem_icon {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataList_large .ipsDataItem_icon {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.ipsDataItem_icon br {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_icon:not( .ipsResponsive_hidePhone ):not( .ipsResponsive_hideTablet ) + .ipsDataItem_main,
|
|
html[dir="ltr"] .ipsDataItem_icon:not( .ipsResponsive_hidePhone ):not( .ipsResponsive_hideTablet ) + .ipsDataItem_main + .ipsDataItem_stats {
|
|
margin-left: 45px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_icon:not( .ipsResponsive_hidePhone ):not( .ipsResponsive_hideTablet ) + .ipsDataItem_main,
|
|
html[dir="rtl"] .ipsDataItem_icon:not( .ipsResponsive_hidePhone ):not( .ipsResponsive_hideTablet ) + .ipsDataItem_main + .ipsDataItem_stats {
|
|
margin-right: 45px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem.ipsDataItem_responsivePhoto .ipsDataItem_main {
|
|
margin-right: 50px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem.ipsDataItem_responsivePhoto .ipsDataItem_main {
|
|
margin-left: 50px;
|
|
}
|
|
|
|
.ipsDataItem_icon .ipsItemStatus.ipsItemStatus_large {
|
|
width: 30px;
|
|
height: 30px;
|
|
line-height: 30px;
|
|
font-size: 13px;
|
|
border-radius: 15px;
|
|
}
|
|
|
|
/* Stats */
|
|
.ipsDataItem_stats {
|
|
display: block;
|
|
min-width: 0;
|
|
text-align: left;
|
|
margin-top: 5px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_stats {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsDataItem_stats li, .ipsDataItem_stats dt, .ipsDataItem_stats dd {
|
|
display: inline;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_stats li {
|
|
margin-right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_stats li {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.ipsDataItem_statsLarge .ipsDataItem_stats_number {
|
|
font-size: inherit;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_unread .ipsDataItem_main {
|
|
border-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_unread .ipsDataItem_main {
|
|
border-right: 0;
|
|
}
|
|
|
|
/* Last poster */
|
|
.ipsDataItem_lastPoster {
|
|
display: none;
|
|
min-width: 0;
|
|
max-width: 100%;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto {
|
|
display: block !important;
|
|
position: absolute;
|
|
top: 18px !important;
|
|
padding: 0;
|
|
width: 34px;
|
|
height: 34px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto {
|
|
right: 10px !important;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto {
|
|
left: 10px !important;
|
|
}
|
|
|
|
html[dir] .ipsDataItem_lastPoster.ipsDataItem_withPhoto .ipsUserPhoto {
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto li {
|
|
display: none;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto li:first-child,
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child {
|
|
display: block;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child time {
|
|
display: block;
|
|
width: 0;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child time:after {
|
|
content: attr(data-short);
|
|
position: absolute;
|
|
top: 40px;
|
|
left: 0;
|
|
right: 0;
|
|
font-size: 11px;
|
|
text-align: center;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.ipsDataItem_lastPoster .ipsUserPhoto {
|
|
float: none;
|
|
display: block;
|
|
}
|
|
|
|
/* Mod check */
|
|
.ipsDataItem_modCheck {
|
|
position: absolute;
|
|
top: 36px;
|
|
}
|
|
html[dir="ltr"] .ipsDataItem_modCheck {
|
|
left: 10px;
|
|
padding: 0 10px 0 0;
|
|
}
|
|
html[dir="rtl"] .ipsDataItem_modCheck {
|
|
right: 10px;
|
|
padding: 0 0 0 10px;
|
|
}
|
|
|
|
.ipsDataItem_modCheck input[type="checkbox"],
|
|
.ipsDataItem:hover .ipsDataItem_modCheck input[type="checkbox"] {
|
|
opacity: 1;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsDataItem_subList li {
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsDataItem_subList li:after {
|
|
content: '';
|
|
}
|
|
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="engagement.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsLikeRep {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.ipsRep_mini .ipsLikeRep {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
|
|
/* TABLETS */
|
|
@media screen and (max-width: 979px) {
|
|
html[dir="ltr"] .ipsFollow {
|
|
float: right;
|
|
}
|
|
html[dir="rtl"] .ipsFollow {
|
|
float: left;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsFollow {
|
|
width: 100%;
|
|
display: table !important;
|
|
float: none !important;
|
|
}
|
|
|
|
.ipsFollow > a, .ipsFollow > span, .ipsFollow > a > span {
|
|
display: table-cell !important;
|
|
}
|
|
|
|
.ipsFollow > a:not( .ipsCommentCount ), .ipsFollow > span:not( .ipsCommentCount ), .ipsFollow > a > span:not( .ipsCommentCount ) {
|
|
width: 100%;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsFollow > a:not( .ipsCommentCount ),
|
|
html[dir="ltr"] .ipsFollow > span:not( .ipsCommentCount ),
|
|
html[dir="ltr"] .ipsFollow > a > span:not( .ipsCommentCount ) {
|
|
left: 0;
|
|
padding-left: 0;
|
|
}
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="forms.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsApp_admin .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
display: block;
|
|
background: #f5f5f5;
|
|
padding: 10px;
|
|
text-align: left;
|
|
margin: -7px -7px 10px -7px;
|
|
font-size: 15px;
|
|
}
|
|
html[dir="rtl"] .ipsApp_admin .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsFieldRow_section {
|
|
background: #707b81;
|
|
color: #fff;
|
|
font-weight: normal;
|
|
padding: 10px;
|
|
margin-top: 5px;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.ipsApp_admin .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content {
|
|
padding: 7px;
|
|
}
|
|
|
|
.ipsForm .ipsFieldRow {
|
|
margin-bottom: 0;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="forms.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.ipsApp .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title,
|
|
.ipsApp .ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label {
|
|
float: none !important;
|
|
width: auto;
|
|
text-align: inherit !important;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsApp .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content,
|
|
html[dir="ltr"] .ipsApp .ipsForm_horizontal .ipsFieldRow_checkbox {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsApp .ipsForm_horizontal .ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_content,
|
|
html[dir="rtl"] .ipsApp .ipsForm_horizontal .ipsFieldRow_checkbox {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsApp .ipsFieldRow_content select {
|
|
margin-top: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsApp textarea, .ipsApp input[type="text"], .ipsApp input[type="password"],
|
|
.ipsApp input[type="datetime"], .ipsApp input[type="datetime-local"], .ipsApp input[type="date"],
|
|
.ipsApp input[type="month"], .ipsApp input[type="time"], .ipsApp input[type="week"],
|
|
.ipsApp input[type="number"], .ipsApp input[type="email"], .ipsApp input[type="url"],
|
|
.ipsApp input[type="search"], .ipsApp input[type="tel"], .ipsApp input[type="color"], .ipsApp select {
|
|
font-size: 16px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="global.css"><![CDATA[/* DESKTOP */
|
|
@media screen and (max-width: 1200px) {
|
|
|
|
#acpAppMenu, #acpAppList > li {
|
|
width: 120px !important;
|
|
}
|
|
|
|
#acpAppList > li.acpAppList_active > ul {
|
|
display: none;
|
|
}
|
|
|
|
#acpAppList > li.acpAppList_active:hover > ul {
|
|
display: block;
|
|
}
|
|
|
|
#acpAppList > li:hover > ul {
|
|
box-shadow: 0px -2px 36px rgba(0,0,0,0.2);
|
|
}
|
|
|
|
#acpAppList #elHideMenu {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
/* TABLETS */
|
|
@media screen and (max-width: 979px) {
|
|
#acpAppMenu {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] #elAdminMobileNav {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #elAdminMobileNav {
|
|
left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #acpLiveSearch {
|
|
margin-right: 40px;
|
|
}
|
|
html[dir="rtl"] #acpLiveSearch {
|
|
margin-left: 40px;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
#acpLiveSearch {
|
|
display: none;
|
|
position: static;
|
|
background: #3a5a78;
|
|
margin: 0 !important;
|
|
padding: 15px;
|
|
}
|
|
|
|
.acpSearchOpen #acpLiveSearch {
|
|
display: block;
|
|
}
|
|
|
|
#acpLiveSearch input {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
|
|
#acpLiveSearchResults {
|
|
width: 100%;
|
|
top: 120px;
|
|
bottom: 0;
|
|
overflow: auto;
|
|
position: absolute;
|
|
}
|
|
html[dir="ltr"] #acpLiveSearchResults {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #acpLiveSearchResults {
|
|
right: 0;
|
|
}
|
|
|
|
#acpContent {
|
|
padding: 10px;
|
|
}
|
|
|
|
body.ipsApp.ipsApp_admin {
|
|
padding-top: 0;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header {
|
|
position: static;
|
|
}
|
|
|
|
.ipsApp.ipsApp_admin #ipsLayout_header #elSiteTitle {
|
|
max-width: 200px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.acpFormTabContent {
|
|
border: 0;
|
|
}
|
|
|
|
.acpWidgetSearch {
|
|
position: absolute;
|
|
bottom:6px;
|
|
}
|
|
html[dir="ltr"] .acpWidgetSearch {
|
|
right: 6px;
|
|
}
|
|
html[dir="rtl"] .acpWidgetSearch {
|
|
left: 6px;
|
|
}
|
|
|
|
.acpWidgetToolbar input[type="text"] ~ .ipsButtonBar.ipsResponsive_hideDesktop {
|
|
margin-top: 7px;
|
|
}
|
|
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="global.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
html[dir="ltr"] #elMobileNav {
|
|
text-align: right;
|
|
}
|
|
html[dir="rtl"] #elMobileNav {
|
|
text-align: left;
|
|
}
|
|
|
|
html[dir="ltr"] #elMobileNav li {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] #elMobileNav li {
|
|
margin-left: 0;
|
|
}
|
|
|
|
#elMobileNav li:not( #elMobileBreadcrumb ) a {
|
|
width: 50px;
|
|
height: 50px;
|
|
line-height: 50px;
|
|
color: #fff;
|
|
text-align: center;
|
|
font-size: 26px;
|
|
margin: 0;
|
|
position: relative;
|
|
display: block;
|
|
}
|
|
|
|
#elMobileNav .icon-newspaper {
|
|
font-size: 24px;
|
|
}
|
|
|
|
#elMobileNav .ipsNotificationCount {
|
|
top: 6px;
|
|
}
|
|
html[dir="ltr"] #elMobileNav .ipsNotificationCount {
|
|
right: 6px;
|
|
}
|
|
html[dir="rtl"] #elMobileNav .ipsNotificationCount {
|
|
left: 6px;
|
|
}
|
|
|
|
#ipsLayout_mobileNav li a {
|
|
display: block;
|
|
color: #fff;
|
|
line-height: 52px;
|
|
padding: 0 20px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
#ipsLayout_header > nav {
|
|
padding: 0;
|
|
}
|
|
|
|
/* Search */
|
|
#elSearch {
|
|
display: none; /* ...and hide search elem by default... */
|
|
}
|
|
|
|
body.cSearchOpen #ipsLayout_header > nav {
|
|
height: 50px; /* ...but set to 50px height when search is showing, because that's in the header element */
|
|
}
|
|
|
|
body.cSearchOpen #elSearch {
|
|
display: block;
|
|
opacity: 1;
|
|
width: 94%;
|
|
margin: 12px 3%;
|
|
{prefix="transition" value="opacity 0.2s ease-out"}
|
|
}
|
|
|
|
body.cSearchOpen #elSearchFilter {
|
|
display: block;
|
|
}
|
|
|
|
body.cSearchOpen #elSearchField {
|
|
width: auto;
|
|
}
|
|
html[dir="ltr"] body.cSearchOpen #elSearchField {
|
|
left: 120px;
|
|
}
|
|
html[dir="rtl"] body.cSearchOpen #elSearchField {
|
|
right: 120px;
|
|
}
|
|
|
|
/* Code and pre need to wrap */
|
|
code, pre {
|
|
white-space: pre-wrap;
|
|
word-break: break-word;
|
|
}
|
|
|
|
#elQueryLog, #elCachingLog {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
body {
|
|
font-size: 13px;
|
|
}
|
|
|
|
#elFlashMessage {
|
|
width: 100%;
|
|
}
|
|
html[dir="ltr"] #elFlashMessage {
|
|
left: auto;
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] #elFlashMessage {
|
|
right: auto;
|
|
margin-right: 0;
|
|
}
|
|
}
|
|
|
|
/* GOOGLE AD CODE FOR RESPONSIVE ADS */
|
|
#ipsLayout_mainArea .adsbygoogle { width: 320px; height: 100px; }
|
|
@media (min-width:500px) { #ipsLayout_mainArea .adsbygoogle { width: 468px; height: 60px; } }
|
|
@media (min-width:800px) { #ipsLayout_mainArea .adsbygoogle { width: 728px; height: 90px; } }]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="layout.css"><![CDATA[/* TABLETS */
|
|
@media screen and (min-width: 768px) and (max-width: 979px) {
|
|
|
|
/* Fixed column sizing */
|
|
.ipsColumns.ipsColumns_collapseTablet {
|
|
width: 100%;
|
|
display: block;
|
|
}
|
|
html[dir="ltr"] .ipsColumns.ipsColumns_collapseTablet {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsColumns.ipsColumns_collapseTablet {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_collapseTablet > .ipsColumn:not( .ipsHide ) {
|
|
display: block;
|
|
position: relative;
|
|
margin: 15px 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.ipsLayout_contentSection {
|
|
padding: 15px;
|
|
}
|
|
|
|
.ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"] {
|
|
width: 100%;
|
|
}
|
|
html[dir="ltr"] .ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"] {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"] {
|
|
margin-right: 0;
|
|
}
|
|
}
|
|
|
|
/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
.ipsPageHeader {
|
|
margin: 15px 0;
|
|
}
|
|
|
|
#ipsLayout_mainArea > .ipsPageHeader:first-child {
|
|
padding: 7px 0;
|
|
margin-top: -5px;
|
|
}
|
|
|
|
#elHeaderSubLinks {
|
|
display: none;
|
|
}
|
|
|
|
.ipsLayout_container {
|
|
padding: 0 15px;
|
|
}
|
|
|
|
{{if !theme.sidebar_responsive}}
|
|
#ipsLayout_sidebar {
|
|
display: none;
|
|
}
|
|
{{else}}
|
|
#ipsLayout_mainArea {
|
|
margin-bottom: 0 !important;
|
|
}
|
|
|
|
#ipsLayout_sidebar {
|
|
background: #fff;
|
|
padding: 25px 10px 10px 10px;
|
|
margin-left: 5px;
|
|
max-width: 100% !important;
|
|
min-width: 0 !important;
|
|
display: block;
|
|
overflow: visible;
|
|
}
|
|
{{endif}}
|
|
|
|
#ipsLayout_body {
|
|
padding: 0;
|
|
max-width: 100%;
|
|
margin: 0;
|
|
}
|
|
|
|
#ipsLayout_header > header {
|
|
margin-bottom: 0 !important;
|
|
}
|
|
|
|
#ipsLayout_mainArea {
|
|
border-radius: 0 !important;
|
|
margin-bottom: 10px;
|
|
padding: 15px;
|
|
}
|
|
|
|
/* Nav hidden */
|
|
#ipsLayout_mainNav {
|
|
display: none;
|
|
float: none !important;
|
|
clear: both;
|
|
}
|
|
|
|
#ipsLayout_mainNav li {
|
|
display: block;
|
|
line-height: 40px;
|
|
}
|
|
|
|
#ipsLayout_mainNav li a {
|
|
font-size: 13px;
|
|
}
|
|
|
|
html[dir="ltr"] #ipsLayout_mainNav li a.active {
|
|
margin-right: -20px;
|
|
}
|
|
html[dir="rtl"] #ipsLayout_mainNav li a.active {
|
|
margin-left: -20px;
|
|
}
|
|
|
|
#ipsLayout_contentArea,
|
|
#ipsLayout_mainArea {
|
|
display: block;
|
|
border: 0;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
#ipsLayout_mainArea {
|
|
padding: 10px;
|
|
}
|
|
|
|
/* Fixed column sizing */
|
|
.ipsColumns.ipsColumns_collapseTablet:not( .ipsHide ),
|
|
.ipsColumns.ipsColumns_collapsePhone:not( .ipsHide ) {
|
|
width: 100%;
|
|
display: block;
|
|
padding-right: 0;
|
|
}
|
|
|
|
.ipsColumns.ipsColumns_collapseTablet > .ipsColumn:not( .ipsHide ),
|
|
.ipsColumns.ipsColumns_collapsePhone > .ipsColumn:not( .ipsHide ) {
|
|
display: block;
|
|
position: relative;
|
|
width: 100%;
|
|
margin: 0 0 15px 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsLayout_contentSection {
|
|
padding: 5px;
|
|
}
|
|
|
|
.ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"],
|
|
.ipsGrid.ipsGrid_collapsePhone > [class*="ipsGrid_span"] {
|
|
width: 100%;
|
|
}
|
|
html[dir="ltr"] .ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"],
|
|
html[dir="ltr"] .ipsGrid.ipsGrid_collapsePhone > [class*="ipsGrid_span"] {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsGrid.ipsGrid_collapseTablet > [class*="ipsGrid_span"],
|
|
html[dir="rtl"] .ipsGrid.ipsGrid_collapsePhone > [class*="ipsGrid_span"] {
|
|
margin-right: 0;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="lightbox.css">/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsLightbox_next, .ipsLightbox_prev {
|
|
opacity: 0.4;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="login.css">/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsApp .cAcpLoginBox .ipsType_pageTitle .fa {
|
|
font-size: 20px;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.ipsApp#elLogin {
|
|
padding-top: 10px;
|
|
}
|
|
|
|
.ipsApp #elLogin_box {
|
|
width: auto;
|
|
margin: 7px;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="menus.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsSideMenu {
|
|
border: 1px solid rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.ipsSideMenu .ipsSideMenu_mainTitle a {
|
|
color: #8c8c8c;
|
|
font-weight: normal;
|
|
}
|
|
|
|
/* Non-JS fallback */
|
|
.ipsSideMenu .ipsSideMenu_title,
|
|
.ipsSideMenu .ipsSideMenu_subTitle,
|
|
.ipsSideMenu .ipsSideMenu_list {
|
|
display: none;
|
|
}
|
|
|
|
.ipsSideMenu .ipsSideMenu_mainTitle,
|
|
.ipsSideMenu .ipsSideMenu_mainTitle a,
|
|
.ipsSideMenu:target .ipsSideMenu_title,
|
|
.ipsSideMenu:target .ipsSideMenu_list,
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_title,
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_list,
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_subTitle {
|
|
display: block;
|
|
}
|
|
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_mainTitle a,
|
|
.ipsSideMenu:target .ipsSideMenu_mainTitle a {
|
|
background: #151515;
|
|
color: #fff;
|
|
display: block;
|
|
}
|
|
|
|
.ipsSideMenu.ipsSideMenu_open,
|
|
.ipsSideMenu:target {
|
|
width: 100%;
|
|
background: #fff;
|
|
z-index: 4000;
|
|
}
|
|
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_title,
|
|
.ipsSideMenu:target .ipsSideMenu_title {
|
|
padding: 10px;
|
|
background: #f9f9f9;
|
|
}
|
|
|
|
.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_list,
|
|
.ipsSideMenu:target .ipsSideMenu_list {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsSideMenu.ipsSideMenu_open .ipsSideMenu_list li a,
|
|
html[dir="ltr"] .ipsSideMenu:target .ipsSideMenu_list li a {
|
|
padding-left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsSideMenu.ipsSideMenu_open .ipsSideMenu_list li a,
|
|
html[dir="rtl"] .ipsSideMenu:target .ipsSideMenu_list li a {
|
|
padding-right: 20px;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="misc.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
/* PHOTO PANELS */
|
|
.ipsPhotoPanel.ipsPhotoPanel_notTablet > .ipsUserPhoto {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_notTablet > div {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_notTablet > div {
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* TOOL LISTS */
|
|
.ipsToolList.ipsToolList_horizontal {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
/* ACTIVE USERS */
|
|
.ipsActiveUsers_title {
|
|
display: block;
|
|
margin: 0;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
/* PHOTO PANELS */
|
|
.ipsPhotoPanel.ipsPhotoPanel_notPhone > .ipsUserPhoto,
|
|
.ipsPhotoPanel.ipsPhotoPanel_notTablet > .ipsUserPhoto {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_notPhone > div,
|
|
html[dir="ltr"] .ipsPhotoPanel.ipsPhotoPanel_notTablet > div {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_notPhone > div,
|
|
html[dir="rtl"] .ipsPhotoPanel.ipsPhotoPanel_notTablet > div {
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* TOOL LISTS */
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal,
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal {
|
|
display: block;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsToolList.ipsToolList_horizontal > li,
|
|
html[dir="rtl"] .ipsToolList.ipsToolList_horizontal > li {
|
|
margin: 0 0 5px 0 !important;
|
|
float: none !important;
|
|
}
|
|
|
|
.ipsPad { padding: 7px; }
|
|
.ipsPad_double { padding: 14px; }
|
|
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="navigation.css">/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
.ipsBreadcrumb {
|
|
display: none;
|
|
}
|
|
|
|
/* Only apply to front because we don't want this in the menu manager acp preview */
|
|
.ipsApp_front .ipsNavBar_primary {
|
|
padding: 0;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="pagination.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsPagination.ipsPagination_mini a {
|
|
padding: 0 15px;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
/* Responsive pagination... */
|
|
/* Step 1: Hide all the page numbers */
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_page:not( .ipsPagination_active ) {
|
|
display: none;
|
|
}
|
|
|
|
/* Step 2: Make the pagination a table and the buttons cells */
|
|
.ipsPagination {
|
|
display: table;
|
|
width: 100%;
|
|
padding: 0;
|
|
font-weight: bold;
|
|
margin-bottom: 15px;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_prev,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_next,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_active {
|
|
display: table-cell;
|
|
text-align: center;
|
|
width: 1%;
|
|
z-index: 2000;
|
|
position: relative;
|
|
}
|
|
|
|
/* Step 3: make the first/last buttons small, the next/prev a bit wider */
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first,
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last {
|
|
max-width: 24px;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_next,
|
|
.ipsPagination .ipsPagination_prev {
|
|
min-width: 60px;
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_active {
|
|
width: 100%;
|
|
}
|
|
|
|
/* Step 4: Style the actual buttons */
|
|
.ipsPagination .ipsPagination_first a,
|
|
.ipsPagination .ipsPagination_last a,
|
|
.ipsPagination .ipsPagination_prev a,
|
|
.ipsPagination .ipsPagination_page a,
|
|
.ipsPagination .ipsPagination_next a {
|
|
margin: 0 3px 0 0;
|
|
display: block;
|
|
padding: 2px 10px;
|
|
}
|
|
.ipsPagination_mini .ipsPagination_first a,
|
|
.ipsPagination_mini .ipsPagination_last a,
|
|
.ipsPagination_mini .ipsPagination_prev a,
|
|
.ipsPagination_mini .ipsPagination_page a,
|
|
.ipsPagination_mini .ipsPagination_next a {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last a {
|
|
margin-right: 0;
|
|
padding-left: 8px;
|
|
padding-right: 8px;
|
|
}
|
|
|
|
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first a {
|
|
padding-left: 6px;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_prev a .fa,
|
|
.ipsPagination .ipsPagination_next a .fa {
|
|
opacity: 1;
|
|
}
|
|
|
|
/* Step 5: Do some trickery with the page jump so it serves as our counter */
|
|
/* We also hide the active page button - we only need it present for the space it provides but we don't want to see it */
|
|
.ipsPagination .ipsPagination_active {
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_pageJump {
|
|
display: block;
|
|
margin: 0 !important;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
width: 100%;
|
|
line-height: 30px;
|
|
text-align: center;
|
|
z-index: 1000;
|
|
}
|
|
|
|
.ipsPagination .ipsPagination_pageJump .fa {
|
|
display: none;
|
|
}
|
|
|
|
/* Step 6: Style the 'inactive' buttons that we don't show on desktop */
|
|
.ipsPagination > li.ipsPagination_inactive {
|
|
display: table-cell;
|
|
opacity: 0.35;
|
|
pointer-events: none;
|
|
}
|
|
/* End */
|
|
|
|
.ipsPagination_mini .ipsPagination_page {
|
|
display: inline-block;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager_next a {
|
|
padding-right: 35px;
|
|
}
|
|
html[dir="rtl"] .ipsPager_next a {
|
|
padding-left: 35px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsPager_prev a {
|
|
padding-left: 35px;
|
|
}
|
|
html[dir="rtl"] .ipsPager_prev a {
|
|
padding-right: 35px;
|
|
}
|
|
|
|
.ipsPager a:after {
|
|
font-size: 32px;
|
|
}
|
|
|
|
/* Mini pagination */
|
|
.ipsPagination.ipsPagination_mini {
|
|
display: block !important;
|
|
margin: 5px 0 !important;
|
|
opacity: 1 !important;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="popup.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsDialog > div {
|
|
width: 100%;
|
|
margin: 0;
|
|
}
|
|
|
|
.ipsDialog.ipsDialog_fixed > div {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
margin-top: 0;
|
|
width: auto;
|
|
height: auto;
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
}
|
|
|
|
.ipsAlert {
|
|
width: 96%;
|
|
top: 20px;
|
|
text-align: center;
|
|
}
|
|
html[dir="ltr"] .ipsAlert {
|
|
margin-left: -48%;
|
|
}
|
|
html[dir="rtl"] .ipsAlert {
|
|
margin-right: -48%;
|
|
}
|
|
|
|
.ipsAlert_icon {
|
|
float: none;
|
|
}
|
|
|
|
.ipsAlert_icon + .ipsAlert_msg {
|
|
margin: 10px 0 20px !important;
|
|
}
|
|
|
|
.ipsAlert .ipsToolList li {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.ipsAlert .ipsToolList li:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsHovercard.ipsHovercard_stemLeft { margin-left: 0; }
|
|
.ipsHovercard.ipsHovercard_stemRight { margin-left: 0; }
|
|
|
|
/* Moderation menu */
|
|
.ipsPageAction {
|
|
margin-left: 0px !important;
|
|
left: 10px;
|
|
right: 10px;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li {
|
|
min-width: 50px;
|
|
padding: 5px 7px;
|
|
float: none;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li:not( .ipsHide ) {
|
|
display: inline-block;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li:first-child {
|
|
display: block;
|
|
width: 100%;
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
padding: 5px 10px;
|
|
}
|
|
|
|
.ipsPageAction > ul[data-role='actionItems'] > li:last-child {
|
|
border-right: 0;
|
|
}
|
|
|
|
.ipsPageAction .ipsPageAction_icon {
|
|
font-size: 20px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="post-content.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
iframe[data-embedContent] {
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* There's no point making images open a lightbox on a phone since the image is already fullsize */
|
|
a.ipsAttachLink_image[data-ipsLightbox] {
|
|
pointer-events: none;
|
|
cursor: default;
|
|
}
|
|
}
|
|
|
|
|
|
/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
.cke_wysiwyg_div {
|
|
font-size: 16px;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="posts.css"><![CDATA[/* TABLETS */
|
|
@media screen and (max-width: 979px) {
|
|
|
|
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.ipsPost {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsAuthorPane {
|
|
text-align: left;
|
|
border-bottom: 1px solid #efefef;
|
|
margin: 0 0 15px 0;
|
|
padding: 0 0 10px 0;
|
|
}
|
|
html[dir="rtl"] .ipsAuthorPane {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsAuthorPane h3,
|
|
.ipsAuthorPane_info {
|
|
margin: 0 0 3px 65px;
|
|
}
|
|
html[dir="rtl"] .ipsAuthorPane h3,
|
|
html[dir="rtl"] .ipsAuthorPane_info {
|
|
margin: 0 65px 3px 0;
|
|
}
|
|
|
|
.ipsAuthorPane > .ipsUserPhoto {
|
|
position: absolute;
|
|
top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsAuthorPane > .ipsUserPhoto {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsAuthorPane > .ipsUserPhoto {
|
|
right: 0;
|
|
}
|
|
|
|
.ipsAuthorPane > .ipsUserPhoto img {
|
|
width: 50px;
|
|
height: 50px;
|
|
}
|
|
|
|
.ipsPost_ignored > .ipsPost {
|
|
margin: 0 30px;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsPost_ignored > .ipsPost > a {
|
|
display: block;
|
|
}
|
|
|
|
/* BEST ANSWER */
|
|
.ipsPost_bestAnswer {
|
|
padding-right: 10px !important;
|
|
}
|
|
html[dir="ltr"] .ipsPost_bestAnswer {
|
|
padding-right: 10px !important;
|
|
}
|
|
html[dir="rtl"] .ipsPost_bestAnswer {
|
|
padding-left: 10px !important;
|
|
}
|
|
|
|
.ipsPost_bestAnswer > .ipsColumn > .ipsUserPhoto img {
|
|
max-width: 50px;
|
|
max-height: 50px;
|
|
}
|
|
|
|
.ipsPost_bestAnswer_check {
|
|
position: absolute;
|
|
top: 0px;
|
|
}
|
|
html[dir="ltr"] .ipsPost_bestAnswer_check {
|
|
right: 0px;
|
|
}
|
|
html[dir="rtl"] .ipsPost_bestAnswer_check {
|
|
left: 0px;
|
|
}
|
|
|
|
.ipsPost_bestAnswer .ipsPost {
|
|
margin-top: 15px;
|
|
}
|
|
html[dir="ltr"] .ipsPost_bestAnswer .ipsPost {
|
|
margin-right: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsPost_bestAnswer .ipsPost {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.ipsPost_bestAnswer .ipsPost:before {
|
|
border-width: 10px 15px;
|
|
top: -20px;
|
|
border-color: transparent transparent #fcfffa transparent;
|
|
}
|
|
html[dir="ltr"] .ipsPost_bestAnswer .ipsPost:before {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .ipsPost_bestAnswer .ipsPost:before {
|
|
right: 10px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="responsive.css"><![CDATA[/* Default responsive css is in framework css so that hidden items are hidden even when
|
|
responsiveness is disabled */
|
|
|
|
/* DESKTOPS */
|
|
@media screen and (min-width: 980px) {
|
|
.ipsResponsive_hideDesktop {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
/* TABLETS */
|
|
@media screen and (min-width: 768px) and (max-width: 979px) {
|
|
/*.ipsResponsive_showTablet, .ipsResponsive_hideDesktop, .ipsResponsive_hidePhone,*/
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inline,
|
|
.ipsResponsive_showTablet.ipsResponsive_inline {
|
|
display: inline !important;
|
|
}
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showTablet.ipsResponsive_inlineBlock {
|
|
display: inline-block !important;
|
|
}
|
|
.ipsResponsive_hideDesktop.ipsResponsive_block,
|
|
.ipsResponsive_showTablet.ipsResponsive_block {
|
|
display: block !important;
|
|
}
|
|
|
|
.ipsResponsive_hideTablet, .ipsResponsive_showDesktop, .ipsResponsive_showPhone,
|
|
.ipsResponsive_hideTablet.ipsResponsive_inline,
|
|
.ipsResponsive_hideTablet.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_hideTablet.ipsResponsive_block,
|
|
.ipsResponsive_showDesktop.ipsResponsive_inline,
|
|
.ipsResponsive_showDesktop.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showDesktop.ipsResponsive_block {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.ipsResponsive_showPhone, .ipsResponsive_hideDesktop, .ipsResponsive_hideTablet,
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inline,
|
|
.ipsResponsive_showPhone.ipsResponsive_inline {
|
|
display: inline !important;
|
|
}
|
|
.ipsResponsive_hideDesktop.ipsResponsive_block,
|
|
.ipsResponsive_showPhone.ipsResponsive_block {
|
|
display: block !important;
|
|
}
|
|
.ipsResponsive_hideDesktop.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showPhone.ipsResponsive_inlineBlock {
|
|
display: inline-block !important;
|
|
}
|
|
.ipsResponsive_hidePhone, .ipsResponsive_showDesktop, .ipsResponsive_showTablet,
|
|
.ipsResponsive_showDesktop.ipsResponsive_inline,
|
|
.ipsResponsive_showDesktop.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_showDesktop.ipsResponsive_block,
|
|
.ipsResponsive_hidePhone.ipsResponsive_inline,
|
|
.ipsResponsive_hidePhone.ipsResponsive_inlineBlock,
|
|
.ipsResponsive_hidePhone.ipsResponsive_block {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
@media screen and (max-width: 979px) {
|
|
/* Prevent a floating element from floating on mobile devices */
|
|
.ipsResponsive_noFloat {
|
|
float: none !important;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
#ipsLayout_header > header {
|
|
padding-top: 0;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
#elSiteTitle {
|
|
font-size: 24px;
|
|
}
|
|
|
|
#ipsLayout_footer ul {
|
|
text-align: center;
|
|
width: 100%;
|
|
}
|
|
|
|
#elCopyright {
|
|
clear: both;
|
|
float: none;
|
|
text-align: center;
|
|
}
|
|
|
|
.ipsHeader_tabs {
|
|
display: none;
|
|
}
|
|
|
|
/* Turns the last-but-one breadcrumb item in a 'Back' button, like <[ Home ] */
|
|
.ipsApp .ipsSubNavigation .ipsBreadcrumb li, .ipsBreadcrumb li i {
|
|
display: none;
|
|
}
|
|
|
|
.ipsBreadcrumb li {
|
|
overflow: visible;
|
|
}
|
|
|
|
#elMobileBreadcrumb {
|
|
top: 10px;
|
|
position: absolute;
|
|
background-color: #222;
|
|
height: 30px;
|
|
padding: 0 10px 0 8px;
|
|
font-size: 11px;
|
|
display: block;
|
|
text-align: center;
|
|
text-shadow: none;
|
|
line-height: 30px;
|
|
font-weight: 700;
|
|
min-width: 40px;
|
|
}
|
|
html[dir="ltr"] #elMobileBreadcrumb {
|
|
left: 15px;
|
|
border-radius: 3px 6px 6px 3px;
|
|
}
|
|
html[dir="rtl"] #elMobileBreadcrumb {
|
|
right: 15px;
|
|
border-radius: 6px 3px 3px 6px;
|
|
}
|
|
|
|
#elMobileBreadcrumb a {
|
|
font-size: 11px !important;
|
|
line-height: 30px !important;
|
|
display: inline-block;
|
|
white-space: nowrap;
|
|
max-width: 70px;
|
|
height: 30px;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
word-break: normal;
|
|
color: #fff !important;
|
|
}
|
|
|
|
#elMobileBreadcrumb:before {
|
|
font-family: 'FontAwesome';
|
|
color: #222;
|
|
display: block;
|
|
position: absolute;
|
|
top: 50%;
|
|
font-size: 28px;
|
|
line-height: 30px;
|
|
width: 13px;
|
|
overflow: hidden;
|
|
text-shadow: none;
|
|
{prefix="transform" value="scaleX(0.7) translateY(-53%)"}
|
|
}
|
|
html[dir="ltr"] #elMobileBreadcrumb:before {
|
|
content: '\f060';
|
|
left: -11px;
|
|
}
|
|
html[dir="rtl"] #elMobileBreadcrumb:before {
|
|
content: '\f061';
|
|
right: -11px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="streams.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsStream {
|
|
clear: both;
|
|
margin-top: 35px;
|
|
}
|
|
|
|
.ipsStream .ipsStreamItem_time:first-child {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem_bar hr.ipsHr {
|
|
margin-left: 0;
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem_loadMore {
|
|
margin-left: 0;
|
|
margin-right: 0;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream.ipsStream_withTimeline {
|
|
margin-left: 0;
|
|
border: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStream.ipsStream_withTimeline {
|
|
margin-right: 0;
|
|
border: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream.ipsStream_withTimeline .ipsStreamItem_contentType {
|
|
top: 10px;
|
|
left: 45px;
|
|
}
|
|
|
|
html[dir="rtl"] .ipsStream.ipsStream_withTimeline .ipsStreamItem_contentType {
|
|
top: 10px;
|
|
right: 45px;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_contentBlock {
|
|
margin-top: 20px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.ipsApp .ipsStreamItem.ipsStreamItem_actionBlock {
|
|
margin-top: 0;
|
|
margin-bottom: 0;
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem:before,
|
|
.ipsStream_withTimeline .ipsStreamItem:after {
|
|
display: none;
|
|
}
|
|
|
|
.ipsStream_withTimeline .ipsStreamItem_time {
|
|
display: block;
|
|
text-align: center;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem_time {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem_time {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem .ipsPhotoPanel > .ipsUserPhoto {
|
|
float: none;
|
|
margin: -15px auto 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStreamItem .ipsPhotoPanel.ipsPhotoPanel_mini > div,
|
|
html[dir="ltr"] .ipsStreamItem_snippet,
|
|
html[dir="ltr"] .ipsStreamItem_meta {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStreamItem.ipsStreamItem_expanded .ipsPhotoPanel.ipsPhotoPanel_mini > div,
|
|
html[dir="rtl"] .ipsStreamItem_snippet,
|
|
html[dir="rtl"] .ipsStreamItem_meta {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir] .ipsStream_snippetInfo {
|
|
border-width: 1px 0 0 0;
|
|
padding-top: 7px !important;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream_comment {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .ipsStream_comment {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsStream_comment:before {
|
|
display: none;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_actionBlock time {
|
|
display: block;
|
|
}
|
|
|
|
.ipsStreamItem .ipsLikeRep {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_expanded .ipsStreamItem_status {
|
|
margin: 3px 0;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_expanded {
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
/* Condensed-specific */
|
|
.ipsStreamItem.ipsStreamItem_condensed {
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed ~ .ipsStreamItem_time {
|
|
margin-top: 15px;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem.ipsStreamItem_actionBlock.ipsStreamItem_condensed {
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
html[dir] .ipsStreamItem_condensed .ipsPhotoPanel_mini > div {
|
|
margin-left: 0;
|
|
margin-right: 0;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsUserPhoto,
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_contentType {
|
|
display: none;
|
|
}
|
|
|
|
.ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_status > li:first-child {
|
|
margin: 7px 0;
|
|
color: {theme="text_color"};
|
|
}
|
|
|
|
html[dir] .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats {
|
|
width: auto;
|
|
float: none;
|
|
position: static;
|
|
border: 0;
|
|
padding: 0;
|
|
line-height: 1.2;
|
|
margin: 5px 0;
|
|
}
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="tables.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.acpTable_search {
|
|
float: none;
|
|
width: 100% !important;
|
|
max-width: 100% !important;
|
|
}
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="tables.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsTable.ipsTable_responsive,
|
|
.ipsTable.ipsTable_responsive tbody,
|
|
.ipsTable.ipsTable_responsive tr,
|
|
.ipsTable.ipsTable_responsive td {
|
|
display: block;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive thead {
|
|
display: none;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive tr {
|
|
padding: 10px;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive tbody tr td {
|
|
padding: 0;
|
|
border: 0;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive td.ipsTable_icon {
|
|
float: left;
|
|
padding: 0;
|
|
width: 45px;
|
|
}
|
|
html[dir="rtl"] .ipsTable.ipsTable_responsive td.ipsTable_icon {
|
|
float: right;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTable.ipsTable_responsive td.ipsTable_icon ~ td {
|
|
margin-left: 55px;
|
|
}
|
|
html[dir="rtl"] .ipsTable.ipsTable_responsive td.ipsTable_icon ~ td {
|
|
margin-right: 55px;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive td.ipsTable_primary {
|
|
font-size: 16px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive td.ipsTable_controls {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive td[data-title]:before {
|
|
content: attr(data-title) ':\00A0';
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Matrices */
|
|
html[dir="ltr"] .ipsTable.ipsTable_responsive.ipsMatrix td {
|
|
text-align: left;
|
|
}
|
|
html[dir="rtl"] .ipsTable.ipsTable_responsive.ipsMatrix td {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive.ipsMatrix .ipsMatrix_rowTitle {
|
|
background: #f5f5f5 !important;
|
|
padding: 10px;
|
|
text-align: left;
|
|
margin: -10px -10px 10px -10px;
|
|
}
|
|
html[dir="rtl"] .ipsTable.ipsTable_responsive.ipsMatrix .ipsMatrix_rowTitle {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive.ipsMatrix td input:not( [type="checkbox"] ):not( [type="radio"] ),
|
|
.ipsTable.ipsTable_responsive.ipsMatrix td select,
|
|
.ipsTable.ipsTable_responsive.ipsMatrix td textarea {
|
|
width: 100%;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive.ipsMatrix td .ipsToggle {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive.ipsMatrix .ipsMatrix_subHeader {
|
|
background: #262e33;
|
|
color: #fff;
|
|
font-weight: normal;
|
|
padding: 10px;
|
|
margin-top: 5px;
|
|
font-size: 16px;
|
|
display: block;
|
|
margin: -10px -10px -10px -10px;
|
|
}
|
|
|
|
.ipsTable.ipsTable_responsive.ipsMatrix td[data-title]:before {
|
|
text-align: left;
|
|
display: block;
|
|
}
|
|
html[dir="rtl"] .ipsTable.ipsTable_responsive.ipsMatrix td[data-title]:before {
|
|
text-align: right;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="tabs.css">@media screen and (max-width: 767px) {
|
|
|
|
.ipsApp_admin .ipsTabs {
|
|
border-top: 0px;
|
|
margin: 0 0 0;
|
|
background: #e0e0e0;
|
|
padding: 4px 4px 0 4px;
|
|
}
|
|
|
|
.ipsApp_admin .ipsTabs .ipsTabs_activeItem {
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsApp_admin .ipsTabs_item {
|
|
border-top: 0;
|
|
}
|
|
html[dir="ltr"] .ipsApp_admin .ipsTabs_item {
|
|
border-right: 0;
|
|
}
|
|
html[dir="rtl"] .ipsApp_admin .ipsTabs_item {
|
|
border-left: 0;
|
|
}
|
|
|
|
.ipsApp_admin .acpFormTabContent {
|
|
border: 4px solid #e0e0e0;
|
|
border-top: 0;
|
|
background: #fff;
|
|
padding: 10px;
|
|
}
|
|
|
|
.acpFormTabBar .ipsTabs_item:not( .ipsTabs_activeItem ) {
|
|
color: #333;
|
|
}
|
|
|
|
}</css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="tabs.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsTabs {
|
|
border-top: 2px solid #e0e0e0;
|
|
position: relative;
|
|
}
|
|
|
|
.ipsTabs_panels.ipsTabs_contained .ipsTabs_panel {
|
|
padding: 7px;
|
|
}
|
|
|
|
.ipsTabs_panel .ipsComment {
|
|
padding: 0;
|
|
}
|
|
|
|
.ipsTabs_item:not( .ipsTabs_activeItem ) {
|
|
display: none !important;
|
|
color: #333 !important;
|
|
}
|
|
|
|
.ipsTabs_activeItem a, a.ipsTabs_activeItem {
|
|
width: 100% !important;
|
|
position: relative;
|
|
font-size: 16px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_withIcons .ipsTabs_item {
|
|
text-align: left;
|
|
}
|
|
html[dir="rtl"] .ipsTabs.ipsTabs_withIcons .ipsTabs_item {
|
|
text-align: right;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_withIcons .ipsTabs_item i {
|
|
display: inline-block;
|
|
font-size: 16px;
|
|
width: 22px;
|
|
}
|
|
|
|
/* No stretch option on phones */
|
|
.ipsTabs.ipsTabs_stretch [role="tablist"] > li {
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
/* TAB MENU */
|
|
/* We set the dropdown link so that it covers the whole tab bar, which means we can intercept
|
|
a click on it in order to show the menu without JS necessary */
|
|
.ipsTabs [data-action='expandTabs'] {
|
|
display: inline-block !important;
|
|
color: #000;
|
|
position: absolute;
|
|
left: 10px;
|
|
right: 10px;
|
|
top: 8px;
|
|
bottom: 0;
|
|
font-size: 18px;
|
|
z-index: 10000;
|
|
padding-right: 15px;
|
|
text-align: right;
|
|
line-height: 40px;
|
|
margin-top: -5px;
|
|
}
|
|
html[dir="rtl"] .ipsTabs [data-action='expandTabs'] {
|
|
text-align: left;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_small [data-action='expandTabs'] {
|
|
top: 3px;
|
|
line-height: 30px;
|
|
}
|
|
|
|
.ipsTabs:target, .ipsTabs.ipsTabs_showMenu {
|
|
height: 52px;
|
|
z-index: 1000;
|
|
}
|
|
|
|
.ipsTabs:target [data-action='expandTabs'], .ipsTabs.ipsTabs_showMenu [data-action='expandTabs'] {
|
|
width: 40px;
|
|
}
|
|
html[dir="ltr"] .ipsTabs:target [data-action='expandTabs'],
|
|
html[dir="ltr"] .ipsTabs.ipsTabs_showMenu [data-action='expandTabs'] {
|
|
left: auto;
|
|
}
|
|
html[dir="rtl"] .ipsTabs:target [data-action='expandTabs'],
|
|
html[dir="rtl"] .ipsTabs.ipsTabs_showMenu [data-action='expandTabs'] {
|
|
right: auto;
|
|
}
|
|
|
|
.ipsTabs:target [role="tablist"], .ipsTabs.ipsTabs_showMenu [role="tablist"] {
|
|
position: absolute;
|
|
left: 10px;
|
|
right: 10px;
|
|
top: 10px;
|
|
background: #fff;
|
|
box-shadow: 0px 5px 40px rgba(0,0,0,0.4);
|
|
border-radius: 3px;
|
|
}
|
|
|
|
.ipsTabs.ipsTabs_contained:target [role="tablist"] {
|
|
left: 2px;
|
|
right: 2px;
|
|
top: 2px;
|
|
}
|
|
|
|
.ipsTabs:target .ipsTabs_item, .ipsTabs.ipsTabs_showMenu .ipsTabs_item {
|
|
display: block !important;
|
|
width: 100% !important;
|
|
}
|
|
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="responsive" css_name="trees.css"><![CDATA[@media screen and (max-width: 767px) {
|
|
|
|
html[dir="ltr"] .ipsTree .ipsTree {
|
|
margin-left: 3px;
|
|
}
|
|
html[dir="rtl"] .ipsTree .ipsTree {
|
|
margin-right: 3px;
|
|
}
|
|
|
|
.ipsTree .ipsTree_drag {
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData:before {
|
|
left: 8px;
|
|
}
|
|
html[dir="rtl"] .ipsTree_parent.ipsTree_row > .ipsTree_rowData:before {
|
|
right: 8px;
|
|
}
|
|
|
|
}]]></css>
|
|
<css css_location="global" css_app="core" css_attributes="" css_path="responsive" css_name="typography.css">/* TABLETS */
|
|
@media screen and (max-width: 979px) {
|
|
.ipsType_sectionTitle {
|
|
display: block;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
.ipsType_pageTitle {
|
|
font-size: 20px;
|
|
}
|
|
|
|
.ipsType_normal {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.ipsType_pageTitle.ipsType_largeTitle {
|
|
font-size: 28px;
|
|
letter-spacing: 0;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="staffdirectory" css_name="staffdirectory.css">.cStaffDirPreview {
|
|
width: 300px;
|
|
margin-bottom: 30px;
|
|
}
|
|
|
|
.cStaffDirPreview_blocks .cStaffDirPreview_block {
|
|
height: 80px;
|
|
}
|
|
|
|
.cStaffDirPreview_full .cStaffDirPreview_block {
|
|
height: 60px;
|
|
}
|
|
|
|
.cStaffDirPreview_full .cStaffDirPreview_title {
|
|
position: absolute;
|
|
top: 10px;
|
|
}
|
|
html[dir="ltr"] .cStaffDirPreview_full .cStaffDirPreview_title {
|
|
left: 50px;
|
|
}
|
|
html[dir="rtl"] .cStaffDirPreview_full .cStaffDirPreview_title {
|
|
right: 50px;
|
|
}
|
|
|
|
.cStaffDirPreview_full .cStaffDirPreview_text {
|
|
position: absolute;
|
|
top: 30px;
|
|
}
|
|
html[dir="ltr"] .cStaffDirPreview_full .cStaffDirPreview_text {
|
|
left: 50px;
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] .cStaffDirPreview_full .cStaffDirPreview_text {
|
|
right: 50px;
|
|
left: 10px;
|
|
}
|
|
|
|
.cStaffDirPreview_block {
|
|
background: #e5e5e5;
|
|
padding: 10px;
|
|
position: relative;
|
|
}
|
|
|
|
.cStaffDirPreview_photo {
|
|
background: rgba(0,0,0,0.2);
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 30px;
|
|
display: inline-block;
|
|
}
|
|
|
|
.cStaffDirPreview_text, .cStaffDirPreview_text:after {
|
|
display: block;
|
|
border-top: 3px dashed rgba(0,0,0,0.2);
|
|
border-bottom: 3px dashed rgba(0,0,0,0.2);
|
|
height: 10px;
|
|
}
|
|
|
|
.cStaffDirPreview_text:after {
|
|
content: '';
|
|
position: relative;
|
|
top: 12px;
|
|
height: 4px;
|
|
border-bottom: 0;
|
|
}
|
|
|
|
.cStaffDirPreview_title {
|
|
width: 40px;
|
|
height: 10px;
|
|
background: rgba(0,0,0,0.4);
|
|
display: inline-block;
|
|
}
|
|
|
|
.cStaffDirPreview_row {
|
|
margin-bottom: 5px;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="caching_log.css">html[dir="ltr"] body {
|
|
margin-left: 300px;
|
|
}
|
|
html[dir="rtl"] body {
|
|
margin-right: 300px;
|
|
}
|
|
|
|
#elCachingLog {
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
padding-top: 20px;
|
|
padding-bottom: 70px;
|
|
width: 300px;
|
|
background: #212223;
|
|
overflow: auto;
|
|
}
|
|
html[dir="ltr"] #elCachingLog {
|
|
left: 0;
|
|
padding-left: 10px;
|
|
}
|
|
html[dir="rtl"] #elCachingLog {
|
|
right: 0;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
.cCachingLog {
|
|
font-family: monospace;
|
|
color: white;
|
|
}
|
|
.cCachingLogMethod {
|
|
text-transform: uppercase;
|
|
}
|
|
.cCachingLogMethod_get {
|
|
color: orange;
|
|
}
|
|
.cCachingLogMethod_set {
|
|
color: green;
|
|
}
|
|
.cCachingLogMethod_check {
|
|
color: yellow;
|
|
}
|
|
.cCachingLogMethod_delete {
|
|
color: red;
|
|
}
|
|
.cCachingLogKey {
|
|
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="messaging_responsive.css"><![CDATA[/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
#elMessageList {
|
|
max-height: 100%;
|
|
min-height: 0;
|
|
overflow: visible;
|
|
}
|
|
|
|
#elMessageList .cMessage.ipsDataItem {
|
|
padding: 7px !important;
|
|
}
|
|
|
|
html[dir="ltr"] #elMessageSidebar .ipsCommentCount {
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] #elMessageSidebar .ipsCommentCount {
|
|
margin-left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #elMessageViewer {
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] #elMessageViewer {
|
|
padding-right: 0;
|
|
}
|
|
|
|
#elMessageViewer .ipsType_pageTitle {
|
|
clear: both;
|
|
margin-top: 25px;
|
|
}
|
|
|
|
#elMessageViewer .ipsComment {
|
|
padding: 0;
|
|
}
|
|
|
|
.cMessage_members {
|
|
padding-top: 10px;
|
|
}
|
|
|
|
.cMessage_members > ol > li {
|
|
display: block;
|
|
border-bottom: 1px solid #f0f0f0;
|
|
margin-bottom: 10px;
|
|
padding-bottom: 10px;
|
|
}
|
|
html[dir="ltr"] .cMessage_members > ol > li {
|
|
border-right: 0;
|
|
margin-right: 0;
|
|
}
|
|
html[dir="rtl"] .cMessage_members > ol > li {
|
|
border-left: 0;
|
|
margin-left: 0;
|
|
}
|
|
|
|
.cMessage_members > ol > li:last-child {
|
|
margin-bottom: 0;
|
|
border-bottom: 0;
|
|
padding-bottom: 0;
|
|
padding-right: 0;
|
|
}
|
|
html[dir="ltr"] .cMessage_members > ol > li:last-child {
|
|
padding-right: 0;
|
|
}
|
|
html[dir="rtl"] .cMessage_members > ol > li:last-child {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.cMessage_members [data-role="addUserItem"] .ipsButton {
|
|
width: 100%;
|
|
line-height: 28px;
|
|
}
|
|
|
|
#elMessage_compose {
|
|
float: right;
|
|
}
|
|
html[dir="rtl"] #elMessage_compose {
|
|
float: left;
|
|
}
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="messaging.css"><![CDATA[#elMessageSidebar {
|
|
/*border-left: 3px solid #ebebeb;*/
|
|
position: relative;
|
|
/*overflow: hidden;*/
|
|
}
|
|
|
|
#elMessageList {
|
|
/*overflow-y: hidden;*/
|
|
overflow-y: auto;
|
|
max-height: 500px;
|
|
min-height: 500px;
|
|
}
|
|
|
|
#elMessageSidebar > .slimScrollDiv {
|
|
clear: both;
|
|
}
|
|
|
|
#elMessageSidebar .ipsDataItem_title {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
#elMessageSidebar .cMessageTitle {
|
|
display: inline-block;
|
|
font-weight: bold;
|
|
}
|
|
|
|
#elMessageSidebar [data-role="messageSearch"] {
|
|
position: relative;
|
|
}
|
|
|
|
#elMessageSidebar [data-action="messageSearchCancel"] {
|
|
position: absolute;
|
|
top: 0;
|
|
text-align: center;
|
|
line-height: 32px;
|
|
color: inherit;
|
|
height: 32px;
|
|
width: 32px;
|
|
font-size: 16px;
|
|
}
|
|
html[dir="ltr"] #elMessageSidebar [data-action="messageSearchCancel"] {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #elMessageSidebar [data-action="messageSearchCancel"] {
|
|
left: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #elMessageViewer {
|
|
padding-left: 7px;
|
|
}
|
|
html[dir="rtl"] #elMessageViewer {
|
|
padding-right: 7px;
|
|
}
|
|
|
|
.cMessage {
|
|
border-top: 2px solid #fff;
|
|
border-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cMessage {
|
|
border-right: 3px solid transparent;
|
|
}
|
|
html[dir="rtl"] .cMessage {
|
|
border-left: 3px solid transparent;
|
|
}
|
|
html[dir="ltr"] .cMessage .ipsDataItem_generic {
|
|
padding-left: 0px;
|
|
}
|
|
html[dir="rtl"] .cMessage .ipsDataItem_generic {
|
|
padding-right: 0px;
|
|
}
|
|
|
|
#elMessageList > ol > .cMessage:last-child {
|
|
border-bottom: 2px solid #fff;
|
|
}
|
|
|
|
.cMessage_active {
|
|
background: {theme="selected"} !important;
|
|
position: relative;
|
|
}
|
|
|
|
.cMessageParticipants {
|
|
font-size: 10px;
|
|
color: #acacac;
|
|
}
|
|
|
|
.cMessage_members {
|
|
margin-top: 10px;
|
|
line-height: 16px;
|
|
position: relative;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
.cMessage_members .ipsField_autocomplete {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.cMessage_members > ol > li {
|
|
border-radius: 2px;
|
|
}
|
|
html[dir="ltr"] .cMessage_members > ol > li {
|
|
border-right: 2px solid #f0f0f0;
|
|
padding-right: 15px;
|
|
margin: 7px 15px 7px 0;
|
|
}
|
|
html[dir="rtl"] .cMessage_members > ol > li {
|
|
border-left: 2px solid #f0f0f0;
|
|
padding-left: 15px;
|
|
margin: 7px 0 7px 15px;
|
|
}
|
|
|
|
.cMessage_members > ol {
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cMessage_members > ol > li:last-child {
|
|
border-right: 0;
|
|
}
|
|
html[dir="rtl"] .cMessage_members > ol > li:last-child {
|
|
border-left: 0;
|
|
}
|
|
|
|
.cMessage_leftConvo {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.cMessage_noSelect {
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
#elAddParticipants {
|
|
width: 28px;
|
|
height: 28px;
|
|
line-height: 28px;
|
|
border-radius: 15px;
|
|
text-align: center;
|
|
padding: 0;
|
|
border: 0;
|
|
}
|
|
|
|
#elAddParticipants a {
|
|
color: inherit;
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="meta_tags.css"><![CDATA[html[dir="ltr"] body {
|
|
margin-right: 300px;
|
|
}
|
|
html[dir="rtl"] body {
|
|
margin-left: 300px;
|
|
}
|
|
|
|
#elMetaTagEditor {
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
padding-bottom: 70px;
|
|
width: 300px;
|
|
overflow: auto;
|
|
}
|
|
html[dir="ltr"] #elMetaTagEditor {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #elMetaTagEditor {
|
|
left: 0;
|
|
}
|
|
|
|
#elMetaTagEditor.ipsToolbox .ipsToolbox_sectionTitle {
|
|
margin: 0 -15px 15px;
|
|
}
|
|
|
|
#elMetaTagEditor_tags > li {
|
|
padding-bottom: 20px;
|
|
margin-bottom: 20px;
|
|
border-bottom: 5px solid #000;
|
|
}
|
|
|
|
#elMetaTagEditor_tags > li:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
#elMetaTagEditor_submit {
|
|
position: fixed;
|
|
bottom: 0;
|
|
width: 300px;
|
|
background: #000;
|
|
}
|
|
html[dir="ltr"] #elMetaTagEditor_submit {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #elMetaTagEditor_submit {
|
|
left: 0;
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="modcp_responsive.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
html[dir="ltr"] #elModCPContent {
|
|
padding-left: 0;
|
|
}
|
|
html[dir="rtl"] #elModCPContent {
|
|
padding-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] #elReportSidebar {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] #elReportSidebar {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.cModCPAnnouncementRow .ipsDataItem_modCheck {
|
|
position: static;
|
|
padding-top: 10px !important;
|
|
}
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="modcp.css">html[dir="ltr"] #elModCPContent {
|
|
padding-left: 15px;
|
|
}
|
|
html[dir="rtl"] #elModCPContent {
|
|
padding-right: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] #elReportSidebar {
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] #elReportSidebar {
|
|
margin-right: 15px;
|
|
}
|
|
|
|
#elApprovalToolbar {
|
|
width: auto;
|
|
}
|
|
|
|
#elModCPSearchIcon {
|
|
position: absolute;
|
|
font-size: 20px;
|
|
top: 23px;
|
|
left: 25px;
|
|
}
|
|
html[dir="ltr"] #elModCPSearchIcon {
|
|
left: 25px;
|
|
}
|
|
html[dir="rtl"] #elModCPSearchIcon {
|
|
right: 25px;
|
|
}
|
|
|
|
#elModCPMemberSearch {
|
|
position: relative;
|
|
}
|
|
|
|
#elModCPMemberSearch #elInput_modcp_member_find_wrapper {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
|
|
#elModCPApprovalSplash {
|
|
max-width: 500px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.cReportSidebar_icon {
|
|
font-size: 30px;
|
|
}
|
|
|
|
.cIPInfo_map {
|
|
padding-top: 0;
|
|
padding-left: 0;
|
|
}
|
|
|
|
.cIPInfo_value {
|
|
font-size: 34px;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="notification_settings.css"><![CDATA[.cNotificationBox .ipsPhotoPanel {
|
|
padding: 10px 15px;
|
|
}
|
|
|
|
.cNotificationBox .ipsPhotoPanel > .fa {
|
|
font-size: 24px;
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="profiles_responsive.css"><![CDATA[/* BOTH */
|
|
@media screen and (max-width: 979px) {
|
|
#elUserReputation .ipsDataList .ipsDataItem_generic,
|
|
#elUserReputation .ipsDataList .ipsDataItem_main {
|
|
display: table-cell;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
|
|
html[dir="ltr"] .cSearchActivity .ipsDataItem_main {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .cSearchActivity .ipsDataItem_main {
|
|
margin-right: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cSearchActivity .cSearchActivity_info {
|
|
border-left: 0;
|
|
padding-left: 0;
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .cSearchActivity .cSearchActivity_info {
|
|
border-right: 0;
|
|
padding-right: 0;
|
|
margin-right: 0;
|
|
}
|
|
|
|
/* Header stuff */
|
|
#elProfileHeader, #elProfileHeader.cProfileHeaderMinimal {
|
|
padding-top: 15px !important;
|
|
height: 160px !important;
|
|
}
|
|
|
|
#elProfileHeader .ipsColumn {
|
|
padding: 0;
|
|
}
|
|
|
|
#elProfileHeader .ipsUserPhoto {
|
|
width: 60px;
|
|
height: 60px;
|
|
display: block;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
#elProfileHeader .ipsUserPhoto > img {
|
|
width: 60px;
|
|
height: 60px;
|
|
}
|
|
|
|
#elProfileHeader h1 {
|
|
font-size: 30px;
|
|
}
|
|
|
|
#elProfilePhoto [data-action="editPhoto"] {
|
|
top: 0;
|
|
bottom: auto;
|
|
}
|
|
|
|
.cProfileHeader_name {
|
|
float: none;
|
|
text-align: center;
|
|
}
|
|
|
|
#elProfileStats {
|
|
height: auto;
|
|
padding-left: 12px;
|
|
}
|
|
html[dir="ltr"] #elProfileStats {
|
|
padding-left: 12px;
|
|
}
|
|
html[dir="rtl"] #elProfileStats {
|
|
padding-right: 12px;
|
|
}
|
|
|
|
#elProfileStats.cProfileHeaderContent {
|
|
display: none;
|
|
}
|
|
|
|
#elProfileStats > ul > li {
|
|
display: block;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#elProfileStats > ul:last-child > li {
|
|
border: 0;
|
|
}
|
|
|
|
/* Streams */
|
|
html[dir] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
top: 25px;
|
|
}
|
|
html[dir="ltr"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
left: 34px;
|
|
}
|
|
html[dir="rtl"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
right: 34px;
|
|
}
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="profiles.css"><![CDATA[#elProfileHeader {
|
|
padding-bottom: 0;
|
|
padding-top: 125px;
|
|
position: relative;
|
|
height: 200px;
|
|
background-size: cover;
|
|
background-repeat: no-repeat;
|
|
background-position: 50%;
|
|
box-shadow: 0px 0px 30px rgba(0,0,0,0.4) inset;
|
|
text-shadow: 0px 0px 4px rgba(0,0,0,0.5);
|
|
font-size: 16px;
|
|
{prefix="transition" value="all 0.3s ease-in-out"}
|
|
}
|
|
|
|
#elProfileHeader h1 {
|
|
font-size: 36px;
|
|
font-weight: normal;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#elProfileHeader.cProfileHeaderMinimal {
|
|
padding-top: 25px;
|
|
height: 100px;
|
|
}
|
|
|
|
#elProfileHeader .ipsUserPhoto {
|
|
position: relative;
|
|
z-index: 3000;
|
|
}
|
|
|
|
#elProfilePhoto [data-action="editPhoto"] {
|
|
position: absolute;
|
|
bottom: 0;
|
|
z-index: 5000;
|
|
}
|
|
#elProfilePhoto [data-action="editPhoto"] {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #elProfilePhoto [data-action="editPhoto"] {
|
|
right: 0;
|
|
left: auto;
|
|
}
|
|
|
|
#elProfileStats {
|
|
background: #222;
|
|
color: #fff;
|
|
height: 65px;
|
|
padding: 12px 12px 12px 155px;
|
|
font-size: 15px;
|
|
font-weight: 500;
|
|
z-index: 2000;
|
|
position: relative;
|
|
}
|
|
html[dir="rtl"] #elProfileStats {
|
|
padding: 12px 155px 12px 12px;
|
|
}
|
|
|
|
#elProfileStats > [data-role="switchView"] .ipsList_inline,
|
|
#elProfileStats > [data-role="switchView"] .ipsButton {
|
|
position: relative;
|
|
z-index: 1000;
|
|
}
|
|
|
|
html[dir="ltr"] #elProfileStats > ul:last-child > li {
|
|
margin-right: 20px;
|
|
padding-right: 20px;
|
|
border-right: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
html[dir="rtl"] #elProfileStats > ul:last-child > li {
|
|
margin-left: 20px;
|
|
padding-left: 20px;
|
|
border-left: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
#elProfileStats li:last-child {
|
|
border: 0;
|
|
}
|
|
|
|
/* REP SCORES */
|
|
.cProfileRepScore {
|
|
text-align: center;
|
|
border-radius: 2px;
|
|
}
|
|
|
|
.cProfileRepScore_positive {
|
|
background: #598f5b;
|
|
color: #fff;
|
|
}
|
|
|
|
.cProfileRepScore_negative {
|
|
background: #c75050;
|
|
color: #fff;
|
|
}
|
|
|
|
.cProfileRepScore_neutral {
|
|
background: #e5e5e5;
|
|
color: #000;
|
|
}
|
|
|
|
.cProfileRepScore > .ipsAreaBackground_reset {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.cProfileRepScore_negative .ipsType_minorHeading, .cProfileRepScore_positive .ipsType_minorHeading {
|
|
color: rgba(255,255,255,0.5);
|
|
}
|
|
|
|
.cProfileRepScore_points, .cProfileRepScore_title {
|
|
display: block;
|
|
}
|
|
|
|
.cProfileRepScore_points {
|
|
font-size: 20px;
|
|
margin: 4px 0;
|
|
}
|
|
|
|
#elEditProfile {
|
|
position: absolute;
|
|
top: 10px;
|
|
z-index: 2000;
|
|
}
|
|
html[dir="ltr"] #elEditProfile {
|
|
right: 10px;
|
|
}
|
|
html[dir="rtl"] #elEditProfile {
|
|
left: 10px;
|
|
}
|
|
|
|
#elWarningInfo i {
|
|
font-size: 34px;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] #elWarningInfo > div {
|
|
margin-left: 45px;
|
|
}
|
|
html[dir="rtl"] #elWarningInfo > div {
|
|
margin-right: 45px;
|
|
}
|
|
|
|
#elWarningInfo .ipsButton {
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
#elUserContent [data-role="tableRows"] > li > .ipsDataList > .ipsDataItem {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
#elUserContent .ipsComment_meta {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.cProfileSidebarBlock .ipsType_sectionTitle {
|
|
margin: 0 -15px;
|
|
}
|
|
|
|
.cProfileSidebarBlock:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
#elFollowers > .ipsPad {
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
/* Content */
|
|
.cProfileContent .ipsComment_header + .ipsPad_half {
|
|
padding-top: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cProfileFields .ipsDataItem_size3 {
|
|
padding-right: 5px;
|
|
}
|
|
|
|
html[dir="rtl"] .cProfileFields .ipsDataItem_size3 {
|
|
padding-left: 5px;
|
|
}
|
|
|
|
/* Activity stream overview */
|
|
#elProfileActivityOverview .ipsStreamItem,
|
|
#elUserContent .ipsStreamItem,
|
|
#elSingleStatusUpdate .ipsStreamItem {
|
|
box-shadow: none;
|
|
border: 0;
|
|
margin: 0;
|
|
padding: 20px 0;
|
|
border-bottom: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
|
|
#elUserContent .ipsStreamItem_contentType,
|
|
#elSingleStatusUpdate .ipsStreamItem_contentType {
|
|
display: none;
|
|
}
|
|
|
|
html[dir] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
top: 55px;
|
|
border-width: 1px;
|
|
width: 24px;
|
|
height: 24px;
|
|
border-radius: 24px;
|
|
line-height: 22px;
|
|
font-size: 12px;
|
|
}
|
|
|
|
html[dir="ltr"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
left: 20px;
|
|
}
|
|
html[dir="rtl"] .ipsStream:not( .ipsStream_withTimeline ) .ipsStreamItem_contentType {
|
|
right: 20px;
|
|
}
|
|
|
|
/* Cropper tool */
|
|
#elPhotoCropper [data-role="cropper"] {
|
|
margin: 0 auto;
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* Rep log */
|
|
.cProfileRepLog_text {
|
|
margin: 10px 0 0 0;
|
|
}
|
|
|
|
.cProfileRepLog_button {
|
|
line-height: 28px !important;
|
|
}
|
|
|
|
/*!
|
|
* Cropper v0.8.0
|
|
* https://github.com/fengyuanchen/cropper
|
|
*
|
|
* Copyright 2014-2015 Fengyuan Chen
|
|
* Released under the MIT license
|
|
*
|
|
* Date: 2015-02-19T06:49:29.144Z
|
|
*/.cropper-container{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.cropper-container img{display:block;width:100%;min-width:0!important;max-width:none!important;height:100%;min-height:0!important;max-height:none!important}.cropper-canvas,.cropper-modal{position:absolute;top:0;right:0;bottom:0;left:0}.cropper-canvas{background-color:#fff;filter:alpha(opacity=0);opacity:0}.cropper-modal{background-color:#000;filter:alpha(opacity=50);opacity:.5}.cropper-cropbox{position:absolute;top:10%;left:10%;width:80%;height:80%}.cropper-viewer{display:block;width:100%;height:100%;overflow:hidden;outline:#69f solid 1px;outline-color:rgba(102,153,255,.75)}.cropper-dashed{position:absolute;display:block;filter:alpha(opacity=50);border:0 dashed #fff;opacity:.5}.cropper-dashed.dashed-h{top:33.33333333%;left:0;width:100%;height:33.33333333%;border-top-width:1px;border-bottom-width:1px}.cropper-dashed.dashed-v{top:0;left:33.33333333%;width:33.33333333%;height:100%;border-right-width:1px;border-left-width:1px}.cropper-face,.cropper-line,.cropper-point{position:absolute;display:block;width:100%;height:100%;filter:alpha(opacity=10);opacity:.1}.cropper-face{top:0;left:0;cursor:move;background-color:#fff}.cropper-line{background-color:#69f}.cropper-line.line-e{top:0;right:-3px;width:5px;cursor:e-resize}.cropper-line.line-n{top:-3px;left:0;height:5px;cursor:n-resize}.cropper-line.line-w{top:0;left:-3px;width:5px;cursor:w-resize}.cropper-line.line-s{bottom:-3px;left:0;height:5px;cursor:s-resize}.cropper-point{width:5px;height:5px;background-color:#69f;filter:alpha(opacity=75);opacity:.75}.cropper-point.point-e{top:50%;right:-3px;margin-top:-3px;cursor:e-resize}.cropper-point.point-n{top:-3px;left:50%;margin-left:-3px;cursor:n-resize}.cropper-point.point-w{top:50%;left:-3px;margin-top:-3px;cursor:w-resize}.cropper-point.point-s{bottom:-3px;left:50%;margin-left:-3px;cursor:s-resize}.cropper-point.point-ne{top:-3px;right:-3px;cursor:ne-resize}.cropper-point.point-nw{top:-3px;left:-3px;cursor:nw-resize}.cropper-point.point-sw{bottom:-3px;left:-3px;cursor:sw-resize}.cropper-point.point-se{right:-3px;bottom:-3px;width:20px;height:20px;cursor:se-resize;filter:alpha(opacity=100);opacity:1}.cropper-point.point-se:before{position:absolute;right:-50%;bottom:-50%;display:block;width:200%;height:200%;content:" ";background-color:#69f;filter:alpha(opacity=0);opacity:0}@media (min-width:768px){.cropper-point.point-se{width:15px;height:15px}}@media (min-width:992px){.cropper-point.point-se{width:10px;height:10px}}@media (min-width:1200px){.cropper-point.point-se{width:5px;height:5px;filter:alpha(opacity=75);opacity:.75}}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-invisible{filter:alpha(opacity=0);opacity:0}.cropper-hide{position:fixed;top:0;left:0;z-index:-1;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;filter:alpha(opacity=0);opacity:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-canvas,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="query_log.css">html[dir="ltr"] body {
|
|
margin-right: 300px;
|
|
}
|
|
html[dir="rtl"] body {
|
|
margin-left: 300px;
|
|
}
|
|
|
|
#elQueryLog {
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
padding-bottom: 70px;
|
|
width: 300px;
|
|
background: #212223;
|
|
overflow: auto;
|
|
}
|
|
html[dir="ltr"] #elQueryLog {
|
|
right: 0;
|
|
padding-left: 10px;
|
|
}
|
|
html[dir="rtl"] #elQueryLog {
|
|
left: 0;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
#elQueryLog h3 {
|
|
color: #fff;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
#elQueryLog span.pln {
|
|
color: #fff;
|
|
}
|
|
|
|
#elQueryLog .prettyprint {
|
|
border: 0;
|
|
cursor: pointer;
|
|
background: inherit;
|
|
white-space: pre-wrap;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="search_responsive.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
html[dir="ltr"] .cSearchResults .ipsDataItem_main {
|
|
margin-left: 0;
|
|
}
|
|
html[dir="rtl"] .cSearchResults .ipsDataItem_main {
|
|
margin-right: 0;
|
|
}
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="search.css">/* Search form */
|
|
.cSearchMainBar .ipsType_huge.fa {
|
|
font-size: 36px;
|
|
line-height: 1;
|
|
margin-left: 7px;
|
|
}
|
|
|
|
.cSearchFiltersSubmit {
|
|
padding-top: 15px;
|
|
}
|
|
|
|
.cSearchPretendButton {
|
|
border: 0;
|
|
padding: 0;
|
|
margin: 0;
|
|
display: inline;
|
|
background: transparent;
|
|
}
|
|
|
|
/* Member search results */
|
|
.cStream_members .ipsStreamItem {
|
|
margin-top: 10px !important;
|
|
}
|
|
|
|
.cStream_members .ipsUserPhoto {
|
|
margin-top: -20px;
|
|
}
|
|
|
|
.cStream_members .ipsGrid_span6 {
|
|
margin-bottom: 0;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="staff_responsive.css">/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
.cStaffDirectory .cStaffDirectory_half {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.cStaffDirectory .cStaffDirectory_blocks .ipsGrid_span3,
|
|
.cStaffDirectory .cStaffDirectory_half .ipsGrid_span6 {
|
|
margin-bottom: 15px;
|
|
}
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="staff.css">.cStaffDirectory_blocks .ipsUserPhoto {
|
|
width: 54px;
|
|
display: block;
|
|
margin: 0 auto 10px auto;
|
|
}</css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="streams.css"><![CDATA[/* FILTER FORM STYLES */
|
|
.cStreamForm_loading {
|
|
height: 500px;
|
|
}
|
|
.cStreamForm_loading .ipsAreaBackground_reset {
|
|
height: 100%;
|
|
}
|
|
.cStreamForm_loading .ipsLoading {
|
|
position: absolute;
|
|
height: 450px;
|
|
width: 100%;
|
|
}
|
|
.cStreamForm_list > li {
|
|
margin-bottom: 0;
|
|
position: relative;
|
|
}
|
|
|
|
.cStreamForm_list li a.ipsSideMenu_item {
|
|
padding-top: 5px;
|
|
padding-bottom: 5px;
|
|
}
|
|
|
|
html[dir="ltr"] .cStreamForm_list li a.ipsSideMenu_item.cStream_withOptions {
|
|
margin-right: 45px;
|
|
}
|
|
html[dir="rtl"] .cStreamForm_list li a.ipsSideMenu_item.cStream_withOptions {
|
|
margin-left: 45px;
|
|
}
|
|
|
|
.cStreamForm_list li a.ipsSideMenu_item.ipsSideMenu_itemActive + .cStreamForm_menu,
|
|
.cStreamForm_list li a.ipsSideMenu_item:not( .ipsSideMenu_itemActive ):hover + .cStreamForm_menu {
|
|
display: block;
|
|
background: #ebebeb;
|
|
}
|
|
|
|
.cStreamForm_list li a.ipsSideMenu_item.ipsSideMenu_itemActive + .cStreamForm_menu.cStreamForm_menuActive {
|
|
background: #d6d6d6;
|
|
}
|
|
|
|
.cStreamForm_list li:hover a.ipsSideMenu_item:not( .ipsSideMenu_itemActive ) + .cStreamForm_menu {
|
|
opacity: 0.3;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.cStreamForm_menu {
|
|
padding: 5px 10px;
|
|
cursor: pointer;
|
|
position: absolute;
|
|
top: 0;
|
|
display: none;
|
|
}
|
|
|
|
html[dir="ltr"] .cStreamForm_menu {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] .cStreamForm_menu {
|
|
left: 0;
|
|
}
|
|
|
|
.cStreamForm_dates, .cStreamForm_authors {
|
|
padding-left: 26px;
|
|
}
|
|
|
|
.ipsApp .cStreamForm_dates input[type="date"] {
|
|
max-width: 100%;
|
|
width: 100%;
|
|
}
|
|
|
|
.cStreamForm_list[data-filterType='type'] .ipsSideMenu_item .cStreamForm_menu + a {
|
|
margin-right: 45px;
|
|
}]]></css>
|
|
<css css_location="front" css_app="core" css_attributes="" css_path="styles" css_name="vse.css"><![CDATA[.ipsApp.ipsApp_vse {
|
|
background: #fff !important;
|
|
}
|
|
|
|
#vseMainWrapper {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
right: 320px;
|
|
bottom: 0;
|
|
}
|
|
html[dir="rtl"] #vseMainWrapper {
|
|
left: 320px;
|
|
right: 0;
|
|
}
|
|
|
|
#vseMainFrame {
|
|
border: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
#vseToolbox_tabs {
|
|
position: absolute;
|
|
width: 100%;
|
|
top: 50px;
|
|
bottom: 0;
|
|
}
|
|
|
|
#vseToolbox .ipsTabs_panel
|
|
{
|
|
background: transparent;
|
|
}
|
|
|
|
#ipsTabs_vseSection_vseCustomizeTab_panel {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
#vseToolbox {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 320px;
|
|
z-index: 5000;
|
|
{prefix="box-shadow" value="-10px 0px 40px rgba(0,0,0,0.2)"}
|
|
}
|
|
html[dir="ltr"] #vseToolbox {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #vseToolbox {
|
|
left: 0;
|
|
}
|
|
|
|
#vseCustomCSS {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 320px;
|
|
bottom: 0;
|
|
height: 300px;
|
|
}
|
|
html[dir="rtl"] #vseCustomCSS {
|
|
left: 320px;
|
|
right: 0;
|
|
}
|
|
|
|
#vseCustomCSS_editor {
|
|
height: 235px;
|
|
}
|
|
|
|
.vseIcon {
|
|
font-size: 36px;
|
|
}
|
|
|
|
/* Overwritten styles from the framework */
|
|
#vseToolbox .ipsHr {
|
|
border-color: rgba(0,0,0,0.2);
|
|
}
|
|
|
|
#vseToolbox .ipsTabs {
|
|
background: #000;
|
|
color: #fff;
|
|
}
|
|
|
|
#vseToolbox .ipsTabs .ipsTabs_item:hover {
|
|
background: rgba(0,0,0,0.1);
|
|
color: #fff;
|
|
}
|
|
|
|
#vseToolbox .ipsTabs .ipsTabs_item {
|
|
color: #8b8b8b;
|
|
}
|
|
|
|
#vseToolbox .ipsTabs .ipsTabs_activeItem {
|
|
background: #212223;
|
|
color: #fff;
|
|
font-weight: normal;
|
|
}
|
|
|
|
#vseToolbox .ipsButton_primary {
|
|
background: #000;
|
|
}
|
|
|
|
#vseToolbox #ipsTabs_vseSection_vseSettingsTab_panel .ipsFieldRow_label,
|
|
#vseToolbox #ipsTabs_vseSection_vseSettingsTab_panel .ipsField_fieldList_content
|
|
{
|
|
color: #fff;
|
|
}
|
|
|
|
/*#vseClassEditor input[type="text"] {
|
|
background: rgba(255,255,255,0.3);
|
|
border: 1px solid rgba(0,0,0,0.2);
|
|
color: #fff;
|
|
}
|
|
|
|
#vseClassEditor input[type="text"]:focus {
|
|
background: rgba(255,255,255,0.4);
|
|
}*/
|
|
|
|
/* CLASS LIST */
|
|
#vseClassWrap {
|
|
width: 320px;
|
|
overflow: hidden;
|
|
position: absolute;
|
|
top: 60px;
|
|
bottom: 0;
|
|
border-top: 1px solid rgba(0,0,0,0.6);
|
|
}
|
|
html[dir="ltr"] #vseClassWrap {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #vseClassWrap {
|
|
right: 0;
|
|
}
|
|
|
|
#vseClassList, #vseClassEditor {
|
|
width: 320px;
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
-webkit-transition: all 0.3s ease;
|
|
overflow: auto;
|
|
}
|
|
|
|
html[dir="ltr"] #vseClassWrap #vseClassEditor {
|
|
left: 320px;
|
|
}
|
|
html[dir="ltr"] #vseClassWrap.vseShow_editor #vseClassList {
|
|
left: -320px;
|
|
}
|
|
html[dir="ltr"] #vseClassWrap #vseClassList {
|
|
left: 0;
|
|
}
|
|
html[dir="ltr"] #vseClassWrap.vseShow_editor #vseClassEditor {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #vseClassWrap #vseClassEditor {
|
|
right: 320px;
|
|
}
|
|
html[dir="rtl"] #vseClassWrap.vseShow_editor #vseClassList {
|
|
right: -320px;
|
|
}
|
|
html[dir="rtl"] #vseClassWrap #vseClassList {
|
|
right: 0;
|
|
}
|
|
html[dir="rtl"] #vseClassWrap.vseShow_editor #vseClassEditor {
|
|
right: 0;
|
|
}
|
|
|
|
#vseClassList {
|
|
color: #fff;
|
|
}
|
|
|
|
#vseClassList .vseClass_title {
|
|
background: rgba(0,0,0,0.2);
|
|
color: #fff;
|
|
padding: 10px 15px;
|
|
font-size: 15px;
|
|
font-weight: 500;
|
|
color: #949494;
|
|
}
|
|
|
|
#vseClassList li[data-styleID] a {
|
|
display: block;
|
|
color: #fff;
|
|
padding: 15px 30px 15px 15px;
|
|
position: relative;
|
|
/*border-top: 1px solid rgba(0,0,0,0.2);*/
|
|
}
|
|
html[dir="rtl"] #vseClassList li[data-styleID] a {
|
|
padding: 15px 15px 15px 30px
|
|
}
|
|
|
|
#vseClassList li[data-styleID] a:hover {
|
|
background: rgba(255,255,255,0.05);
|
|
}
|
|
|
|
#vseClassList li[data-styleID] a:after {
|
|
content: "\F105";
|
|
font-size: 14px;
|
|
font-family: "FontAwesome";
|
|
display: block;
|
|
position: absolute;
|
|
top: 15px;
|
|
}
|
|
html[dir="ltr"] #vseClassList li[data-styleID] a:after {
|
|
right: 15px;
|
|
}
|
|
html[dir="rtl"] #vseClassList li[data-styleID] a:after {
|
|
left: 15px;
|
|
}
|
|
|
|
#vseClassList li[data-styleID] .vseClass_swatch {
|
|
position: absolute;
|
|
top: 12px;
|
|
}
|
|
html[dir="ltr"] #vseClassList li[data-styleID] .vseClass_swatch {
|
|
right: 35px;
|
|
}
|
|
html[dir="rtl"] #vseClassList li[data-styleID] .vseClass_swatch {
|
|
left: 35px;
|
|
}
|
|
|
|
#vseClassList li[data-styleID] .vseClass_swatch .vseClass_swatch {
|
|
top: 10px;
|
|
}
|
|
html[dir="ltr"] #vseClassList li[data-styleID] .vseClass_swatch .vseClass_swatch {
|
|
right: 1px;
|
|
}
|
|
html[dir="rtl"] #vseClassList li[data-styleID] .vseClass_swatch .vseClass_swatch {
|
|
left: 1px;
|
|
}
|
|
|
|
.vseClass_swatch {
|
|
display: inline-block;
|
|
width: 24px;
|
|
height: 24px;
|
|
text-align: center;
|
|
line-height: 24px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.vseClass_swatch .vseClass_swatch {
|
|
width: 15px;
|
|
height: 15px;
|
|
}
|
|
|
|
|
|
/* PANELS */
|
|
|
|
#vseClassEditor {
|
|
padding-top: 0px;
|
|
}
|
|
|
|
.vseStyleSection h3 {
|
|
font-size: 10px;
|
|
font-weight: 500;
|
|
text-transform: uppercase;
|
|
border-top: 1px solid rgba(0,0,0,0.15);
|
|
background: rgba(0,0,0,0.1);
|
|
padding: 8px 15px;
|
|
margin: 0 -15px 15px;
|
|
color: #949494;
|
|
}
|
|
|
|
#vseToolbox .ipsType_sectionHead {
|
|
color: #fff;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.vseStyleSection {
|
|
/*border-bottom: 2px solid rgba(0,0,0,0.1);*/
|
|
padding-bottom: 15px;
|
|
}
|
|
|
|
/* BACKGROUND WIDGET STYLES */
|
|
.vseBackground_color {
|
|
margin-bottom: 5px;
|
|
}
|
|
.vseBackground_preview {
|
|
width: 68px;
|
|
height: 68px;
|
|
border: 1px solid rgba(0,0,0,0.5);
|
|
}
|
|
|
|
.vseBackground_gradient {
|
|
width: 100%;
|
|
height: 75px;
|
|
border: 1px solid rgba(0,0,0,0.5);
|
|
background-position-x: initial;
|
|
background-position-y: initial;
|
|
background-size: 100% 350px;
|
|
background-repeat-x: no-repeat;
|
|
background-repeat-y: no-repeat;
|
|
background-attachment: initial;
|
|
background-origin: initial;
|
|
background-clip: initial;
|
|
background-color: initial;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
[data-role='gradientStops'] > li {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
[data-role='gradientStops'] > li:first-child > [class*="ipsGrid_span"] {
|
|
min-height: 0;
|
|
}
|
|
|
|
[data-role='gradientStops'] {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
[data-role='gradientStops'] > li:not( :first-child ) .ipsGrid_span1 {
|
|
padding-top: 7px;
|
|
}
|
|
|
|
[data-role='gradientEditor'] [data-angle='45'] i,
|
|
[data-role='gradientEditor'] [data-angle='120'] i {
|
|
display: inline-block;
|
|
{prefix="transform" value="rotate(45deg)"}
|
|
}
|
|
|
|
/* IN-PAGE ELEMENTS (e.g. xray) */
|
|
#vseXRay {
|
|
background: rgba( 184, 227, 217, 0.5 );
|
|
border: 1px solid rgba( 184, 227, 217, 1 );
|
|
pointer-events: none;
|
|
position: absolute;
|
|
cursor: default;
|
|
}
|
|
|
|
/* BACK BUTTON */
|
|
.vseNavBack {
|
|
background: rgba(0,0,0,0.2);
|
|
height: 50px;
|
|
position: relative;
|
|
margin: 0 -15px 0;
|
|
padding: 12px 0 0 78px;
|
|
}
|
|
html[dir="rtl"] .vseNavBack {
|
|
padding: 12px 78px 0 0;
|
|
}
|
|
|
|
.vseNavBack .ipsType_sectionHead {
|
|
color: #fff;
|
|
}
|
|
.vseNavBack a {
|
|
top:10px;
|
|
position:absolute;
|
|
background-repeat:repeat-x;
|
|
background-color: #292929;
|
|
height:30px;
|
|
z-index : 0;
|
|
border-radius: 6px;
|
|
font-size : 11px;
|
|
display : block;
|
|
text-align:center;
|
|
color:#fff !important;
|
|
text-shadow : 0px -1px 0px #000;
|
|
line-height : 30px;
|
|
font-weight: 700;
|
|
background-size: 30px;
|
|
}
|
|
html[dir="ltr"] .vseNavBack a {
|
|
left:22px;
|
|
padding: 0 10px 0 8px;
|
|
-webkit-border-top-left-radius : 10px 15px;
|
|
-webkit-border-bottom-left-radius : 10px 15px;
|
|
}
|
|
html[dir="rtl"] .vseNavBack a {
|
|
left:22px;
|
|
padding: 0 8px 0 10px;
|
|
-webkit-border-top-right-radius : 10px 15px;
|
|
-webkit-border-bottom-right-radius : 10px 15px;
|
|
}
|
|
|
|
.vseNavBack a:before{
|
|
position:absolute;
|
|
top:8.2%;
|
|
background-size: 22px 22px;
|
|
background-position :-2px -1.5px;
|
|
background-color: #292929;
|
|
height : 25px;
|
|
width: 25px;
|
|
z-index : 1;
|
|
content : '';
|
|
-webkit-mask-image :
|
|
-webkit-gradient(linear, left top, right bottom,
|
|
from(#292929),
|
|
color-stop(0.33,#292929),
|
|
color-stop(0.5, transparent),
|
|
to(transparent));
|
|
{prefix="transform" value="rotate(-45deg) skew(-10deg, -10deg)"}
|
|
}
|
|
html[dir="ltr"] .vseNavBack a:before{
|
|
left:-5px;
|
|
-webkit-border-top-right-radius : 100px 40px;
|
|
-webkit-border-top-left-radius : 30px 2px;
|
|
-webkit-border-bottom-right-radius : 2px 30px;
|
|
-webkit-border-bottom-left-radius : 40px 100px;
|
|
}
|
|
html[dir="rtl"] .vseNavBack a:before{
|
|
right:-5px;
|
|
-webkit-border-top-left-radius : 100px 40px;
|
|
-webkit-border-top-right-radius : 30px 2px;
|
|
-webkit-border-bottom-left-radius : 2px 30px;
|
|
-webkit-border-bottom-right-radius : 40px 100px;
|
|
}
|
|
|
|
/* COLORIZER */
|
|
.vseColorizer_swatch {
|
|
width: 100%;
|
|
height: 70px;
|
|
display: block;
|
|
margin-bottom: 4px;
|
|
border-radius: 5px;
|
|
font-size: 0px;
|
|
text-indent: -400px;
|
|
cursor: pointer;
|
|
}
|
|
]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="dashboard.css"><![CDATA[[data-role="mainColumn"],
|
|
[data-role="sideColumn"] {
|
|
min-height: 500px;
|
|
}
|
|
|
|
[data-role="mainColumn"] > li,
|
|
[data-role="sideColumn"] > li {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
[data-role="sideColumn"] {
|
|
min-height: 150px;
|
|
}
|
|
|
|
.acpWidget_item {
|
|
position: relative;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
}
|
|
|
|
html[dir="ltr"] .acpWidget_item .ipsType_sectionTitle {
|
|
padding-right: 10px;
|
|
}
|
|
html[dir="rtl"] .acpWidget_item .ipsType_sectionTitle {
|
|
padding-left: 10px;
|
|
}
|
|
|
|
.acpWidget_item .ipsType_sectionTitle .ipsType_light {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
/*.acpWidget_item [data-role="widgetContent"] {
|
|
min-height: 150px;
|
|
}*/
|
|
|
|
.acpWidget_tools {
|
|
font-size: 18px;
|
|
opacity: 0;
|
|
{prefix="transition" value="0.3s all linear"}
|
|
}
|
|
html[dir="ltr"] .acpWidget_tools {
|
|
margin-left: 5px;
|
|
float: right;
|
|
}
|
|
html[dir="rtl"] .acpWidget_tools {
|
|
margin-left: auto;
|
|
margin-right: 5px;
|
|
float: left;
|
|
}
|
|
|
|
html[dir="ltr"] .acpWidget_tools li {
|
|
margin-right: 10px;
|
|
}
|
|
html[dir="rtl"] .acpWidget_tools li {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.acpWidget_tools a {
|
|
color: #fff;
|
|
}
|
|
|
|
.acpWidget_item:hover .acpWidget_tools {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.acpWidget_item .acpWidget_tools:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
html[dir="ltr"] .acpWidget_sidebar {
|
|
border-left: 3px solid #e3e3e3;
|
|
margin-left: 1.6% !important;
|
|
padding-left: 1.6% !important;
|
|
}
|
|
html[dir="rtl"] .acpWidget_sidebar {
|
|
border-right: 3px solid #e3e3e3;
|
|
margin-right: 1.6% !important;
|
|
padding-right: 1.6% !important;
|
|
}
|
|
|
|
.acpWidget_emptyHover {
|
|
background: #f4f4d9;
|
|
height: 40px;
|
|
}
|
|
|
|
.acpWidget_manualReorder {
|
|
width: 40px !important;
|
|
padding: 1px !important;
|
|
}
|
|
|
|
/* NOTES */
|
|
[data-widgetKey="admin_notes"] textarea {
|
|
height: 150px;
|
|
line-height: 1.5;
|
|
font-size: 13px;
|
|
line-height: 1.3;
|
|
border: 1px solid rgba(0,0,0,0.2);
|
|
background: #fdfdd5 url( "{resource="notepad_bg.png" app="core" location="admin"}" ) repeat-y;
|
|
box-shadow: none;
|
|
}
|
|
|
|
[data-widgetKey="admin_notes"] textarea:focus {
|
|
box-shadow: rgba(178, 157, 191, 0.3);
|
|
}
|
|
|
|
/* "Empty" widgets */
|
|
[data-widgetkey] .ipsEmpty {
|
|
padding: 30px 0 0;
|
|
}
|
|
|
|
/* REGISTRATION */
|
|
#elRegisterGraph {
|
|
width: 100%;
|
|
height: 235px;
|
|
}
|
|
|
|
/* NEWS */
|
|
#elWidget_ipsNews .ipsDataItem_icon {
|
|
font-size: 30px;
|
|
}
|
|
|
|
/* ONLINE USERS */
|
|
#elActiveUsersPie {
|
|
height: 235px;
|
|
}
|
|
|
|
/* NEW VERSION INFO */
|
|
#acpNewVersion i.fa-info-circle {
|
|
font-size: 44px;
|
|
line-height: 40px;
|
|
}
|
|
|
|
/* Warnings */
|
|
#acpWarnings i.fa-warning {
|
|
font-size: 44px;
|
|
line-height: 40px;
|
|
}
|
|
]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="diff.css"><![CDATA[table.diff {
|
|
width: 100%;
|
|
}
|
|
|
|
table.diff td, table.diff th {
|
|
width: 50%;
|
|
max-width: 500px;
|
|
overflow-x: auto;
|
|
}
|
|
|
|
table.diff td {
|
|
padding: 10px;
|
|
vertical-align: top;
|
|
white-space: pre;
|
|
white-space: pre-wrap;
|
|
font-family: monospace;
|
|
}
|
|
|
|
.diffBlank {
|
|
content: ' ';
|
|
}
|
|
|
|
.diffDeleted {
|
|
background:rgb(255,224,224);
|
|
}
|
|
|
|
.diffInserted {
|
|
background:rgb(224,255,224);
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="enhancements.css">html[dir="ltr"] #acpEnhancements .acpEnhancement_logo {
|
|
margin-left: 10px;
|
|
}
|
|
html[dir="rtl"] #acpEnhancements .acpEnhancement_logo {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
/* TABLETS */
|
|
@media screen and (max-width: 979px) {
|
|
#acpEnhancements .acpEnhancement_logo {
|
|
max-width: 50px;
|
|
}
|
|
}
|
|
|
|
/* PHONES */
|
|
@media screen and (max-width: 767px) {
|
|
#acpEnhancements .acpEnhancement_logo {
|
|
max-width: 30px;
|
|
}
|
|
}</css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="login.css"><![CDATA[body#elLogin {
|
|
background: #394248;
|
|
}
|
|
|
|
#elLogin_box {
|
|
width: 500px;
|
|
margin: 10% auto 0;
|
|
box-shadow: 0px 2px 45px rgba(0,0,0,0.3);
|
|
background: #1f282d;
|
|
border-radius: 3px;
|
|
}
|
|
#ipsTabs_elLogin_tabs_handler__standard_panel {
|
|
background: inherit;
|
|
}
|
|
|
|
#elLogin_box > .ipsColumns {
|
|
min-height: 250px;
|
|
}
|
|
|
|
#elLogin_tabs {
|
|
background: #25282b;
|
|
padding: 0;
|
|
}
|
|
|
|
#elLogin_tabs ul a {
|
|
display: block;
|
|
width: 50px;
|
|
height: 50px;
|
|
line-height: 50px;
|
|
color: #96b0c8;
|
|
font-size: 22px;
|
|
text-align: center;
|
|
position: relative;
|
|
{prefix="transition" value="0.2s all linear"}
|
|
}
|
|
|
|
#elLogin_tabs ul li:first-child a {
|
|
border-radius: 0 3px 0 0;
|
|
}
|
|
|
|
#elLogin_tabs ul a:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
#elLogin_tabs .elLogin_tabsActive {
|
|
background: #4791c4;
|
|
color: #fff;
|
|
}
|
|
|
|
#elLogin_tabs .elLogin_tabsActive:before {
|
|
content: '';
|
|
display: block;
|
|
border-width: 8px;
|
|
border-style: solid;
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -8px;
|
|
}
|
|
html[dir="ltr"] #elLogin_tabs .elLogin_tabsActive:before {
|
|
border-color: transparent transparent transparent #f9f9f9;
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] #elLogin_tabs .elLogin_tabsActive:before {
|
|
border-color: transparent #f9f9f9 transparent transparent;
|
|
right: 0;
|
|
}
|
|
|
|
|
|
.cAcpLoginBox {
|
|
background: #f9f9f9;
|
|
border-radius: 3px 0 0 3px;
|
|
}
|
|
html[dir="rtl"] .cAcpLoginBox {
|
|
border-radius: 0 3px 3px 0;
|
|
}
|
|
|
|
.cAcpLoginBox_button {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
#elLogin_forms .ipsType_pageTitle .fa {
|
|
font-size: 28px;
|
|
}
|
|
|
|
.elLogin_single #elLogin_forms {
|
|
border-radius: 3px;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="menumanager.css"><![CDATA[.cMenuManager {
|
|
padding-bottom: 100px;
|
|
}
|
|
|
|
.cMenuManager .cMenuManager_column {
|
|
width: 500px;
|
|
}
|
|
|
|
.cMenuManager .cMenuManager_column.cMenuManager_readyToSlide {
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Columns */
|
|
.cMenuManager_editorWrapper {
|
|
width: 200%;
|
|
}
|
|
|
|
.cMenuManager_main,
|
|
.cMenuManager_dropdown {
|
|
width: 50%;
|
|
float: left;
|
|
position: relative;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_main,
|
|
html[dir="rtl"] .cMenuManager_dropdown {
|
|
float: right;
|
|
}
|
|
|
|
.cMenuManager_main,
|
|
.cMenuManager_dropdown {
|
|
|
|
}
|
|
|
|
.cMenuManager_root {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.cMenuManager_root ol {
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
html[dir="ltr"] .cMenuManager_root ol {
|
|
border-left: 1px solid #9e9e9e;
|
|
padding-left: 15px;
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_root ol {
|
|
border-right: 1px solid #9e9e9e;
|
|
padding-right: 15px;
|
|
margin-right: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .cMenuManager_root ol ol {
|
|
margin-left: 15px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_root ol ol {
|
|
margin-right: 15px;
|
|
}
|
|
|
|
html[dir="ltr"] .cMenuManager_root ol:empty {
|
|
border-left: 0;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_root ol:empty {
|
|
border-right: 0;
|
|
}
|
|
|
|
.cMenuManager_leaf {
|
|
background: #f5f5f5;
|
|
padding: 12px 10px;
|
|
margin: 5px 0 5px -30px;
|
|
border: 1px solid rgba(0,0,0,0.05);
|
|
cursor: move;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_leaf {
|
|
margin: 5px -30px 5px 0;
|
|
}
|
|
|
|
.cMenuManager_leaf.cMenuManager_active {
|
|
background: #ebf4f9;
|
|
border-style: solid;
|
|
border-color: #b1cbd9;
|
|
}
|
|
html[dir="ltr"] .cMenuManager_leaf.cMenuManager_active {
|
|
border-width: 1px 0 1px 1px;
|
|
margin-right: -9px;
|
|
padding-right: 20px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_leaf.cMenuManager_active {
|
|
border-width: 1px 1px 1px 0;
|
|
margin-left: -9px;
|
|
padding-left: 20px;
|
|
}
|
|
|
|
.cMenuManager_leaf .cMenuManager_leafTitle {
|
|
font-size: 16px;
|
|
font-weight: bold;
|
|
margin: 0;
|
|
}
|
|
|
|
.cMenuManager_leaf + ol .cMenuManager_leaf {
|
|
padding: 7px 10px;
|
|
}
|
|
|
|
html[dir="ltr"] .cMenuManager_leaf + ol .cMenuManager_leaf.cMenuManager_active {
|
|
padding-right: 20px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_leaf + ol .cMenuManager_leaf.cMenuManager_active {
|
|
padding-left: 20px;
|
|
}
|
|
|
|
.cMenuManager_leaf + ol .cMenuManager_leaf .cMenuManager_leafTitle {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.cMenuManager_leaf .cMenuManager_leafMeta {
|
|
font-size: 12px;
|
|
}
|
|
|
|
.cMenuManager_leaf [data-action="removeItem"],
|
|
.cMenuManager_dropdown .ipsMenu_item [data-action="removeItem"] {
|
|
opacity: 0.1;
|
|
{prefix="transition" value="opacity 0.1s linear"}
|
|
}
|
|
|
|
.cMenuManager_leaf:hover [data-action="removeItem"],
|
|
.cMenuManager_dropdown .ipsMenu_item:hover [data-action="removeItem"] {
|
|
opacity: 1;
|
|
}
|
|
|
|
.cMenuManager_emptyHover {
|
|
background: #ebf4f9;
|
|
border: 1px solid #b1cbd9;
|
|
height: 40px;
|
|
margin-left: -30px;
|
|
position: relative;
|
|
}
|
|
html[dir="ltr"] .cMenuManager_emptyHover {
|
|
margin-left: -30px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_emptyHover {
|
|
margin-right: -30px;
|
|
}
|
|
|
|
.cMenuManager_emptyHover.cMenuManager_emptyError {
|
|
background: #f9ebeb;
|
|
border: 1px solid #d9b1b1;
|
|
}
|
|
|
|
.cMenuManager_emptyHover.cMenuManager_emptyError:before {
|
|
content: '\f00d';
|
|
font-family: 'FontAwesome';
|
|
font-size: 18px;
|
|
position: absolute;
|
|
line-height: 40px;
|
|
color: #906161;
|
|
}
|
|
html[dir="ltr"] .cMenuManager_emptyHover.cMenuManager_emptyError:before {
|
|
left: 10px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_emptyHover.cMenuManager_emptyError:before {
|
|
right: 10px;
|
|
}
|
|
|
|
/* Dropdown editor */
|
|
.cMenuManager_dropdown .ipsMenu {
|
|
position: relative;
|
|
top: 0;
|
|
width: 80%;
|
|
margin: 30px auto 50px auto;
|
|
min-height: 30px;
|
|
box-shadow: 0px 12px 60px rgba(0,0,0,0.2);
|
|
}
|
|
html[dir="ltr"] .cMenuManager_dropdown .ipsMenu {
|
|
left: 0;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_dropdown .ipsMenu {
|
|
right: 0;
|
|
}
|
|
|
|
.cMenuManager_dropdown .ipsMenu .ipsMenu_item > div {
|
|
display: block;
|
|
color: #333;
|
|
padding: 8px 15px;
|
|
cursor: move;
|
|
}
|
|
|
|
.cMenuManager_dropdown .ipsMenu .ipsMenu_item {
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
.cMenuManager_dropdown .ipsMenu .ipsMenu_item a:hover {
|
|
background: transparent;
|
|
}
|
|
|
|
.cMenuManager_dropdown .ipsMenu .ipsMenu_item.cMenuManager_active {
|
|
background: #ebf4f9;
|
|
border-color: #b1cbd9;
|
|
}
|
|
|
|
.cMenuManager_emptyList {
|
|
line-height: 40px;
|
|
font-size: 12px;
|
|
font-style: italic;
|
|
opacity: 0.8;
|
|
}
|
|
|
|
/* Form editor */
|
|
.cMenuManager_form {
|
|
position: relative;
|
|
}
|
|
|
|
.cMenuManager_form.cMenuManager_formActive {
|
|
background: #ebf4f9;
|
|
border: 1px solid #b1cbd9;
|
|
padding: 10px !important;
|
|
}
|
|
|
|
.cMenuManager_form.cMenuManager_formActive > div > div {
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
.cMenuManager_form > .cMenuManager_formLoading {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
}
|
|
|
|
/* Preview panel */
|
|
.cMenuManager_preview {
|
|
position: fixed;
|
|
bottom: 0;
|
|
background: #f5f5f5;
|
|
height: 48px;
|
|
z-index: 10000;
|
|
}
|
|
html[dir="ltr"] .cMenuManager_preview {
|
|
right: 0;
|
|
left: 320px;
|
|
}
|
|
html[dir="rtl"] .cMenuManager_preview {
|
|
left: 0;
|
|
right: 320px;
|
|
}
|
|
|
|
.cMenuManager_preview h2 {
|
|
background: #417ba3;
|
|
color: #fff;
|
|
}
|
|
|
|
.cMenuManager_preview [data-role="previewBody"] {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
top: 48px;
|
|
bottom: 0;
|
|
}
|
|
|
|
.cMenuManager_preview iframe {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
width: 100%;
|
|
border: 0;
|
|
height: 300px;
|
|
}
|
|
|
|
/* Preview frame */
|
|
#elMenuManagerPreview_body {
|
|
padding-top: 50px;
|
|
}
|
|
|
|
#elMenuManagerPreview_body #ipsLayout_mainArea {
|
|
min-height: 50px;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="plugins.css"><![CDATA[#elSkinHookEditor > .ipsColumns,
|
|
#elCodeHookEditor > .ipsColumns {
|
|
min-height: 700px;
|
|
}
|
|
|
|
.cHookEditor_sidebar {
|
|
background: white;
|
|
height: 720px;
|
|
overflow-y: scroll;
|
|
overflow-x: hidden;
|
|
}
|
|
|
|
.cHookEditor_sidebar li {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.cHookEditor_activeTemplate {
|
|
background-color: #748391;
|
|
color: #fff;
|
|
}
|
|
|
|
html[dir="ltr"] .cHookEditor_content {
|
|
margin-left: 7px;
|
|
}
|
|
html[dir="rtl"] .cHookEditor_content {
|
|
margin-right: 7px;
|
|
}
|
|
|
|
.cHookEditor_content .acpFormTabContent {
|
|
border: 0;
|
|
padding: 15px;
|
|
}
|
|
|
|
.cHookEditor_content .ipsTabs_item {
|
|
max-width: 250px !important;
|
|
}
|
|
|
|
.cHookEditor_content > .acpBlock {
|
|
background: #fff;
|
|
}
|
|
|
|
#elHookEditor .CodeMirror {
|
|
height: 700px;
|
|
}
|
|
|
|
.cHookEditor_tree {
|
|
padding: 0 15px 15px 15px;
|
|
line-height: 1.6;
|
|
font-size: 11px;
|
|
font-family: 'monaco', 'courier new', monospace;
|
|
}
|
|
|
|
.cHookEditor_tree > ul {
|
|
padding: 0;
|
|
}
|
|
|
|
.cHookEditor_tree ul {
|
|
list-style: none;
|
|
}
|
|
|
|
.cHookEditor_tree span {
|
|
display: inline-block;
|
|
}
|
|
|
|
/*.cHookEditor_tree span[data-selectable] {
|
|
background: #eef5eb;
|
|
}*/
|
|
|
|
|
|
.cHookEditor_tree span[data-selectable]:hover {
|
|
background: #f9f7d2;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.cHookEditor_tree span[data-unselectable] {
|
|
opacity: 0.4;
|
|
}]]></css>
|
|
<css css_location="admin" css_app="core" css_attributes="" css_path="system" css_name="systemlogs.css">pre.logview {
|
|
overflow: scroll;
|
|
max-height: 500px;
|
|
}</css>
|
|
<resource name="google_analytics.png" app="core" location="admin" path="/enhancements/">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</resource>
|
|
<resource name="google_maps.png" app="core" location="admin" path="/enhancements/">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</resource>
|
|
<resource name="ips.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAYAAAA4TnrqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABINJREFUeNrsXH9kVXEUP7vLI0aM/bW/YsQyYkQs0V8R/VuikdI0y7JpSmk2jWlMs6eJpdFfaYyIGPEYI8WIMWKMGDHGiMesc3rncff2fXvfH+f77o93PxzXe/fd7/fezzvf8z3nfM/9Nh0cHEAGPTRdHPmUsaCJE4rvzqC0ZNTAHspGNbI6UT7yMUMJP1FuoKzThyB04mVG1BF0obwufwiTdSrjRomciqzM0qvxRUXWHMqfjJtD2EHJq8gi6z+a8XMIE0zYEbLK2rWScfQf31Bmwl8Eih/dRvnb4EQVmYf9WmT9yoYjjJd9q1pkEaZZDRsRayhTqhPVyNpnNSw26PArmpAFrIYTDUbWFGsWmJJFmDzu4pRhnW0V2JKlnBVSCC2zE2g0tMYalmbM6ExogWZjpJ4bKSWKXKVnOj/UJSvNw1HbCQ8MGl2tdP9TgLxJeBcYNj7KapsGbKI8MbnAlCzKTNxNCVl9/DzeyCIUODuRZLxFWTa9KLDsbARlK6FE/UYZtrnQlqwkD8d+lN16kgWsxgsJI+o9OKw1BI6dD7NaJwG0vvDQpQFXsig//SBBw28nSrIISygfYk7UIgtETZbIv+YRYtofCN5Qf0zJIju1HSeygIfiUsyI+swzIMSNLGB1j8tw3OWQBuJKlrV37AHibk3g4SYXbOIuYXzl+A/iThZwKLQXEVHeQjFfZG1xsB0FKEe1mSSyCJTGKdSZqBXwmD4KPN98PYcj5dG9rhOEyaIK5W7h9utZZOIj5d0NocrtMFnvUL6j3BfukBY5Vj0TRWt+08Jt3mM+5lVkneHjLMoFwU73eTj6KjLxsUzXzTwQOo+zWc3MZk6w85p1BA6YAEUtlQNy1Z6/moEnNp8KP5SPIhMfpQWPUM6ZzoaPq13kMBwla7581JCRKXpu4zqU1bE5ppogranNPMnlbP0sMnRDMbQxPmzgQK2JTccpHUPpiNHs5WN2PY3yQsKDP8nqGRe/yIffNg8arw3qhjs9HpxVG49bu5bKAHdQLkvHhvSKXbuHWM401pR8oaGdn0s8kG4Ju/6CWYK85m/zHrIY9C5hq6+swxWUW8I3rJN/2gLDWioNXEe55jtF8wqlTfCmKYXTpzH8JFM9raHYzytZVh3VwPIxzuokyOf0Z23+8KBeKqw5HCuX2Bc9DL+rKDdtLnTJlBoZR030MjnrfOwVbp/eA39je7ELWUbTroE7QcPuLB+l33t0cn9cc/DaDl0McAlK2U+IiixgtY77DiMiPqIEWR06QWjEEEkGSC2F1UxvRIjzKIMSDQUVqRNb+MjbS0AigVlUkeW6AYaPvL0r6H66HNtQ7usgsUApnbd3QRffjys2VGQVYqL2EpA0CwUVWVRML1F76SNvb4ohNuyu2IbQSwaVBl5qEUA6b2/qyowJtTVezcAT5kCgXhxKefvBiMga4P5dsQQV5UsqP4u2bcsLdNYaEVkS0cQc83AIqg0SaamJqo4XoJQV7bHojApfo9rPhtYl2ywDZlp1olrUH6qT2dabBmjKNnWtf2zYEPgnwAAYF+vogoRNzgAAAABJRU5ErkJggg==</resource>
|
|
<resource name="mandrill.png" app="core" location="admin" path="/enhancements/">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</resource>
|
|
<resource name="viglink.png" app="core" location="admin" path="/enhancements/">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</resource>
|
|
<resource name="large_loading.gif" app="core" location="admin" path="/">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</resource>
|
|
<resource name="loading.gif" app="core" location="admin" path="/">R0lGODlhEAAQAPQAAP///xkrQPj5+UtZaZCYoh4vRDtKXNnc4LC2vSw9UIONmHR/jObo6qKpscvP1FlmdWZygAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAAFUCAgjmRpnqUwFGwhKoRgqq2YFMaRGjWA8AbZiIBbjQQ8AmmFUJEQhQGJhaKOrCksgEla+KIkYvC6SJKQOISoNSYdeIk1ayA8ExTyeR3F749CACH5BAkKAAAALAAAAAAQABAAAAVoICCKR9KMaCoaxeCoqEAkRX3AwMHWxQIIjJSAZWgUEgzBwCBAEQpMwIDwY1FHgwJCtOW2UDWYIDyqNVVkUbYr6CK+o2eUMKgWrqKhj0FrEM8jQQALPFA3MAc8CQSAMA5ZBjgqDQmHIyEAIfkECQoAAAAsAAAAABAAEAAABWAgII4j85Ao2hRIKgrEUBQJLaSHMe8zgQo6Q8sxS7RIhILhBkgumCTZsXkACBC+0cwF2GoLLoFXREDcDlkAojBICRaFLDCOQtQKjmsQSubtDFU/NXcDBHwkaw1cKQ8MiyEAIfkECQoAAAAsAAAAABAAEAAABVIgII5kaZ6AIJQCMRTFQKiDQx4GrBfGa4uCnAEhQuRgPwCBtwK+kCNFgjh6QlFYgGO7baJ2CxIioSDpwqNggWCGDVVGphly3BkOpXDrKfNm/4AhACH5BAkKAAAALAAAAAAQABAAAAVgICCOZGmeqEAMRTEQwskYbV0Yx7kYSIzQhtgoBxCKBDQCIOcoLBimRiFhSABYU5gIgW01pLUBYkRItAYAqrlhYiwKjiWAcDMWY8QjsCf4DewiBzQ2N1AmKlgvgCiMjSQhACH5BAkKAAAALAAAAAAQABAAAAVfICCOZGmeqEgUxUAIpkA0AMKyxkEiSZEIsJqhYAg+boUFSTAkiBiNHks3sg1ILAfBiS10gyqCg0UaFBCkwy3RYKiIYMAC+RAxiQgYsJdAjw5DN2gILzEEZgVcKYuMJiEAOwAAAAAAAAAAAA==</resource>
|
|
<resource name="logo.png" app="core" location="admin" path="/">iVBORw0KGgoAAAANSUhEUgAAABoAAAAZCAYAAAAv3j5gAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAZZJREFUeNq8lr9Lw0AUx2OETAUhIAiZBMFBKLg4+R8IroKbWCgOxY7+GYIiWAKCjl0rZHKJ4CqCg3RyKBWhQqmLgRK/py/hcn13TWzqFz5D837de7xcasdxbP0HtvWraxDPCZE7LfRozU8/uRdEW5ADnsB6yUVeQBVESUcRqIFxiUVErgPKnY5O6B6cl1hI5HpIfynbUQHdeHZ1KdfE1iX6BPUSuqlTrlQ243QHWjMUaVGOjJKtU7UEnoFXsEgPbICharA1AcM/jrDGFTEVEroFNwWKCN9Aa51yR7mgn2PL+uQ79a7b1pzjAzRydNMgX05bckchODGcqG3opm2IO6bcmUJfYE0TsAIGTJEB2biYVTBKCsnLIC7WK037b6DJPG+SjZMPKuoyhNIpjwyj6Eh+HYPfoeQ3MbpEol3PMMJ3QjcyTxlzyN11FrV7aRjhJqEb2QVw876wO2DfcM30NLY9sGu6GSLGdsadzCCXYlRlPnxBgUCdTsEy8zyQt84BPvOuvILFHH+nHPJV3zGfbNrPROn6FmAANAMI1RO30/8AAAAASUVORK5CYII=</resource>
|
|
<resource name="logo@2x.png" app="core" location="admin" path="/">iVBORw0KGgoAAAANSUhEUgAAADQAAAAyCAYAAAATIfj2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA1tJREFUeNrcWkFoE0EU3d2EngKCoAgFT4UURalYkEJE0YtQL4LgyUOxUBQFQdqTKAWhxUMRUhBLS8VDLwqiWBQEURTEYhEaFIIBoVAQioVCToES/yd/ZVl3J/P/7KS7efAOSTaz8/LfzPz/N26z2XS6CfmI944AezIy/wawEifoOPA1cF/GgrIJPA9cwRde4IPhDIpxaM7D/ougoLcZXjofogR9Bi5nUAwG4p3/wg3tcgeB34GFjIipA48Ba1ERQqwDb2UoOreDYqIi5OM98FTKxeASOQnc0RHUB/yWYuvh+XMUWA1/4MV8oUbhTCvuRolRRQiRA34EDqVMzCrwRNhqOoIQReBailIhtNpgON3RsZyPKoU3LZhWidGJkG+9L5Tr7SYqFJ2G6iJPYyD06ki7gSxDew4e49eZ3kVBM7QZtIXLKPBwY/hK9VInUaUzR8shHnOHGYnbLi1abZRjd495g1UKf6cwC/zE+YIr6Cn00NlUtCymRpl0nfMlT3CjBtnAtvXGuGKkghyywaxFMXPBos225XwUKCPvS1jMBrBfEh2TCPnV4piF6IxKxZgKcsgWcwmKeQx8YzKAm0DndA/1IXoNx/kNPAzcMhkk3Jd7ISgVtskmprgmEINzfQW8+O8djBBxqtlCOfAeh0+acjwV3rMcnnPUGroOLAl+4ZtkGy62KDpclGiufomj3BQWBdaTTuyG0+pPc622yNnl8GyZFEzuOfAZ4/qXwCXBfSbjzj/Vtj0urFJ1F7c0ogM0N/Y5hL6cF1hvk2zUDhOUFXCQI6vlpAer8tdQYInsFAdssC8Ixh2nORllCneAhxK0Xl14bhV11rWnuaPMq8KsSDInYqy2LrCalv11c7mhwJ7PwULIWg+JXFzVPRvzjEHv0br4JSjUVgLJJxf4zGpK92KOoAKF/ayg0WGSkT9yGE9BuOXDGeCVDjZJLgPP2a6H7idQKugAn24/MCkfdHtfe4HlDggq0710q+f/BHFO7QvASxbFcMffiKpYMdn7yUxx+k0rzBgHrDFtjZXuj3CEapQtW/W4hTW67IuJ6ikccFpPwDld0f2CekYVnT+M67GRfzpYWOYjGhWDlASWqAGiQoV6CklhmzKLAY3rsNk5E76/223/l/OcLsNfAQYAulhz3xljp/AAAAAASUVORK5CYII=</resource>
|
|
<resource name="notepad_bg.png" app="core" location="admin" path="/">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</resource>
|
|
<resource name="blackglass.png" app="core" location="admin" path="/recaptcha/">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331nz6X+61//4t9wHSqw6/vvv/ficuUWE19++eU///lPE+nXX3/973//24urJASIGR+rp0fDS9PF//3f/6F5f//736Ws/Eovgf7Vyys8q/eG1bZXckO28JxfL7GYCBAzPlZPiYaXpotvv/2W37/+9a9yy+a3oTq7jMwUvNv5UVZ/8skn//jHP6yal1jpCBAzPlZPjIaXpqudKnzxxRf8/u1vfzM/o19x3qjuJbY3vtqt5mOcUhAgZnysviIaXpouxFVFieFYUaG4lb24fpTVyPPDDz/86KOPTJiu9/ZwESBmfKy+LBpemi4+//zzgNqRV3/99dcWn5uLjjmX5lntwuTmsTcIEDM+Vo+Phpemi6+++krp38qVK5cuXXrrrbfOnj17x44d5mrMRXtW/yirzV3/7//+70svvbRt27bPPvvMB+ElIUDM+Fh9UTS8NGPi5JNPNolt2bJF82cumd0c27M6Jh599FG0s169esccc0xWVta9995LNO7nI0pCgJjxsfqCaJRht1D0L7/80gJXFQjD3ATVTHXMvJSNCtsIg1WgTXfuNJDZxmxE01q2S1Nf4O9//zttfvzxxxs2bPjTn/5k3bMU+tNPP5W7fu2118TqWrVq8TtkyBCOss5rSlx9eyeC55577qGHHqLZFStW/O53v1uwYMHNN9+Md7ILlypLOHa4zs6/jz32mE4N/vKXv6hAncDNIbfMr4UVVj8g4d3lO6Wnc9l9/ueff/7KK69s3br1oYceevTRRzdr1uy88857/PHHddcwoANmIt3Ou2XVRIBuVI+O6XS2kbGWHDiLZVLsNW1kL3LjqJKUx4Wa1QoFCu+///6rr77qKpXOZTqvCyeJc/tsQ2ADpI6F05MAMeNj9ZholO3QciX/juDPf/7zG2+8QcQlzpS0okOV7W5wQHdtGEoP29RCuA4H7o5eT4LLnTlz5oknnlhUVKS+7Y7MdQcmt6lWWFiIrA455BB+a9Socf/992uQrKscvmbNGvKfM888Mycnp3v37l27dm3QoMEJJ5xA/aOOOqpz585Tp05FCGoWIZieffDBB6aUFAj1r776ahRRCnfKKadw4LJly/B1L7zwAlYDqrtCKClM0O03WYpyntKTlXG3YObS09N//etfS+vgdseOHW+//Xb7RAz1jWwxrwVxQRhdQqAmQ+YON7Llwi3mt11fRWDDGr61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</resource>
|
|
<resource name="clean.png" app="core" location="admin" path="/recaptcha/">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</resource>
|
|
<resource name="red.png" app="core" location="admin" path="/recaptcha/">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</resource>
|
|
<resource name="white.png" app="core" location="admin" path="/recaptcha/">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Hlw5yvY//vEP0BsbG3vdddfNmDEjGOGH2VwMKzNkUmEwsTFigWq8aNGimTNn4no8Ue1ZfYQxn6ait2zZMn78+IEDB/bo0aNx48a/+MUvIiMjP/rooyOrVANa10A1GEZIJyYm9urV68EHH3z00Udbt27dtGnTF198sbCw0IOxZ/VUUZf6m7XGjh3bvHnzU089NazMTjjhhN69e7sNwkfc1CwHFffp0+c///M/yeS55557xhlnsIF8WLZsmQdjz46YbhSQJF8Vi1ofKRU3oOdWFOqSpKt7FT2G7CIK2AkeiouLtZNLIKGB8R/+8AcgceKJJwrPLVq04FeUNp+fffZZqdMmrKYvI3PlgU9RIvtJXz/JEZDhCRMmdOrUad68eW4jM+y6dOlSCXgKQS3n9ivpKER3L/rVV1+98847Z511ltzNL3/5Sz5///vfT5482dBunU/f+S04wg9o0hMcdBhlouZ6ta7pQZTWZnt41WD83nvv7XHMg9DRYAE1zK21wYC33iAZeFCnkdui6x7wz3/+M7jhh8PcLlZlgAqNhN6+fXuXLl2MkKOiogLYGBq89dZbhwwZsnLlyq1bt1otsgH95nHGjBnzxz/+kUTQ50pNG2eeeeb//u//guf169cnJSV17949OjoaLn322Wd1Yl5eXkBRcAu4EiGKGwTGO3fufPnll9u1a0eCv/nNb0gZVCckJATcrOsRKCJcjA1rcVW65Rk3QWkENM6TCOUc0I5Qs+aiEpB6MK5jBpxETVQyA4woQmMz2BY4qUPGb5xFjQSila9YGqFFBdUpQrJqpzESX7/44gugdcoppxx33HG//vWvV6xYYczJNpEzyAQz//M//3PSSScBoZ49e4JGgPfkk0/ed9991157LSAnZB05cuSNN974H//xHxzzX//1X4IxCYo29TUiIuKKK64wAf+zn/3sww8/NEcgvJEfygHnZerDxdjChQsbNWqkFNDYL730kjiTs3SblBulGiA8SYqbomyVJuUg8Fvx6urYYRvm6MH42AlWjWmrOvjRFdikI97AwCeV2MWAqW7VWuNk6jG1VofBsRdeeKGwAT/DTpzyySefgFLQC4aBnNH1z3/+85iYmLfeesvgBHRPO+009xjwyU4YuFWrVn/729901vHHH8/G2Weffcstt5x//vkCfJMmTRDepWX92AG3mZOTA9++8sorqamp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</resource>
|
|
<resource name="dark.png" app="core" location="admin" path="/recaptcha2/">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</resource>
|
|
<resource name="light.png" app="core" location="admin" path="/recaptcha2/">iVBORw0KGgoAAAANSUhEUgAAATEAAABQCAYAAABxukIjAAAWc2lDQ1BJQ0MgUHJvZmlsZQAAWIWVmAdUE1+zwO9uGoSEFnoPJfTee2/SexGBEHrvzQKiooLSpAmogEoRBQRBBAtgAZGOFEWUIiKKigVBUHnR/xPf9533nXfePWezv53cnZ3dmdm5swBw9JIjI0NhRgDCwmOj7U0NBFzd3AUwzwEWsAJGIAVgMiUmUt/W1hL8x/F1AkC/9mPSv3T953n/62Dy9YuhAADZUtnHN4YSRuVr1K2fEhkdCwAilSoXSoiN/MUXqMwSTTWQym2/OOAf7v/FPv/w7O85jvaGVP4CAA2OTI4OAAD361oC8ZQAqh6cAABo5nDfoHAAmJWorEMJJPsCwEH9D0iFhUX84nIqi/n8Dz0B/6LTZ0cnmRyww//cy+9BYxQUExlKTvp/Po7/e4SFxv25hiB1wwVGm9lT98LUZ1YTEmGxw+E+1jZ/OMj39/zfHBhn5vSHKTGG7n/Yl2xk8YfjQpz0/zA5+u+5QbHmjn84OsJ+R79fjLHDjn4/c8sdG0Ktd9g/yMT8DycHOrr84fggZ+s/HBPiYPF3juGOPDrOfsdm/2iTnXsMi/lrG4X814bYQEezv7a57tjg62dkvCMPd9qZHxlrsKMzMtR2Z75fqOmOPCbeYefcWGqA/eFg8i7bv3psd54PsATGwAgIAEMQBMKBHwgDZOqREfUoBkSCUOpRUqxf4q+YA4YRkUnRQQGBsQL61AzyEzAPp8hICSjIyVOj81c+/uPuz/a/8wxiG/ori6Ker6EOAHzmr4wsCUC7FDUNLv+VCasAQFcKQMcCJS46/h8Z8tcPiprpDIAFcAI+IATEgDRQACpAE+hRrd8FbIAjcAOegAICqfZHgwSwDxwE6SAT5IACUALOgfOgBlwBTeA6uAm6wAPwCAyDcTANZsEieAtWwVewBUEQBsJDBIgT4odEIElIAVKDdCBjyBKyh9wgbygACofioH3QISgTyoNKoAqoFroK3YC6oIfQCPQEmoOWoU/QJoyAcTALzAuTYFlYDdaHLWBHeA8cAEfByfBhOAsuhivhy3Ar3AU/gsfhWfgtvIYACDoEG4KIkEaoIQwRNgh3hD8iGnEAkYEoRFQi6hHtiB7EGGIWsYL4hkQjCUgBpDRSE2mGdEJSkFHIA8gTyBJkDbIVeQ85hpxDriJ/ovAoHpQkSgNljnJFBaASUOmoQlQVqgV1HzWOWkR9RaPRbGhRtCraDO2GDkbvRZ9An0E3oDvRI+gF9BoGg+HESGK0MTYYMiYWk445jbmMuYMZxSxiNmjoaPhpFGhMaNxpwmnSaAppLtHcphmlWaLZomWkFaHVoLWh9aVNos2mvUDbTjtEu0i7hWXCimK1sY7YYOxBbDG2Hnsf+wz7mY6OTpBOnc6OLogula6YrpGul26O7huOGSeBM8R54OJwWbhqXCfuCe4zHo8n4fXw7vhYfBa+Fn8X/xy/QU+gl6E3p/elT6EvpW+lH6V/z0DLIMKgz+DJkMxQyNDMMMSwwkjLSGI0ZCQzHmAsZbzBOMm4xkRgkmeyYQpjOsF0iekh02tmDDOJ2ZjZl/kw83nmu8wLBARBiGBIoBAOES4Q7hMWWdAsoizmLMEsmSxXWAZZVlmZWZVYnVkTWUtZb7HOsiHYSGzmbKFs2WxNbBNsm+y87PrsfuzH2evZR9nXObg59Dj8ODI4GjjGOTY5BTiNOUM4czmvc85wIbkkuOy4ErjOct3nWuFm4dbkpnBncDdxP+WBeSR47Hn28pzn6edZ4+XjNeWN5D3Ne5d3hY+NT48vmC+f7zbfMj+BX4c/iD+f/w7/GwFWAX2BUIFigXsCq0QeohkxjlhBHCRuCYoKOgmmCTYIzghhhdSE/IXyhbqFVoX5ha2E9wnXCT8VoRVREwkUKRLpEVkniZJcSEdJ10mvRTlEzUWTRetEn4nhxXTFosQqxR6Lo8XVxEPEz4gPS8ASyhKBEqUSQ5KwpIpkkOQZyREplJS6VLhUpdSkNE5aXzpeuk56ToZNxlImTea6zHtZYVl32VzZHtmfcspyoXIX5KblmeV3yafJt8t/UpBQoCiUKjxWxCuaKKYotil+VJJU8lM6qzSlTFC2Uj6q3K38Q0VVJVqlXmVZVVjVW7VMdVKNRc1W7YRarzpK3UA9Rf2m+jcNFY1YjSaND5rSmiGalzRfa4lq+Wld0FrQFtQma1doz+oI6HjrlOvM6hJ1ybqVuvN6Qnq+elV6S/ri+sH6l/XfG8gZRBu0GKwbahjuN+w0QhiZGmUYDRozGzsZlxg/NxE0CTCpM1k1VTbda9pphjKzMMs1mzTnNaeY15qv7lLdtX/XPQuchYNFicW8pYRltGW7FWy1y+qU1TNrEetw6+s2wMbc5pTNjK2obZRthx3aztau1O6Vvbz9PvseB4KDl8Mlh6+OBo7ZjtNOYk5xTt3ODM4ezrXO6y5GLnkus66yrvtdH7lxuQW5tblj3J3dq9zXdhvvLti96KHske4xsUd0T+Keh55cnqGet7wYvMhezd4obxfvS97fyTbkSvKaj7lPmc8qxZBSRHnrq+eb77vsp+2X57fkr+2f5/86QDvgVMByoG5gYeBKkGFQSdDHYLPgc8HrITYh1SHboS6hDWE0Yd5hN8KZw0PC70XwRSRGjERKRqZHzkZpRBVErUZbRFfFQDF7YtpiWagLn/44sbgjcXPxOvGl8RsJzgnNiUyJ4Yn9SRJJx5OWkk2SL+5F7qXs7d5H3Hdw39x+/f0VB6ADPge6U4RSDqcsppqm1hzEHgw5OJAml5aX9uWQy6H2w7yHUw8vHDE9UpdOnx6dPnlU8+i5Y8hjQccGjyseP338Z4ZvRl+mXGZh5vcTlBN9J+VPFp/czvLPGsxWyT6bg84Jz5nI1c2tyWPKS85bOGV1qjVfID8j/0uBV8HDQqXCc0XYorii2WLL4rbTwqdzTn8vCSwZLzUobSjjKTtetn7G98zoWb2z9ed4z2We2ywPKp+qMK1orSRVFp5Hn48//+qC84Wei2oXa6u4qjKrflSHV8/W2Nfcq1Wtrb3Ecym7Dq6Lq1u+7HF5+IrRlbZ66fqKBraGzEbQGNf45qr31Ykmi6buZrXm+msi18paCC0ZrVBrUuvq9cDrs21ubSM3dt3obtdsb+mQ6ai+SbxZeov1VvZt7O3Dt7fvJN9Z64zsXOkK6Fro9uqevut69/E9u3uD9y3u9z4weXC3R7/nTq92782HGg9v9Kn1XX+k8qi1X7m/ZUB5oGVQZbB1SHWobVh9uH1Ea+T2qO5o15jR2IPH5o8fjVuPj0w4TUxNekzOTvlOvX4S+uTj0/inW9Opz1DPMmYYZwqf8zyvfCH+omFWZfbWnNFc/7zD/PQCZeHty5iX3xcPv8K/KlziX6p9rfD65rLJ8vCb3W8W30a+3VpJf8f0ruy92PtrH/Q+9K+6ri5+jP64/enEZ87P1V+UvnSv2a49/xr2dWs9Y4Nzo+ab2reeTZfNpa2E75jvxT/Ef7T/tPj5bDtsezuSHE3+vRRAUDfY3x+AT9UA4N0AIAwDgKX/Z7383wNBXXzA1L0zJAO9hc8gPJHiKAzqI3oZM0nzgnYOu45D4Un0FgyxjOVMkwQ6Fh3WZLYG9iVOCS4ydxHPEB+KX1nAj5gl2CQ0KvyeBIvSizGI01HffN8k30nNSY/J3JVtkbsgn6OwXzFYyVlZT0VClaD6XW1RvV/jmmaZ1iHtYB17XR09KX1+AzZDRiNaY6TxD5N101Wz1+azu6YsBi3vW920bra5YnvJrtb+ksMVxwanq87NLs2u19yuuTfvbvK4uqfBs8GrybuN3OXTT3ni+8rvi/92IF0QW7BgiGSocphuuHmEU6RfVEL0yZiq2DtxU/EfE2mTBJJV91rvo+xPPJCRUpRafrAi7dyh4sPZR9LT9x6NOuZ/3D3DOlP/hPJJsSyebOYculzaPLpTjPkcBcRCySKlYu3TxiVWpU5lu89Qzoaciy1PrciprDjfcqHv4ouqLzU0tTyXZOsMLjtdCahPbDjWWHi1sqmuuflae8ud1vvXH7YN3BhpH++Yujl968Xtl3fedq51I+6y3hO7r/XAtofSm/Awo6/sUUN/18DI4OzQu+G1kc3R72NbjzfG1yY+Tr6jRtvC0+fTU89GZwae9764P/tgrm9+dGHm5fLi2hL0GrfM8UborcyK+jvD9+YfLFaNPip8Yv/06XPPl9NrIV+11unXX2w0fEvdtNsibn383vUj96f3ttz29r/4XwYlgPpM9f8bmnnaj3RYnAjemD6QIZuxm+kzQZrFi/U022MOPKcV1xHuTp6vfJL8XgIniNcEJ4S+iDCQeERJYkRxDgk6iQ3JealB6XaZ87In5OLlvRXMFeWU2JV+KL9U6VNtUMtXT9bw1DTQImnTaL/VGdFt0zuvn2uQZphgFGrsY+JsamGmYy6/S8iC1RJjuWH1xvqZzYhtr123/W2HDsc2pxbnRpc61yq3CveS3fkeJ/cc9UzzSvFOIaf5ZFBO+Zb5Vfs3BrQFdgb1Bg+FjIc+C3sZvhKxEYWOZo+RijWIc40PTziUWJR0OfnO3tF9L/evpcCp2IP0abhD6EM/D385spw+c3Tk2P3jbRl1mWdP5JxMy0rIDssJyA3ICz4VnZ9ccKgws+hUcenpypLa0sayljM3z3afe1Q+UfGycu0C+iJHlUS1Vo11rdelyLrUyzlXyusbGm419l0db3rR/PraastG63Yb+ga+naWD66bALdJtqTuKndpdu7rd7obeS7l/6kF1T3vvwMPZvk/9yAG2QdKQ8rDBiOWow5jLY/dxjwnPSa8p7yfeT8nT5GfkGfJz8gvKbOBc5Py+hYyXJYt1rzqW+l/PLL97830F947rPemDzKrsR1FqBGx/nvvStVb+9cC6x4bGN45vXzfHthq/n/wR/NNkW+jf/P+f83+QgGXRYo2h5v8Hav5TuEt5HvPh+bUEQohFgreF5oV/kphEiWIS4uISopJEKS5pRhlaWSD7WW5JfkqhV7FVqUq5QOWQapTaHnULDVVNIS16rQ3tBZ1h3U69Zv0ag3LDUqMC4yyTo6apZonmkbsCLDwtHa3MrXVsVGxl7cTtSQ7CjoJORGd+Fx5XTjc2d+bdOA/MHmjPD89vXuveG+QtCuxL48fgzxbAE0gMIgVLhMiGKoQph6tH6EaaRtlFe8VExqbG5cZXJFxN7EwaSp7Z+3bfxgE4BZuKO0ibBlGr6MvDj490pzccPXMs43hcBjnT6oTaSaEshqwf2e9y5nOf5U2dmsyfKnhSOFU0VTx5eqLkcelY2ciZobMD5wbLRyomKmeolW714mY1sgZfy3qJr450WeaKUr1Gg26j4VWjJuNmo2sGLXqt2tc12lRvKLbLdkjeJN0SvM13h7uTu4uvW/iu9D3V+wYPrHpcen0ehvbFP0rpPzaQO1g8dHa4YqRytHys7HHReO5E5uThqf1PEp5GTAc+855xe+7wwnbWbs5l3mch6mXaYsGrmqWO1wPLs28+rSDfsbwX/qCwqv3R6JPJZ5Mvhmu6XzXXVTbkv0lukrYEvnP+IPzEb6N/+f+f7ya/BpraU16g1gmnowBY5gJwVhMAEhYAHD0AtngAHNUBbJANYEVFAMud36kfELXxpAWMgAMQgSRQpfbHdsALRIAUak9ZCVrAQzADPkNYiAhpQI5QBJQBVUMPoEUYDYvBltRer5ja360gOBFmiGREA+I1UpjaqV1AvkbJUHuxbjQD2hvdjKHBeGM6aDhoEmme0urSVlP7pAPYd3RedCM4I9x1vAT+LD0r/UkGGoYjjCjGo0w4plPMvMy1BFVCD4sLyxJrEhsdWzm7KvswRygnlrOOy5rrC3cZjynPZ95yPiu+Tf5qASciitgqGCxEFHoqXCBiTyKQxkVLxLzFRcXfSTRLJknpSqOlh2RKZQPl1OTp5F8otCrmKIUqW6ooqPKpEdTpNRg12bWI2rI6uroOesH6hw0qDLuMFkwwphJmFuZBu45YlFt2WE1Zr9ty2mnb+zlkO3Y4vaXGso1bmvu13Yt72DxNvBK868izFE5fB79c/5FAQpBrcHnISphmeFbEUpRxdHUsPi4h/mWiY1LPXu19rQcUUhoPyqc1HVY8cvWo9LGqDL7M4pOErNwcptz8U1z5lYXSRR2nrUoWylLOCp0brjhyXv8iouphTd4lr8ty9YiGp1evNee2RF23uyHXQXdz/nZLZ3q36z2pB3DP9MPWRwUD8UPuIwZjcuNikwpPnKaLZ7Zm4+e/Lx59zf7m8juTDy8/HV2TXX+2mfXD6Pf744//2X/7X4Xqf1vgCcLAfpAFykEzeACmwSqEgfggVcgWCoHSofNQFzQLQ7AQbAKHwHlwB/wKQUAYIOIQlxAvkUQkGXkRuYJSQqWgBtC86Aj0PQwPJh4zRu2l82m+0XrT9mFVsVV0nHQncQhcMu4jPgg/R7+bfpLBmWGScTfjPFMI0zrzEQIboZZFh2WMNYh1m62IXZ59gOp9es4mLldumLuex4MXz3uHL5pfhH9KIIOoTfwkWCNEFuYVnhYpJXmKCou+FWsRT5WwlGSXXJCql06SMZFlkV2Ua5PPUvBT1FPiUdpSnlG5S61nFeolGqWalVr12reo77NXetsG3IYaRh7GB01qTUfMvu3is9C19LLab33G5rbtvD2tg4Kjp9NJ59sun93E3X12l3qMeWK99L0TyVd93vqK+QX41wa8C1IKPhDSF8YZHhLRGcUZHR8zGacVfyGRIWl/8vt95P1TKXapA2mWhwaO2KaPHrM/PpJpfaIvyyy7J9c8bzDfqeB5UUjxZsmJMuKZjnNu5T8r6y54VrFXP64tqHO/QqxfabzRlHHNs1WpDX9jqePOrfw7fl1Kd8G9gQdlvWF9ev3sA6tD/SN1Y1nj8ZMBTwKmk2eqX7yd139ZuYRdjnu7+N59dfSzzdrwhvPmix9h/+L//5z/z3/nv+Dv/A//nf/3qfmPgkVhCzgSLoLvwG8QbAhjRAKiDjGP5EW6I0uQz1BEVACqEfUdvQtdiv6AMcacwWzQONG00LLT7qNdwFph2+nE6IpxNNQIWMF74R/TW9I/YDBg6GI0YHzAZMk0zkxm/kA4wELPUs6qwPqAzYPtC3s2hxRHP2c4F4Grg9uPh5mnkzeST4BvmP+ggILAK2KpoIMQvdAj4UwRKxIT6YlopViYuLoESmJE8oxUkLSqDEbmiWy93BF5TwUNRU7FTaXnyj0qLap1ajXq9Rodmv1ac9qbumx6yvquBgcMq43GTBCmimYU85xd7RbzVrTW8jbutkftrtsvO/I5uTjnuQy7Mbo77C70mPLk8trtXUZ+ThHyDfa7FgAF2gZVBq+H2oTVRWAjw6LGYwxim+JFE8qTeJJL9/Hsr0yRSG1JMzz0+Ehg+vdjORnEzMaT2lkPc5xzX51KLMAVXijWOT1duvcM39l75RGV/OcnLhZUu9eKXFq73Ft/rjGpyeWaait3G3xjpWPyVted6q70u1735Xug3uG+8v7oQdNh/pFvYxPjrZMlTw5Oh8/4vPCaC1hIWjy11Lw8tQLeS666fzrxpfvr1jfVrfgfN375P8ZfUeF3+YBwBgCgnm9vfyYBgMkD4Efu9vZW5fb2j/PUZuMZAJ2h/3yL/11rGAHII8GbpkK9GZqp//5N/L8AE09eDwk6j54AAAGcaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMwNTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj44MDwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpiTih9AAAYw0lEQVR4Ae1de1CUV5b/8Wi6eQmIoCJgB1BEkahEg0ZJSHRkEs3DREfZjClr41RNRTN/mN3sulXJmtpyNzXrViXj1EyNqUrJbGFeumMm2ZiME7JoIpKoEckgKIaHooC8BNqGpps95+v+mo/mIc+mgXOt7v6++93Hub+WX5977rnnenVRgiRBQBAQBCYoAt4TVG4RWxAQBAQBBQFffjeZTGhra0NTUxPa29sFGkFAEBAEPBIBvV6P0NBQBAYGwsfHR3l58XSyvLwc3t7eiIiIUDI9UnoRShAQBKY8AlarFXV1dbDZbJg5cyZ8fX2hTCdbW1uFwKb8fw8BQBDwfARY+2JlizmLzflMZk6bGD+UJAgIAoKApyOgcpW6JukkMU8XXOQTBAQBQUCLAJMYv4TEtKjItSAgCEw4BITEJtxXJgILAoKAFgEhMS0aci0ICAITDgEhsQn3lYnAgoAgoEVASEyLhlwLAoLAhENASGzCfWUisCAgCGgRULYdaTPkWhAQBCYnAqpLwlBG5+XlpRRXP4dS111lhcTchbT0IwiMIwKdnZ348Fszbpt0ihTO0DV0oVw7MmwaGeuLChAWFoDF8dORFB+G2ZFB9r2KDmLTFB3XSyGxcYVfOhcE3IMAa1LzQhpx/pofqkxhDuayf3AwLgeHOS/4/upXJejyCoAV/nTnjTmRBjyZEY3HVsxCwtwQZd+ie6QfuBexiQ2MjzwVBCYFArxVZ6ExHJuS2xDs1ayMyUlcLiPkfDux2dBls8Cry66fXa9px2+PlGHPry/g9x+UoKOjw6Um17PvZ+z1YAwzhMTGEFxpWhDwJAQCAgKQmhSNR+Lb4AOLIhqT1cCJCnQxWXU6i/1YbcJv37uKn//zaZz7oUYhLn7IBHalvBFv/fEHZWO2s8IYXwiJjTHA0rwg4CkIMMmU11nw9Y0IoiS7bYxlc/IY85VGWLtJH/Di3C4mMbtGRjsWFU3tYmkL9r5ViJJr9QqBXa1oxBu/v4TLlS1CYhoc5VIQEARGCYGiyrt4O9cL9apxX8tY2mtHf04tTWGzLiIz1t60pn+AtbJfvXkex764il/+27c4U9RIU1D7xuxREvuezYhh/54QSQFBYOIjcJciNv+xAKht6/6Td+Ut9Z7JS722j5xYrEvRxyifNTJuQ9XTgGtEZG/8oRimdpXgetYea/S6RzTWPUn7goAgMC4ItFss+PBsB8ob9M7+nTTjvLA/cmpfdLtkfiAsFh/cqu9C7R2eRHLidyu92BLVbY3qJjDKdnMSEnMz4NKdIOBuBCrqOnG2yqendqUhL770IpuX3ssEM6Y5y/3rS6tg6bThyo/1KCiqw4d5LTSbJMqg1UovqkTvzrI8JppFjksSEhsX2KVTQcA9CHD45vyrFtS2GPrskHknQteADfNvI1Dviz8VW1BpClcULo5h7+/vj7j75mL1g21YtvAyfvfRDVTcItcLUtm8SCPzIm2sS+v8qlXl+uxx9DOFxEYfU2lREPAYBCw0lcwr67ZfuSpLXUREzyQ1IS05VvHG1/vV4A9nm9FsDQE7yPKLD+OYNm0aMlYlwZf8zf7h7WukhfFUklpTtDJvhc7Ga9DDJjE+4q2yshLNzXbHubEaQEhICGJjY5UjmsaqD2lXEJisCNxsNKOpnT3uNcnBZF1EQBlzqrB6SayicTFhpS6Mxi+8ruP9i2z3CnFW4mdBQUGYGxuF0OBK1N9hbUyhMYXIvL28lemlUsGVKZ2tjM3FsEmsuLgYvB9rrBOTJPf1wAMPjHVX0r4gMKkQ4Knk1Rr71M9uvGLWUQ30wDTfVqxICIDBYFA0Lh68n58f7p83CzqaYrIGpiaePpZVNuLXhy87CMyh3TFh8eIl/WPdzOpmAmP5uqXkuyEklcDS09OHUGvoRfPy8txClkOXTGoIAp6NgOJBX0cG904LcRfbr3qS2KywTsTNDlLOnNWOhD37lybqnfkKGVY04OX/yMePN8xU1JXAaNrJDbBqRhqbu9OwSczdgkp/goAgMDQEmMTu3CUdyUbbhmgPpI1e9jmgXRvz9/GGv14HPpBWTXyINk8d1WPROJ81sH//wwWU32ijVUmmQiIqXopkvqJ7XqlkXYwzvOlDmVi6kcyExBh/SYLAJESASewn0RV4MLh/u3VBgcJAyui5fFJSEmbPnt0DjTmR/tj3y0TcvXu3R35/N2zHZjJ0VxIScxfS0o8gME4I8HRwoMTkZTabERMTg9DQ0F5F2c1izpw5vfL7y2BNTkisP3QkXxAQBEYFASYuNbEbRlRUFBYsWEAG/e6N4epz1+mlmu8pn6KJeco3IXIIAmOAAGthWsJy7YJjgs2aNQvz5s1TViZdn7vec1vcptZm5lrG3ffum7i6e2Qu/XWSumwee48Ql14985anDgKFZ3437paKyYinkOxmca/E5HXr1i0UFBSgoaHhXsXd9nxSk9jNkgu4UEZrzGjBuw+F4KG3LrgNWI/tqOUCNpLh9a0LjR4rogjmPgSYxCoqKlBT0x3csK/eWQOrra1FSUkpWltbFd/NlpaWAbW8vtoZi7xJTGItOJqVhrSF70P5c51O8HVv4h8LLAfXZmcljh08gPe+rhxc+dEuRSYPNt0OG4rxln+08Zji7TE5sc/nDz/8gIsXLypkpmjqlMf5fM0Ex88LCwspqoU9JLXJZFLuPUEjm9Q2sWlx9D90ul7x6G0n7TclapoH/Je9g9/t2YuGA49i60Ox4yJPE/eqc9mKMmhJxl/+QYsqBRUEBrKJqRDxauLt27fR0NiIYNpepBr42ejPGhf7krGBX5uYyC5fvowlS5aAHWRdn2vLjuX1JNbEesIW9ezreHldPGAuwiup67A/OxuvrNNDr9cjdfN+XLhZiU/271Du9fp1ONSPpnQz9yBSU1/CoewDWEd1uf7m197DTY2RqaXsC2o71dnWgU+KFGFairKRGpiKPLor2pOG1Jfeo4lu79RZV4SDr2x21Ndjx/6e7XfXaMGxV9bR80M4+BqX34wL3KC5EtmvqWOh+i7ysSZW/Pk7PcZPATmdaaTyOxuSC49CQOvU2p9gNiIr3upXV1envJqamno4w7rW4z3U3313fsz3ULv2q72fIiQWjE1792JpMA/dgoqiPOzbuRPYchgHX89C0cf7kGach2ePBuDwkYPISs7Drkf/Hl9r/rBV0G798H8oKnoHu3bm4KnDR3Bgdzo+fvMFvPyunag6b36BRxZuxG/yUnDo6FHsz2rA3mdT8cqxMgQnPIJ/OfCivan0F/GrnyZqIp2rPdBBC9Gp2POba9h/+CgO7c9Czr4XYPynL/o0xtdX5NHzXdjzKfDi7ocxTdeIQxvnYeebOXj14BEcObgbOSSfcVu2kzCDqKt39u5BfeYhHD6wWxl/6toDYOvhyOVXxyGfnoRAO0V2VaeO/cnFz9VXf2XUfG05k6kVTHbjlSb1dHIgUHcfvYL/3MDTuSeA3BzsykvHiZO/RQYdyff0fCAndRcuXGnEQysoQ5N0ijEpGUevnMWGWIJv60rcyTVi3wdn0LIzGcU5v0YRknHi+rvIiKCKG1KB60bs3XYYL7e/gU27XkbWnnfQuuWX2L4hWdOy49LcgDn79+PImu3YtIIbyATyc7DzYimR0E/QUxqHbSv5dVw5txc8GnNJNo0F2H30b3hjA2me2IRCIu+UF3bif0qewfa5QCvlZh06h3e32/tfOoOf78VnJb/Agk9GKD+1LcmzEGANLDo6WokGc+3aNWXaqHWRYEIabmK7WWRkpPIabhsjrTdFNLGeMPFvhtGo0kEwFmbQH3PyU1jiyLIfZkWFevv9ORqKw5wwlf+DEB2ntt+Cy/nEIOk7sIT5R0mzsX7Lk3R1BreUqZ5JIZGmdmcvjnKOD0M8tv5iM/wuZ+OlHTuwY8c27PyYnoXabXs9Czvupkc4ye2u6Y6SuSqp28N67tIUJe+OyT7n5fGnLiM2c6Tu500jl19tVD7HHQG2UTGB8Tai+Ph4xZVi/vz54G1BTD5abWqwwmrrsI8Zu2ewkyx79Y9XmpIkpoBt6TZihUQwCw1AEkP+dlza0vMEji1Rg0h1uVg3g6a2NF0NT83A+vUPgylwsMncxCSWjKAAlWQHUdOX5dOmEcivbUauxxUB1rYSEhIUkuFYYExq/MmGeHZuZUJiMhtsUjU2Ji/2GWPyWrZsmRLrb7yM+iz71CWxHt/caM3ngxGTRFpd3he4yhFLlGRGEU1XgUiE8I+VQwELpegBfSVzQ41i+H/1y5N4Y9d2bN36Ah5Op5KDFDEsglXAInx3rdug11J9XelKpSam0/LSWiWP3+7W/+i4Dhqx/M5G5WLcEWBiCQsL6+GJz3ns2Dp37lwsXrwYHIKaSam/zd2q5sWfvFLJL/bwT0lJgdFo7BGLbLwGPISf6/EScfj9tjuqDv63Zvh9qTVX/t2vgDd3Iu3nB3DqPzag6bO38QJx2JNk0E9ktHUBRGdkWP/mc+Q+4I81S+N7BHWzWOzrlcWf/xm5mIXz72zEXpqh9qeOqWNU+zckr8erdLPv0SxEf3kQD+IssjL3Uc7r2MArG0SurHf9ZttCzD56CuvDrlHZvZSThUeSwpAQMDL5qSFJHoRAfxoSBzxkMpoxY4ZCRo3kWlFDzqx3yW2CtTPWtDix6wW/2IWCyzMpBgcHKwET+2vb3cOf1CSm2OD7sCX1nthRDjvDOpJOpyxjqrcun0wBbBp3SY5GDYnbceXEHTyTuQdrPmZyIHrYfxRv71pqr0A2r+f2P0mrg3uRmZOPc80fIlmz4yM4+Wkc3v0BXiAi/PhNmhju3o/XX8zBvndKUE1srBChvSXlPZjFadJkkHn/teunqNM12Pmo3RaG9FdpbeAfoQ2wkv7ii8h5dg3sEqbj8Ln/sssxQvm1ksi1ZyPAJMT+YExMbCdj2xlrZaxtaUmMy3DEV3YnYkLzFPJS0fUiNbGrqKgIbPAbSsrPz1eKuyOyK3eUlpY2FPHGv2ynGY0td+HrH4xgQ+/fCnNLIyxEln09Y+HN5GB4l1YWwoI1DDfEUbXQr2sn/eKG0S9nn8kho39wGHqJOEL5++xPMgWBUUKgtLRU0SBZo+z91zVKnUz5ZnwN9AvXPwEZmDgGAMlAxDPQ8wGqOh8F0y/sgGkgGQd6Ro3eS/4B+5WHgsAoIiCG/VEEU5oSBAQB9yMgJOZ+zKVHQUAQGEUEhMRGEUxpShAQBNyPgNjE3I+59CgIjD0ClmZcK62gk7z9MHNuPKJCNH6JtLWtnDbKxsZMdzqKmhqqcatJdW7UITwqBiEGG+qqytFCvo28KulDUlvY9UIXCiPX7asPmwnVdCrSrJgIR9s2NFRVwhoei4gAVWcyo7q8AaHGKASMAhLDJjFeFWB/Ej4XcqyT9hDPse5L2hcEJjwCpnIc/ygP5kgj5gaYcPL7AhhXP4P0OPsqdfX3f0FeqRXpW7JgdKwe1RedwunbITCG6dFhqsXp01akbngafpUVqKAQYm03q9DcSc7QMdNg9ZuLmPA7+HNffUTV4avcCjy9PcNBUB3k7J0Ha/pzyDDaKctc/T1O5tHqos9zSI8ZOY0Nm8T4aKfKysoxD8HB/iuxsby1WZIgIAiYay7g8/waWJtrMTPjOawMrcWXf/kG1a2dCDGuwPr0Bag+m4dmYwa2p8cogKVE5+FPxT/CEpdCTjsNKCQCC9JTIMTSOhhT1E2+OhiXP0akYtfYqr/OwcmLtdiekYF51EpN/vv4qzUNGQ9FKW1ey83uuw+K2WfQ+zk1PJD+5kcs08FqnJJsKCu8Bt8gX1wv/BG2mEWasmqZoX0Om8QCAwOVM+qG1p2UFgQEgREhYG0nxaEBi1evRQLxT8GxPNyZvxbP36/DF0c+Q8F9sxFAO8qMq8Kd3QTEpSMrzn5rripCbVAynnsM+Oh4MUxEYqou1GE20aG4wbCY61BSRtEpNBFcOvh8XdpM7mgFDf31YS4H2ptQVl4Of5p6ent3oJ6ctJ0O5hTr7mJtINZtWYWCD75EuWkR4lQBHK0P9WPYJDbUjqS8ICAIjAYCRCS+cUiOi4LOUo0aIgiflqs4U0DcQc2bbjRgprIXTbU/afu0ofR8OcITNyAghHfzfo+SupVYGqGDj58Pqs8cR/YZe3l91GJkzqdCfSYbKDwZpT76oE3nQD2uUjhrO7l00l03iTWUXkRneAIiDBGIj2zHpZI6xC1VtUFuc+hJSGzomEkNQWB8Eei0gnUiHWlGbIqPDg9HKHFH+IpIGMIj0EasUXKb9uDG2A1elobLOF3sg9VLdShuJrI79wmyz9mH0Fx8g0jMCCupWjFkN8sguxnvmuyDnuwVlHcDQknR67OPVJqO6uPx+BMPOSJZ2WjL23+DzGqUTHTAiCIAsp0ClMJEJDYSZWxgWZWO5U0QEAQ8EgFDqBJM4K5/NBYtWoTY8GkIC6X4dvGRaL1Eh34oi41mFJOaVmXVoankItpDlmDL889j27bn8dz6xWgvp3L2vd7EXHbD1b1JwbvfPhSLGpFrd7S8DoVwGT9LXQnK2sMpvh73vw3Pb1mP8PYy0ga7Sw8HZ9HEhoOa1BEExhMBXzvZAMFYuX4Jjn+uTgP1WPHUZorz9RhW1v4Zn3+QbZcyyIj1j0Wi9FgzjGsSYCB3CVa1dDMTEe97CSU3zLiPSqqt9jU0fqbMFB0PQ/rsw0hPy3sWpByuy5rjjeJi+BrXYKaBaVIRAClGX5wqvUXaYAzlDS8NewP48LqTWoKAIDD6CNjoaDUr/Ay6HtNAG0Wj6CAKMeiYNMYmuaOPviSXDeB9oSJ5gsCERcCbghP2JipvCqEz0iAC94LEHX3cU4Z7FZDngoAgIAh4MgK96duTpRXZBAFBQBBwQUBIzAUQuRUEBIGJhYCQ2MT6vkRaQUAQcEFASMwFELkVBASBiYWAkNjE+r5EWkGgHwRsaK6pg0l1XO2n1GTMFmfXyfitypgmJQLV353AV2UmBJJbvBnTsCrzUcQ4Y3R1oOJvxZixmrbwjJFqUleYiy+vNtKeTfKwJ/cNC8nwyMa1mKm46Y8f5EJi44e99CwIDAkBK50JOfvBTHBcrrrC4/jL2UpkZRipDRsds+aHlIz0ftuzWcyw+hjQ7fdqIQdZOvCFHGQHmyJSMvAzOgWw/OuTsC1d2x19wkZt0bYmbVMWswU6R4bZbLP7sZEMFh3JoHZI92aSqQ8XN7XEoD6FxAYFkxQSBDwDAR8fOwWE8klWtTawdnaqtAHhyQ8j6Op3mLU6EWdPt2LTpgfQ9N2nOOe3Aos6zuGbynboyKs/MXMjknyq8Nmn36LdQJuBwpYjBedRHv041s6z4ETOKSza/BQcYcXuOWhT1QWc+IZPkLdg5vLHcV9DHk6WNiMkOg3LA0qRX0P7KOubERQTDZ87N1HbFomfbs2AX1keTlwirY6YNGrV40gzBt+zr/4KCIn1h4zkCwIehoCPH2lB3/4V1hLgzh1g2ZoodND5i8mZW7FouhlfF1thmxaPeBxDaXMc6ks7iZAiYKgy4v7pBlivn0dR0S0EWr+FPm0jnogzoOpyGYJmzEdB3lU0B5pQG5KITIeqVFWYj6v1HYi+fyXmTXfqTxpUzCj85hIC4lcg3qccZ/ILMSu6HZHLNiJzQTBpbKVYmP4EFvhcRvZHtdi2/We4lfs+iipNSKi9TQSagOUJdPqzYaBdm5ru+rkUEusHGMkWBDwNASvFs4lZlq5MJ1XZykt94d9jPqZD8vK5+OD4Jwgyrka6Tw0+Pf03xP/0MQQGEFmYeCu2mrxpv6UBvtNjSDs7huMnO7F4/Qr1IWbNX4JwWihQp4XOB5oLK0UNC50RiVlhkdhApNh28QT0TlLyBYUp4wZAgVzt0SwcmqTfnCVYExiMRgqLXeK3HDERww/GIySm+ULkUhDwdAR66yy9cwwxSYhCKSKTjRQswoyZIWac//KvtCBgpsgVPoi9fxkufvonvP8t8Uv4Mmw0xiDx/tm4lOeDRI2VXkcE15f+1R3vwoCUB+fjf7/5CjUGCwITHkUihbrolkhzZfBz5nNux+1i5J6lkNo8DV02bUSwSxSLEcEnlQWBiYGAxWKjBUXtsiUvBvAiI+eZcSX3OEoj1+GJRdOHMSALteXj0v4gmiEBLKSZ9RBrENW4iESxGCRQUkwQmCwI9CQwHpU3e0koyVJXijJrEjKGRWDcBBFR3yqbvYP+3qnScKq5NifTSVdE5F4QmGII6CJSkLl24g3ay8sL/HLql1bnSSYTbzAisSAgCEwdBFSuYgLjpJBYUFAQ6urq6EQm7crF1AFFRioICAITAwHmKOYq5ixFC6NQ24ph30SewG1tbWhqaqKjmJSzmCbGiERKQUAQmFII6PV6hIaGgs+99eGVUHopJMbEZaODLru6upyvKYWMDFYQEAQ8HgHVBqZqYN6khfFLMewzm/GNkJjHf48ioCAwZRHQkph6zbz1/zNTnRqHyhbNAAAAAElFTkSuQmCC</resource>
|
|
<resource name="small_loading.gif" app="core" location="admin" path="/">R0lGODlhFAAUAKUAAAQCBISChMTCxERCRCQiJKSipOTi5GRiZBQSFJSSlNTS1FRSVDQyNLSytPTy9HRydAwKDIyKjMzKzExKTCwqLKyqrOzq7BwaHJyanNza3FxaXDw6PLy6vPz6/Hx6fGxqbAQGBISGhMTGxERGRCQmJKSmpOTm5BQWFJSWlNTW1FRWVDQ2NLS2tPT29HR2dAwODIyOjMzOzExOTCwuLKyurOzu7BweHJyenNze3FxeXDw+PLy+vPz+/Hx+fGxubP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJBAA/ACwAAAAAFAAUAAAG8MCfUNiqqAggXmfJGzqFNAoIBAAoWy1H5/nruBCQcHWJddQczaHnhHhBNiEaT2muWRzDxuV0IrHSQx12JgYtPy0rNhczBlxCHRYGOAY8DQQENgKOQy2SGQ4+JCQ5m04WKSkmIxQzJaWcCgopKwwzMa+PMborvAq4XRIiEgsbGzu/DgICEh46AxG/ODs7ChwjIwsmrx07LBwmLTkTMj1bmzE0DTtNAjILGhF4Tx0iJRU0jUI3Kho5D98deNRQUOJGgRK3At04cOCDDxc9QkSAgQJDAQmAhkhw4dCFhwAhYCQogKMUvQIhegRA0SCDuSFBAAAh+QQJBABAACwAAAAAFAAUAIYEAgSEgoREQkTEwsQkIiSkoqRkYmTk4uQUEhSUkpRUUlTU0tQ0MjS0srR0cnT08vQMCgyMioxMSkzMyswsKiysqqxsamzs6uwcGhycmpxcWlzc2tw8Ojy8urx8enz8+vwEBgSEhoRERkTExsQkJiSkpqRkZmTk5uQUFhSUlpRUVlTU1tQ0NjS0trR0dnT09vQMDgyMjoxMTkzMzswsLiysrqxsbmzs7uwcHhycnpxcXlzc3tw8Pjy8vrx8fnz8/vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/oBAgoIvFTo0CDAkKiUfg4+CDSwoiRAgIAAUHz+QQB8+OBiUCBAQAAA5H6qcgwEkBBgYIjENDTEqDx8vL46CLRSvLB2sgz+6D7lALxI0FDwHnYI/Lw83Nz8tDAw0I9GDHzcXFy8eLCwW3o8PJyc3Kjw8NenfBwcnIgICC/OCHzv/EkRIWMHP04aDBmTIGFDwxYIVKyIoUJCi4IkZC3b00KDBwIV5P2ZMmHDjgw0dBmL0irZhwIgZjiYYMGEhw4tOHxa06DHgo6ASNmw4CNHzx48HK1o0aNGBYLEKDjz4CBAiQYocJSrUaLGC2KAZEXyEiGA1Q4ESLaB5y1kjg9UKBj0OrBQUCAAh+QQJBABAACwAAAAAFAAUAIYEAgSEgoREQkTEwsQkIiSkoqRkYmTk4uQUEhSUkpRUUlTU0tQ0MjS0srR0cnT08vQMCgyMioxMSkzMyswsKiysqqxsamzs6uwcGhycmpxcWlzc2tw8Ojy8urx8enz8+vwEBgSEhoRERkTExsQkJiSkpqRkZmTk5uQUFhSUlpRUVlTU1tQ0NjS0trR0dnT09vQMDgyMjoxMTkzMzswsLiysrqxsbmzs7uwcHhycnpxcXlzc3tw8Pjy8vrx8fnz8/vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/oBAgoIfNSYsGCg0GiUfg4+CLTwEOBgICDAQIAQVkEAfIRQklIkwmSAAACk/jxE0NBQEMgktLQkSqBwPrIIdLCwMPD28gxMSBx8vrC8KHCwiB56CPz8vyT89AjwCI9KD1S8PHwEiIg7ejx8PNy8GMhIt6IMfNxc3CjIKK/KEF/4aKlRs4Afkx4ETJ2zo0DGB4IsdBw4kMGAgB8EbG3acGGHBhIMb8j5sWLFBnAcbDlahOzBjwQpWMxy48FHihSeRIybMeDCoho8AAVJMuPGh2o4BPXLuePSjQYAQERJkyFGhQoMWPQbsIDZoRYYYUnOUsNpiwAl0H1Z0KFGgRIsJBQe4AgkEACH5BAkEAD8ALAAAAAAUABQAhQQCBISChERCRMTCxCQiJKSipGRiZOTi5BQSFJSSlFRSVDQyNLSytHRydPTy9NTS1AwKDIyKjExKTCwqLKyqrGxqbOzq7BwaHJyanFxaXDw6PLy6vHx6fPz6/Nza3MzKzAQGBISGhERGRCQmJKSmpGRmZOTm5BQWFJSWlFRWVDQ2NLS2tHR2dPT29NTW1AwODIyOjExOTCwuLKyurGxubOzu7BweHJyenFxeXDw+PLy+vHx+fPz+/Nze3MzOzP///wbywJ9Q2GHQcgTbwkBpDZ/CjWgySl5OiNeEAv11IiqZbGLFviAgWucJy2kWshRmtUHF0BAAbTgQ5HISAzxQHzIAABAePy04IiIKB11CNTI5Hjw8AzESEh+SQxYdHS08EQoKO59Po6I0KSkbqkM8LQ4tBjg4irJeNQ41JQYGPbw/PDW+HBUVPsUdFtAYNDRcvDUmJjU+LCw7NbI8Bz0HLR0hHAEFg58mHuODDzshITNOUOEPLh4OQxshMAkK+KiBqcUBHx98PDDxhMeGBAkw3KBAgcEGHQMSHlj3xEOBGzdIzGCwAuMHC6o69BjAYOSAhRyFBAEAIfkECQQAPwAsAAAAABQAFACFBAIEhIKExMLEREJEpKKk5OLkZGJkJCIkFBIUlJKU1NLUVFJUtLK09PL0dHJ0NDI0DAoMjIqMzMrMTEpMrKqs7OrsbGpsHBocnJqc3NrcXFpcvLq8/Pr8fHp8PDo8LC4sBAYEhIaExMbEREZEpKak5ObkZGZkJCYkFBYUlJaU1NbUVFZUtLa09Pb0dHZ0NDY0DA4MjI6MzM7MTE5MrK6s7O7sbG5sHB4cnJ6c3N7cXF5cvL68/P78fH58PD48////BvXAn1DIYXUmn8/AROMMn8LdyvNKng6Hy4MG/fESowH18bneUCiEwznEzCYDnwm32+A0FwQC5hiKFjMzGiI8UBIvMBAQFD8cNhorBiVdQg0vECAHLSI6OhoylEMZMCAAJCkmBhGhTxYAACY9FhY7rKIkJTwONg4ZtkI8PBwcLsUFv14cLRwRHT0KyMotLRQBAQzILQ0NLQohIQk1tjw1FTXDKTEJNIWhDSXmhRkpKRgbLV08FQUFJWw/AjDgIEAjQ4NgHCpkyJCjgLghPEQQIEGBAYsdAkTIUKAiQ4V2TwowoGFxhwgJGzM8pMSjgAwBGGWoBCkkCAAh+QQJBAA/ACwAAAAAFAAUAIUEAgSEgoREQkTEwsQkIiRkYmTk4uSkoqQUEhRUUlTU0tQ0MjR0cnT08vS0srSUkpQMCgyMioxMSkzMyswsKixsamzs6uysqqwcGhxcWlzc2tw8Ojx8enz8+vy8urycmpwEBgSEhoRERkTExsQkJiRkZmTk5uSkpqQUFhRUVlTU1tQ0NjR0dnT09vS0trQMDgyMjoxMTkzMzswsLixsbmzs7uysrqwcHhxcXlzc3tw8Pjx8fnz8/vy8vrycnpz///8G8cCfUNjphTICXYLl6AyfwlElJhEJNovZTOCC/niHTCpR1W1WCwqJsHMOTwVcKsW4DAZw0hrDGcoqJQU0EzxQMgI3GCg2Px07NBUsFl5CNQIoKBQtMhwMDCqUQxoYCC8XJxwsH6FPNC8vGTABOxOsQwMQEAQRISEGtkImICAQMBEwJsA/FiAAID4PDxrKFjEYNy4fHz3KPB0dJho+PicNtt4tPN6nJwOFoS0tHek/ORcXNhNuTzwN/g37ZDhw4WKAgXTeGpiwUKNGC34KXPQYMGKCAhUaciy0QA+KhTsVZWDMYcDEw1A8LGhQcDEHx3dDggAAIfkECQQAPgAsAAAAABQAFACFBAIEhIKEREJExMLEJCIk5OLkpKKkZGJkFBIU1NLUNDI09PL0tLK0dHJ0lJKUVFJUDAoMjIqMTEpMzMrMLCos7OrsrKqsbGpsHBoc3NrcPDo8/Pr8vLq8fHp8nJqcXF5cBAYEhIaEREZExMbEJCYk5ObkpKakZGZkFBYU1NbUNDY09Pb0tLa0dHZ0VFZUDA4MjI6MTE5MzM7MLC4s7O7srK6sbG5sHB4c3N7cPD48/P78vL68fH58nJ6c////AAAABvJAn1C4GTkurtgnwFkNn0JZ6/BxPSQigSbGgfp0FtuFasXmNCpFaPNktBqXU6A2GtUa6RklMEzw3h0JbE8JMTMkJCw+GzABPCE0XkILMSQEKhspESEBGZJDOBQYGDUMMDAmn08dGCgHBg4OCapDAygoMx4eDiW0QiUIwT3DFb4+NC/JNSYmBcYyEBAkAxYWE8YRICAuBaUsTqobNwAAJhscLBwyOqo6LBg3TiUcOwMpg086G/s010IZO0ZMkFFhhY6DKxasWLEvH44JA1NkKFCgQoUFCjewg1IhQQKJOAqUoEFjAT4vOmiUKICjRAUaGqEEAQAh+QQJBABAACwAAAAAFAAUAIYEAgSEgoREQkTEwsQkIiSkoqRkYmTk4uQUEhSUkpRUUlTU0tQ0MjS0srR0cnT08vQMCgyMioxMSkzMyswsKiysqqxsamzs6uwcGhycmpxcWlzc2tw8Ojy8urx8enz8+vwEBgSEhoRERkTExsQkJiSkpqRkZmTk5uQUFhSUlpRUVlTU1tQ0NjS0trR0dnT09vQMDgyMjoxMTkzMzswsLiysrqxsbmzs7uwcHhycnpxcXlzc3tw8Pjy8vrx8fnz8/vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/oBAgoIfExkuBhoWIT0fg4+CCwE2FiY6KioyEho9kEA/DR4uDiaWGgoSIgI8EY6DHQE+ojEtMxOhIjwcLBGDKxEhASErP5ArGiwMDC1AHzkxMQk3noIPKjQ0Ai8bKSkJO9SDBwwkJA0dGRkN4Y8+JAQmNQU5K+yDIwQ4HCX8F/aCFzCgwFCjRoVp/y6gGNihQYMT/4AsQICAxoQWLer9iwEDhoYTHXoMeGHvAQkIEEr8GDFgBDF2FgCAIEDywogJM3a4evRjAwSZFQbtmLFgwY4bH34o/cC0BgALPA8sWLHhwIELNx68eJF0wM5BD3bssHoiq9ak7H48uHDiAtYXBEohBQIAIfkECQQAPwAsAAAAABQAFACFBAIEhIKEREJExMLEJCIkZGJk5OLkpKKkFBIUlJKUVFJU1NLUNDI0dHJ09PL0tLa0DAoMjIqMTEpMzMrMLCosbGps7OrsrKqsHBocnJqcXFpc3NrcPDo8fHp8/Pr8vL68BAYEhIaEREZExMbEJCYkZGZk5ObkpKakFBYUlJaUVFZU1NbUNDY0dHZ09Pb0vLq8DA4MjI6MTE5MzM7MLC4sbG5s7O7srK6sHB4cnJ6cXF5c3N7cPD48fH58/P78////BvXAn1DoWRwCtVorMfIMn8JVotdq1SoFjaoygP58n0go0LGWsiqZLOF7DhKxSCD1WSweAYVMIkoMdxkpCSkbbU8bJQICPC8/Hhc5GTkOXkIOBRwsMh47JwcHBpV/PCwMDyMXJx+iTyEMNA0vNzc7rEMTFBQCD7wWtkIWJMIvxJS/NgQ4JCMDH76/Cxg4HCsjI7W/CSgYBRYTEzNOrA40CAgnPgszCzuGlRUwMDQuPzYrKxsm7kMuFRAQMG4MsbBhhwETLjz4WOiAAgAQIBo88WHBoAkLNhx42KgCAIAa4p44uIjRQUIPA3BcYOXDg4OXLly0pPckCAAh+QQJBABAACwAAAAAFAAUAIYEAgSEgoREQkTEwsQkIiSkoqRkYmTk4uQUEhSUkpRUUlTU0tQ0MjS0srR0cnT08vQMCgyMioxMSkzMyswsKiysqqxsamzs6uwcGhycmpxcWlzc2tw8Ojy8urx8enz8+vwEBgSEhoRERkTExsQkJiSkpqRkZmTk5uQUFhSUlpRUVlTU1tQ0NjS0trR0dnT09vQMDgyMjoxMTkzMzswsLiysrqxsbmzs7uwcHhycnpxcXlzc3tw8Pjy8vrx8fnz8/vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/oBAgoIfGw0pIQEhBRMfg4+COyUJMYkeLg4WLhOQQD8TORkpMREBPi42FiYGOT+PMyUFoRUjKysDCasaGjmDJzUVJRU7ro87LioqCgOeHQ01DQ+dgi8OMhI6LycdLS0X04MHCiIiPQs9HZzggwkCAh4TAwMn64MzHBwKI/vS9UA3LFhwmEGwXz2ADFisWLDA4LoVFCiIOGDrm78UJCjYeLBhww5H615wIECgxo8DOw5cKDbNAQYcLF4AeXHgxIUbLAdVQ4ECQ4NBNy7cfPDhx48POzJQgIEAhYdHP17cePDgRVEaAEBAYOoA5KMPVa3+oJAVAoka645+uEpARQWZA48CAQAh+QQJBAA/ACwAAAAAFAAUAIUEAgSEgoTEwsRERkQkIiSkoqTk4uRkZmQUEhSUkpTU0tRUVlQ0MjS0srT08vR0dnQMCgyMiozMysxMTkwsKiysqqzs6uxsbmwcGhycmpzc2txcXlw8Ojy8urz8+vx8fnwEBgSEhoTExsRMSkwkJiSkpqTk5uRsamwUFhSUlpTU1tRcWlw0NjS0trT09vR8enwMDgyMjozMzsxUUlQsLiysrqzs7ux0cnQcHhycnpzc3txkYmQ8Pjy8vrz8/vz///8G8sCfUOjTCUqZVKam8AyfQlOrUshlEpFQIKKA/nyqRo2aSyVioc/rUXMONZ2WuKPQ6SSlz+N2qQwtAj0dHSY+UAYRJycHEl8yIgIiLl5CDgEHGzcuNhISIjaUQyYHKysCOgoyGqFPGQsLERoqCqCsQgozEzuyGpO2PzYjwnY6brY2A8kmBga+tho8PAs2Jha1tgUcHC8uFtbGlC4DDAwtPjY2Di6GoS80NAOTHg70HuxPLi8kFBQdQy4A7WVQ4cGDjhwccBAg8OGJj4I+WgAAAAEGAgQoMOD4AI6IhwEAQICAYREFgwasfJRYQMAihQ0VOgYBACH5BAkEAD0ALAAAAAAUABQAhQQCBISChMTCxERCRCQiJOTi5KSipGRiZBQSFNTS1DQyNPTy9LSytJSSlFRSVHRydAwKDIyKjMzKzCwqLOzq7KyqrBwaHNza3Dw6PPz6/Ly6vFxaXHx6fExOTGxqbJyanAQGBISGhMTGxERGRCQmJOTm5KSmpGRmZBQWFNTW1DQ2NPT29LS2tJSWlFRWVHR2dAwODIyOjMzOzCwuLOzu7KyurBweHNze3Dw+PPz+/Ly+vFxeXHx+fP///wAAAAAAAAbuwJ5QmCtIWBWDSZPKDZ9CioDFqJgMn1bjk4L2cjeBjlq7ZmORAMs5LIgEAo3oUrilapFQgMMY0mQSEiI0bEMlLRwvLzJfFwkyCSteQisNDw88GQspnAuThi8eJxIlN3SfTyYnBw0ldZ6oQik7Ow8FBSUZsUI0G74UFLm7PQsOHS40ybq7Fx0dBys0C5K7JiMjAZrThZMrDgMDOjkrGeTcUCEYGA6SGe4ZHBReKwEKCio6QzkZOwAoESnc3TAwgMQMBSGe5GAAAAAICBBQWLBggwCJCSGWpSLwEAYMFCgq4mCBaoWJHRMkqjjBgNqQIAAh+QQJBABAACwAAAAAFAAUAIYEAgSEgoREQkTEwsQkIiSkoqRkYmTk4uQUEhSUkpRUUlTU0tQ0MjS0srR0cnT08vQMCgyMioxMSkzMyswsKiysqqxsamzs6uwcGhycmpxcWlzc2tw8Ojy8urx8enz8+vwEBgSEhoRERkTExsQkJiSkpqRkZmTk5uQUFhSUlpRUVlTU1tQ0NjS0trR0dnT09vQMDgyMjoxMTkzMzswsLiysrqxsbmzs7uwcHhycnpxcXlzc3tw8Pjy8vrx8fnz8/vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/oBAgoI/Fws9LTUNAzsfg4+CNzMDPR0NNRUFOSUbkEA/BzMTlB2JJQUZKQk9P4+GoiMzOxcHKx0pKTERHYMPK78LN62uOREhAQufBzsbG46eQC8ZAT4RLy8Hyy/Qgxc+Hi4zNycHF9yPNQ42OTcXF9vnghsWFh7tN8/xNyb8Dw/48QQ9MKDDwIsHL/Kd26FBg40PCRVyq6FAQYQfHz78gMfthQ4ZMlh9uGFAgMRHEURI0OHoBA4AAGSYg/QiBA8BAnoMsgAABAgCEVZkPFBCBgsOHGI8+mADBAQYCFDgIECCBA0GDCKcrEACKgoMUylQEMGL24cKOhhM5WGhAUdBAoEAACH5BAkEAD8ALAAAAAAUABQAhQQCBISChERCRMTCxCQiJGRiZOTi5KSipBQSFFRSVNTS1DQyNHRydPTy9LSytJSSlAwKDExKTMzKzCwqLGxqbOzq7KyqrBwaHFxaXNza3Dw6PHx6fPz6/Ly6vJyanIyKjAQGBISGhERGRMTGxCQmJGRmZOTm5KSmpBQWFFRWVNTW1DQ2NHR2dPT29LS2tJSWlAwODExOTMzOzCwuLGxubOzu7KyurBweHFxeXNze3Dw+PHx+fPz+/Ly+vJyenP///wbzwJ9QyKvlZKPBQGbgDZ/CRkYhkwx6HZfNZYD+eJWcSqWwYh02y2HkHDZyuYwqY6oYR5aTzzcatkwmBgYNbUMVNj4eDxlfNRUVJhxeQhwWDw8vHBw1jpKTQhUPIR8qLQ2nn08uISEWLaaeqT85ARsfHC0chakNLCwbmrqyUSwMLEU9CsM/BhQUOzQgAAXLLgUlLwcAADA5si00OAUjLQQgEBEtqR4pGDSSFucwKTVeLQ8xCQl9QgwwCAgmLGrBw4AFDCIiRPDwhAMDBChQ3CAwY8GCFToEiMjkxcaCCzdIkJhwUUOCHqla2KCgo6KIDS5iCQkCACH5BAkEAD8ALAAAAAAUABQAhQQCBISChMTCxERCRCQiJKSipOTi5GRiZBQSFJSSlNTS1FRSVDQyNLSytPTy9HR2dAwKDIyKjMzKzExKTCwqLKyqrOzq7GxqbBwaHJyanNza3FxaXDw6PLy6vPz6/Hx+fAQGBISGhMTGxERGRCQmJKSmpOTm5GRmZBQWFJSWlNTW1FRWVDQ2NLS2tPT29Hx6fAwODIyOjMzOzExOTCwuLKyurOzu7GxubBweHJyenNze3FxeXDw+PLy+vPz+/P///wbwwJ9Q6HNZdCqFSmPxDZ9Co0Gn0yhkoqwF+itaLCaDJikRCXodhXPosdnAJpvjrUK3GjK2yzH3rIcOAg01FQZdHi57HlxCHh0lJTV+Hoh/jA4lBQUaBi4+i4xPIhkpHTgoCxKhTyYpKTkgAAACq4AxCTEQICCqtT8uESERJBAQFb4/JgEBMRsQMBfIPS8vkDAwOIarLgEPDwouNCiooIwFNzcBLj8NKBgYBzZcHjkHJxd5Qi8YOAQcGTr8mGhwYcOOEyWeePhAgAQFGix4DJgwYcGKHQXKDWkxgAZEDjxGTJhxQcS2Fg8WSNwQoofGH0EAACH5BAkEAD4ALAAAAAAUABQAhQQCBISChERCRMTCxCQiJOTi5KSipGRiZBQSFFRSVNTS1DQyNPTy9LSytJSSlHRydAwKDIyKjExKTMzKzCwqLOzq7KyqrBwaHFxaXNza3Dw6PPz6/Ly6vHx6fGxqbJyanAQGBISGhERGRMTGxCQmJOTm5KSmpBQWFFRWVNTW1DQ2NPT29LS2tJSWlHR2dAwODIyOjExOTMzOzCwuLOzu7KyurBweHFxeXNze3Dw+PPz+/Ly+vHx+fGxubP///wAAAAbzQJ9QqNswKiVcocTQDZ9CIw1ZKmRSihQN6iuuVoxpAXdVyCY459ALpn1XtMJ5NMgMR5XNZqVTDxkyAzs7JT4rNggmfVxRExwsOxsmAAAgCox/LA0NBRggIAKYTzI1FiMkEBAtokMVJiY1CKkDrEIrBrgILy8TtYYfwDMnJzW+FQ4tBgcnFz2+EzAwDRYXNiQFrBsOIREpKxoEBDcbojU8AQ4rPg0kJBQeW1AbFi4dPJdCARQzCyIGOBt0VODQoUcPF8WGbAgxQ4WGHCJioEBx44CHHhb8DOEQI4cAERISoMBww4UMURs48LiRIIEHByPIPQkCACH5BAkEAD8ALAAAAAAUABQAhQQCBISChERCRMTCxCQiJGRiZOTi5KSipBQSFFRSVNTS1DQyNHRydPTy9LSytJSWlAwKDIyKjExKTMzKzCwqLGxqbOzq7KyqrBwaHFxaXNza3Dw6PHx6fPz6/Ly6vJyenAQGBISGhERGRMTGxCQmJGRmZOTm5KSmpBQWFFRWVNTW1DQ2NHR2dPT29LS2tJyanAwODIyOjExOTMzOzCwuLGxubOzu7KyurBweHFxeXNze3Dw+PHx+fPz+/Ly+vP///wbywJ9Q2Ou0GjaLstEbOonGo8Vk0lkbz19n0ukikyaDTqMwNIc1iK/X6hobJrJiZhheQACYpncetjQzEyMWPy0EICAYOllCHTMjkD0XECAQHox+Iz4eJhkwMBKYTioeHhM0CDAfokMWDg4eKCgII6xCLTcXNxgYKDO2WicnFys4OA7AFgcHFxUEBCzAMy8vHjckJAt1oh0fDw8qLQIUNCUdoi4RMR/nLjQLKww2WR0OASERGkMR8DsJJwY69LAwIAQLHgFcOOkQY4cAERJkZMhRokINFhwc9BniIwPEBClyFCjBIMAvTB18hKgwkcWLEeecBAEAIfkECQQAQAAsAAAAABQAFACGBAIEhIKEREJExMLEJCIkpKKkZGJk5OLkFBIUlJKUVFJU1NLUNDI0tLK0dHJ09PL0DAoMjIqMTEpMzMrMLCosrKqsbGps7OrsHBocnJqcXFpc3NrcPDo8vLq8fHp8/Pr8BAYEhIaEREZExMbEJCYkpKakZGZk5ObkFBYUlJaUVFZU1NbUNDY0tLa0dHZ09Pb0DA4MjI6MTE5MzM7MLC4srK6sbG5s7O7sHB4cnJ6cXF5c3N7cPD48vL68fH58/P78////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/6AQIKCHz8/Hy8Pii8/g46CFTgTiC8vNxcXJy+PQB82AAAah4mXJyc7F42DDiCtACeHiDcnBzsbF4M1MBAQGC2qgx8HGysrN0AvFDAwBDuchDsL0h81CNYdz4MvMxMjNwYoKArZjjsjIxssGBg55IMPAz0jBDgEI+6EHR09JCQEM/g6tRgogASFFgFv1GjQwQENGj4CrqhQYkQDBgx4nHD3oUKBEgdeSGDBwcEHcj0y5KhwsgcHHgJ8POD0oUOMFBmcCYohQoQEHTVOFLowIkGIGAkGOPqRQIIMBRp0WLDhwoOPEBE6ABs0wIQKDQZMWHDgwkeCFeQ+DEjgYGqAAgULNjkKBAA7</resource>
|
|
<resource name="tiny_loading.gif" app="core" location="admin" path="/">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</resource>
|
|
<resource name="large_loading.gif" app="core" location="front" path="/loaders/">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</resource>
|
|
<resource name="large_loading@2x.gif" app="core" location="front" path="/loaders/">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</resource>
|
|
<resource name="tiny_loading.gif" app="core" location="front" path="/loaders/">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</resource>
|
|
<resource name="tiny_loading@2x.gif" app="core" location="front" path="/loaders/">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</resource>
|
|
<resource name="message.png" app="core" location="front" path="/notifyIcons/">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</resource>
|
|
<resource name="notification.png" app="core" location="front" path="/notifyIcons/">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</resource>
|
|
<resource name="upload.png" app="core" location="front" path="/notifyIcons/">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</resource>
|
|
<resource name="subitem_stem.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAAA0AAAAICAYAAAAiJnXPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADBJREFUeNpi/P//PwPJYPPmzf9BGknBTAxkAPppYgT5iRQNPj4+jIzkhB5ZmgACDACPKzPzNFohVwAAAABJRU5ErkJggg==</resource>
|
|
<resource name="subitem_stem@2x.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAABoAAAAQCAYAAAAI0W+oAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAD9JREFUeNpi/P//PwM9ABMDnQDTli1b/oMw3X0EtHSIB92oRaMWwQDj5s2baZqHfHx8GOnro+FX1g07iwACDAD+7hJn5BWLewAAAABJRU5ErkJggg==</resource>
|
|
<resource name="subitem_stem_rtl.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAAA0AAAAICAYAAAAiJnXPAAAAAXNSR0IArs4c6QAAActpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgSW1hZ2VSZWFkeTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KKS7NPQAAACFJREFUGBljYKAH2Lx5838mciyinyZGkPNA7iTHmbTXAwC/PAY4LUP5ZQAAAABJRU5ErkJggg==</resource>
|
|
<resource name="subitem_stem_rtl@2x.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAABoAAAAQCAYAAAAI0W+oAAAAAXNSR0IArs4c6QAAActpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgSW1hZ2VSZWFkeTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KKS7NPQAAAD5JREFUOBFjYBhugJHWHtq8efN/kB1MtLYIZv6oRbCQIJkeDTqSgwymAZ6PYOkdJkFtmm5xRG2Hj5pH/RAAAFx2BkMrVt9rAAAAAElFTkSuQmCC</resource>
|
|
<resource name="wizard_step_extra.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAABcAAAA3CAIAAABo5EbBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAnJJREFUeNqkl7+rcXEcxx9cXUwGi5TFYlFGk5QUIfKrDCZKpltuSZcw+DEom0FGkz9ABqMyoMRguItFuQpJ3Wvw63k/ndvpuffyPMfnfEs5w3n1fn2/n/P5fr+C/X7/+PhoMBhms9kv6hDidzgc8vm8VCrlRTmfzyaTKRaLkSkCGLEPLpdrNBoRs3z+EwoLhYJEIuFFgZder396euJr9OdZIPB4PIPBgJiFpWC97vX6ToGXTqd7fn7mZcTOdCAQ6PV6xCzsgJdMJuNFgZdWq+XudTPL8XiMRqNGo5EXBeNyuaAO5XI5X4pGo4nH47wojFc4HLZYLJSV/laH8/nc4XCs12tiFsZLrVYnk0m6ETNOp1MoFLJarXQj1muxWNhstqteQo51BS+VSpVKpehGrFcwGMQ0041Yr+VyCdDb2xsxC+OlVCpfXl7oRqyX3+/3+Xx0I9Zrs9nY7XZUIzEL46VQKIrFIlaNTmG8zGZzIpHgRYEUyq/dbtPnBUMsFkcikVarRc8iEomazSaLoGSBC0oOH9RqtaLXy8PDQyaT+RtxNwUujUaDnVSKEdP0UGwoOfoXgCBw+Ym4g4LpqNfrnU6H3uvggrMjGsJut6N3Kbigy91CcKLApVardbtd+n6EI8jr66vT6Xx/f+e1k6TT6X8j/kNhXLichW4awWU6nbrd7o+PD/pujz6EdeGCuEmBS7Va5X5evWIEl8lk4vV6uX9iV7LgigKXu/qO8KdLpVK5907xxQguw+EQmxbi0M/eeDmbzd6L+EKBS7lcHo/H9DsJXPr9PnZfnJeJ9yO0j+12m8vlaIhPClxKpRJqhHxv/C3AAPLZPpeXucbKAAAAAElFTkSuQmCC</resource>
|
|
<resource name="wizard_step_extra@2x.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAAC4AAABuCAMAAABvP9FpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAXFQTFRFFRUV9/f38/PzFxcX6+vr3t7eGhoaGBgY9fX18fHxZGRkSEhIKCgoOjo629vbKioqISEh6enp9vb2FhYWJiYmHh4eHR0dU1NTfn5+k5OTb29vzs7Ovb29yMjI3Nzc5ubmmZmZzMzMPDw85+fnTk5Ojo6OoaGhpaWl8PDwx8fHbGxss7OzMjIysLCwiYmJ7u7u1tbWNjY2WVlZICAgXV1dGRkZ8vLy2NjYTExMPz8/Li4uLS0t3d3dYmJifHx8hYWFgoKCZ2dnu7u7aWlpxMTEq6urqKiotbW1ODg4lZWVwcHBw8PDNTU1mpqaREREMzMzHBwc0dHR7OzsKysrTU1Nt7e3lpaW0tLS4eHhcnJyHx8ff39/IyMj6urqhoaG7e3th4eHQkJCnZ2d6OjoWFhYe3t7srKyampqRkZGd3d3hISEtra2ra2tp6enXl5euLi4X19fdnZ2nJycKSkpGxsbSkpKzc3N5OTkR0dHOTk5gYGBoZwWSAAAAbdJREFUeNqU2MVyw0AURFG1ZGZ22A6THWZmZmZmZvr6rFOVVOpqfTYajd50j6FswgCPzH7E1baCuN58iLuOEJd7EHH1fCKuewtx8wtx2coQV/4O4pplvL4XcdlnENeZE3EzB3GlXhFXtQ9xpRmv9yCuwATiqnUgrhzGUx+IqzqGuHIZr2pBXA3ziGs0gbguGX/3Iq4RH+LKtRA3HxBXewZx3WwhrkfGw4eIazqGuMpbEY+cIK6GDOK6jSOuTQvx4znENRVC/Odq/s9dTYirfRlxVToQV42FeKkfcQ0lENeVhXjbMOJFF4S7WqKErznJqxaGyELavOirnjoJzy6QLVbUiDbwXZTwSQf5+Qpj5Nfe96I502cRPt5Mhp69EY1UD5rvTw7Ci4PksPk10v/Nt9G5WhsiPOAnh3zEgxJH2kn4b2v4N7d1oHA1gJLedTPhdj+JnWYNCrUVUcLzu0ggDydR3N9D3WM1Tri9hBQh9zmqWRWo860HCd9NkgLqqkNtuOCF8I1OUs2r8lDxr0S3EIvdhC8lDcDNOoPwgjjhpSUG4GaeAXhkjNyLuQPPhIeb0CXdAdHfAgwAYuMtJkBbPqAAAAAASUVORK5CYII=</resource>
|
|
<resource name="wizard_step_extra_rtl.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAABcAAAA3CAYAAADnhtGWAAAAAXNSR0IArs4c6QAAActpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgSW1hZ2VSZWFkeTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KKS7NPQAAAzVJREFUWAmtmEFLMlEUhl8zojIiyigxgwgiosgWFrRIIQIXLnXRolWLaBUURKiYC/MPuGnRbwijon5CtGpvtCiIgpQUVKLS7zsDR5xm1Dt3xs2Z8Xrf887jOdx7xzY6OlqHhZ+pqSnc3d3h6+sLXRbqoq+vD6lUCt/f34qspeK7u7sIBAKo1WqKuM0qLEtLS7i4uFCBsMR5b28vTk5O0NWlllPfqfKK3+zt7cHr9TZw8EzTWHw+H87Pz1Gva4vOlHPCQdVhs9nYrCqaEj84OMDCwoIGB2eQFl9dXQWV3s/PD2tpopR4f3+/gkOj9ucLKXHCMTs72xIH5zAsvra2hp2dnbY4pMSHhoaUZtErOxZsjoac7+/vY3p6Wremm0X5Wlh8Y2MD29vbQjhYXKhDR0ZGcHV1hYmJCWHXlEDI+dHRESYnJw0JC4kHg0FsbW3h9/eXn1Y4tsVCOG5ubuByuQy77ug8FovB7XZLCbcVD4VC2NzclMLB3HSxjI+PK9UxNjYm7bql82g0Ks2ZXeuKh8NhRCIRUzg4gQoLNcn19TWGh4dN4WDxRhNRVaTTaTidTkuEVVgODw+xvr5uCQ6Nc2qWfD7fcrHlCUZiN//49vYWdrsdZ2dnjb0ej8lGu8PhSPLkXC4Hj8eD+fl5S7irqoWS0B9KiKiRRFccNvc3NqqFBz4+PpBIJNDd3SDGQ4ajCgvPfnx8BLX+4uKiKfcaLJyAGokayujqw/MparDwYKFQUPBQBcl+dLGw2NPTEwYHB0E7WT4t8JhIbImFJ5M4Lc50kDJaPS2xsHipVAKtSDJ42mLhBM/PzxgYGMDy8rIhPB2xcIL/nYzLy0vMzMwIJ+iIhcXL5TLi8TjfCkUhLKz08vICeoKVlRUh98JYOAFt/LPZLObm5jomEMbC4pVKRakekR2YISyc4PX1FT09PaBzUbvmMuycE2QyGTw8PGhOzTxOUVq8Wq0qePgNRbMoX0th4clvb28KFr/fr4tH2jknOD09xf39vS4e0+KE5fj4WHdRN4WF3b+/vyvizS9yaMy0c05AeOjdVvM7F8vEqd6TySQ+Pz8bGytLsLB7wlMsFkHnKEr2D4q7O6Fty8QbAAAAAElFTkSuQmCC</resource>
|
|
<resource name="wizard_step_extra_rtl@2x.png" app="core" location="front" path="/">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</resource>
|
|
<resource name="wizard_step_large.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAAO4AAABuCAIAAACvPLitAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABLVJREFUeNrs3U1Lalscx/Gj5hHJokmDjAgLByk9EkUoRRMxp82aNJOiUVBDS5ReR28gCKM30aQnGkSTJkUIUrcnonTnXSRE1Dm7rXfQ+q/7/cwCaSBfFj+3D7upvb39F/DT9vb2gsFgtVpt+D94mpubeR7x4y4uLlKplNvtJmXIdn5+7vP5JiYmXl9fG/sPLgYGdKA6drlchUIhGo02VjOnMrRgWValUjk7O5udnVVNkzJku7y89Hg88Xi8gYOZlKGX/f39qampjo6Oeq9muHnuoJXn5+dMJqPGBqcyxLu6ulJH8uTkZF0zg5Sh6cyIxWKdnZ3OZwYDAzoql8tra2svLy+cyhCvWCyqgaFeAjqcGaQMfR0cHIyPj3d1dTmZGQwMaD0zMpnM4+OjkzdNOJWhtVKpVKlUpqenv50ZpAzdHR4eDg0NhUIh+5nBwIDu1KmczWbv7u7sZwanMgS4vr5+eHhIJBI2M4OUIcPR0dHg4GBPT8/fZgYDA2LYzwxOZYhxc3Nze3ubTCb/ODNIGZIcHx9Ho9FwOPx1ZjAwIEwulyuVSl9nBqcyhPnnTSqV+jQzSBnynJyc9Pb29vX1fZwZDAyItLGxUSwWP84MTmWIdH9/r1IeHR0NBAKkDNlOT09V0DMzM7XRzMCAVN3d3apjy7Jqf/LrRJBqc3MzkUi8p8ypDJHm5uaSyeR7x5zKECkUCu3u7ra2tnIxDoK5XK5sNtvW1vbpvWtShjDz8/MfJzIDAyKFw+GdnZ1AIMDHiSCYx+NR06KlpeWPn74nZYiRTqdtvnrNwIAMkUikUCj4fL6/PYBTGQK43e58Pu/3++0ew9ME/S0uLn57xx0GBnQ3MDCwvb3t9Xq/Obl5pqAzVXAul7OZyKQMGRYWFsbGxpz8Li0DA/oaGRnZ2tpqampy9NKQ5wt68vv9+Xz+9+/fDh9PytDU0tLS8PCw8zvrkDJ0pPaxSrmuW56RMrQTCATUtPj26hspQ3fLy8v9/f313huYlKGXWCyWTqcbuJsqKUOvaZHNZp3cRIeUobWVlZVoNFrvtCBl6CUejzc2LUgZGgkGg+vr642dx6QMjayurkYikf+Ssuvp6YnnET/O6/WqaeHkBsCcytCaZVn1vidCytDR6xuHH4IjZWhNDQz3G1KGCTU3fDCTMgyZGaQMQ2YGKcOQmUHKMGRmkDIMmRmkDENmBinDkJlByjBkZpAytFYul71er5PvlZAytFatVi3L8ng8pIz/y8wgZciYGer1n/3MIGWImRn2VzNIGTKolNWpbDMzSBmGzAxShiEzg5QhbGb8ersXJSlDvEqlolL+OjNIGYbMDFKGITODlGHIzCBlCJ4ZH2smZQieGSro99FMypCq9uZfbTeTMgRT53HtmyakDMFqly/ej2RShtRpoVL+9Pv4pAyR06L2mo+UYdS0IGUYMi1IGfLY3OeBlCFpIn+8+kbKMG1akDKETYtyuWzzAFKG+GlBypCh9nsu394wmJQh4Eh2cuNrUob4aUHKMGRakDIMmRakDEOmBSnDkGlByjBkWpAyDJkWpAxDpgUpw5BpQcowZFqQMgyZFqQMjbhcroanBSlDr2lhWVZj06LmXwEGAGVRHnPV+RzoAAAAAElFTkSuQmCC</resource>
|
|
<resource name="wizard_step_large@2x.png" app="core" location="front" path="/">iVBORw0KGgoAAAANSUhEUgAAAdwAAADcCAMAAADtCuBzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAYZQTFRF9/f3FRUV+Pj4/f39/Pz8+fn5+vr6+/v7GRkZ9fX18vLy9PT0Li4uISEhFxcX7u7uqKio9vb24uLi0tLSxMTEubm55OTk6+vr5ubmMTEx7+/vFhYWGxsbIyMjRUVFQEBAnZ2dr6+v0NDQa2tr2tra8/Pzvr6+NjY2XFxc7Ozs1tbWJSUlGhoag4ODHBwceXl5oKCgs7OzNDQ0jo6OT09Pc3NzREREJiYmZ2dnWVlZMDAwPj4+fn5+Hh4e8fHxysrKSUlJb29vZGRk4+PjlZWVmpqazc3NVVVVVFRUPz8/ioqKKCgora2t39/fiIiIk5OT/v7+yMjIwMDAOzs7tLS009PTLy8vKysrVlZWxsbGd3d3Ojo6IiIii4uL19fXZWVl3t7epaWl6enpUVFRkJCQV1dXoqKixcXFv7+/4eHhWlpalpaWHx8f7e3tcnJyS0tLhoaGrq6u8PDwkZGRh4eHJCQkcHBwqqqqjY2N1NTUYWFhwsLCo6OjX19f2dnZICAgSEhIdnZ2i7fVYwAAA3tJREFUeNrs3dVulFEAhdEDLdCpl7pBcZcWd3d3d3d3f3MuuCUkJJTM7K71CP8O5/BNR8okasjCgfI3PLBa0vDauLmW3jdurgM9xo3VusO4uYZuGDfX2TPGzbW/YtzcHrpi3Fwt842ba9NN4+Z6atxcW94ZN1fzVePmethk3NweWmXcXOs+GTfXjB7j5lpj3OAeajdurv4Pxs21odG4uVYZN7iH7hk3uIf6jJtrhXFzLZ9l3FwLvho318cB4+babdxch7qMm+t7j3GDe6hi3FgNh42ba2yucXN9eWLcXI+Mm2t4m3Fzbe8zbq7N84wba/C0cXMtmGvcXNfajJtrT8W4sd6cMG6uZ73GnSg95HlEaR01bq6xB8bNtb7RuLlWVowba0mncXPdGjBurqMV48Za+tm4sTZeMG6q1lkdxk31o8l/qFKt7ZVCqVq6vEIV61WTcVMtfOkPB7EVtNif/GK96DBuqouN3mYTW0F93iCX6nGX9y3Hul0xbqo7i3ycJFXzYh8Ei9Xu87mx3jYaN9XM6b42IdXvf1LXc4nw3vdQxdrQa9xU/Z2+HjDVYLtvbY21psm4E6qCjJtRQSd9DX6sg36dJNb5RcZN1dzpR6NSNaz0c2+x5nQYN9Wm635iNdVwtx9HjvXcb9bH2tdm3NgKml2MG2robjFubAUV46a6NN24qS53F+OGal1WjJtq9Vbjpjq3txg31PKRYtxU64txU506YtxU37qLcUM1LCvGja2gNuOmWjK7GDf1UB4pxg01uLMYN9RQ/y7jphoeLcZNdawQa2qdZ5Br2jTPIFfdFM8g1uS6yR5C7rVb7xnkqp/qGTiYqUFT9JAeQg9RZdfucdeuHkIPoYfQQ+gh/nAw1+uh5IPZtauH0EPoIfQQegg9pIdwMKOH0EOMKy9UOZjRQ1RbD9W7dvUQrl30EHoIBzN/Opj1UHAPuXb1EDXJwayH0EPoIfQQ/6KHPAM9hB5CD6GH0EM4mPUQegjXLlVw63qXun+4KF38Z5n/wKvLOggXLlVUQV57VEE4lKmmCnIoqyBUEFV0KHsGKggVhApi/C9cXzSmglBBqCBUECoIFaSCUEGoIFQQKggVpIJUkEOZ2tvWB3FVECoIFy4qCBWEQ3li8bcgFYQKwoWLCkIF4VBWQaggVBAuXFQQKsih7FDO3dY74lTQLz8FGACZ7e8NtshNNgAAAABJRU5ErkJggg==</resource>
|
|
<resource name="wizard_step_large_rtl.png" app="core" location="front" path="/">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</resource>
|
|
<resource name="wizard_step_large_rtl@2x.png" app="core" location="front" path="/">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vA8BAgQIECDQnUBPgRslQA8//HD64osvutu7tQgQIECAAIGGQE+B++abb6ZXXnkFHQECBAgQINCjQNdlQXv27EmXX365iQl6BLY6AQIECBAIga6ucCcnJ9OaNWuErTFDgAABAgQyCnQM3CgB2rJlS9q6dWvGQ9iMAAECBAgQ6HhLedeuXWnFihUpXnThQ4AAAQIECGQTmPUKN0p/7r33XmGbzdZWBAgQIEDgiEDbwI1byZs2bUo7d+48srIvBAgQIECAQDaBtoEbz203b96cba+2IkCAAAECBP4j0DZwTzvttHTMMcf8Z2U/ECBAgAABAtkE2gbuueeemyYmJtLIyEi2PduKAAECBAgQOCLQNnAjaK+66qq0bNmyIyv7QoAAAQIECGQT6FgWFJMVXHHFFembb77JdgRbESBAgAABAp3fNLVkyZK0YcOGtGjRIlwECBAgQIBARoG2t5Sn7y+e5958883TF/lOgAABAgQI9CDQVeCOjY2l22+/PZ1zzjk97NqqBAgQIECAQFOgq8CNlRcvXty4tXzsscc2t/U/AQIECBAg0KVA14Eb+zv11FMbswZ1uW+rESBAgAABAv8K9BS4USoUZULLly8HSIAAAQIECPQg0LEsqNW+9u7d25hBSKlQKx3LCBAgQIDA/xfo6Qq3ufnxxx/feJ67cOHC5iL/EyBAgAABArMIZArc2N95552XVq1aNcuu/YoAAQIECBBoCmQO3NHR0bR69ep01llnNfflfwIECBAgQKCNQObAjf0dffTR6bHHHktLly5ts3uLCRAgQIAAgRCYU+DGDmIav3vuuSe++hAgQIAAAQJtBOYcuLHf8fHxdNlll7U5hMUECBAgQIBAprKgVmw//PBDWrlyZfr2229b/doyAgQIECBQa4G+XOGG4IknnpjWrVtnVqFaDyedJ0CAAIF2An0L3DjARRddlG688cZ2x7KcAAECBAjUVqCvgRuKt912Wzr77LNrC6rjBAgQIECglUDfAzcmrF+/fn067rjjWh3PMgIECBAgUEuBvgduKJ5++unp7rvvriWoThMgQIAAgVYCAwncONC1116brrzyylbHtIwAAQIECNROoG9lQa3klAq1UrGMAAECBOooMLAr3MCMUqEHH3xQqVAdR5Y+EyBAgMB/BAYauHGkCy64IF1//fX/OagfCBAgQIBA3QQGHrgBetdd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</resource>
|
|
<resource name="default_photo.png" app="core" location="global" path="/">iVBORw0KGgoAAAANSUhEUgAAAJYAAACWCAMAAAAL34HQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAV9QTFRF4eHh/v7+8/Pz7u7u9PT08vLy9fX1+/v7/f39+vr6nZ2c9vb2ysrK19fX7+/vsLCw09PT/Pz8tbW16enp0dHQ+fn5l5eW8PDw6+vr5+fn9/f3xMTDn5+erKyslJST3Nzc3d3d7OzspqamwsLB7e3tq6uriIiIpaWk6urq5OTjwsLCw8PD2NjYu7u7kJCQ39/fwMDA4ODgqKioyMjI5eXkpqallZWU2trat7e26OjotLS08fHxx8fH+Pj4kZGR1tbWzMzMoaGh2dnZqqqqubm51NTTmZmZxsbG4uLip6enb29vqKin7+/u0tLSsLCvqqqpsrKx2NjXo6Ojtra1uLi3s7OzpKSj5ubmk5OTp6emrq6t1dXV29vbz8/P+Pj37u7thoaGbW1swMC/09PS1dXUvr69uLi4h4eHxcXEr6+v9PTzgIB/v7+/srKy6enovLy8kpKS8fHw6urp////NTU1WNCliQAAA99JREFUeNrs2glT2kAUwHESCIaA3AiiIAgIeF/1vm9rPapV69X7vtuX7z91OqOjLZB9Ifs2ncn/E/xmA5uXbFy6LXM5LIflsByWw3JYDsthOSyH5bAclsP6X1kd8Zj7pnDcHqzuxZiclm/zy6dvlsWzpmLwT0p8Xyyrc8UHtZIHRLJ68xLULhFbPxTEKof90CClTwgrVITGeYYFsNqqYJS3QM+aewbGrl5qVocfGGriOppi9TGprl0DlKwORhVAOyErxKwC3wc6Vj+wN03GOvAiWN4ZKtaFhGB9WiNiZWSEClpeE7H6AFVyj4ZVwLHUXRrWMI4FkzSsSZxK6idh7aSRqzVEwjpvQbLkEAVr1YdktcyRsBJY1hUFqy+CZEntGwQsF2BZvzQCVgzLinRRXMR29Gq125IFyR1bsh6dEbC+4VndBKxLNMtNwZryoVkPCFijCXuy8KtVJmDtYycICFKsVqeC3re2KabTJewu76LY5fUv2MEmQMJ6hWR5SKZT/TvyGpoaIPCsjWmc6zHRO4i5iC1ZnW4Uq5WI1ZZyWAhW3mEhWkTtW3Eq1jFmh0iuUrG0III1TndcEMCweuhOMTC3xM9kLMQxhmeK7iLqOWaWUiJkXTGfGBQ3CFndCtfR1CwrW2FkVdooWXohwnM0Nc2aYHv7poZpWfow01NsMEPMGqwyqCL9OjFL72BYLs8TclaW4ddl9ui1CZY+xsCK0rMOErZk6V2SLVkzXluyFk4N/4lfBbBOnhvdelJPBbDCRr8ttVWnZ5VnDW/UFQGrFeY4bZlnlVi+tDF/9zHL2mWam+V3tKyTJOO5fm+WkrXO/qa5GtWoWFEP5u2Itz+89p6AtYf6WOoPbXbyjDurCiby5QY0rqwlH5hLCWjcWEdBMN98PMuHFZWhqYLhtaz1rGMPNF2w0GMxK2CB6rrUqJWszTxYlHvbOtYlWJd7wCJWZggsbWTQCtZYAoDOxcjKVFSwPNdCk6zMLPBoqDlW6ScXFajnzbA2k8CpnHlW7zRwa77bLGtdBY4dmWOVViSeKhgzw9JyaeBb8AWe9bYI3CtjWaEVlb8KLpAsRaVQwfwhhhXIA1Hxh+ysViBL1lhZgXEgrPUlG6sApPk0Jpam0rJgkYnlIVZBetmYhf9Sksuf8W+Wn14FngUjlixABVLIgLUMQlIMWEExLPjRmCVIBamGLEUUC3oasJaEqf55NLvLiohjSfVZnSCwwbosRSQrVY8VAqFt12H5xLISdVgguImarI+iWemarKJo1r0t9ZYlCWdt1mIJV917q3TDmqgzcoxsubi2tTVyM6X777B+CzAAjxjwvjOu0LUAAAAASUVORK5CYII=</resource>
|
|
<resource name="flags16.png" app="core" location="global" path="/">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</resource>
|
|
<resource name="flags32.png" app="core" location="global" path="/">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4zz++OOMHz+elpYWZsyYwaJFiwqe24P5IpVKcf/997P//vuzevVqpk2bRl1dHQcccED2HNXWRnrJErwtW0BprIkTCR14AObIkQBMnjyZAw44gEgkwo4dO2hsbOS///0vEyZMYMyYMT2mYR5C8sILL7BkyRKam5uZPXs27733Hr/73e+oyLA5J597ntiDD6Da2rL+HUphVFZSfs45VJxzTrbyO+64AyEE9fX1TJw4kZEjR3LRRRdll39CiNk9uuCkk07itNNOY/z48bzzzjtccMEFXTd//nna//B7VHNz9sadZGoqGqXjxhuJ//vf2bqOOuooXn31VSZNmsSBBx7IxRdf3GPt2StG1NHRwSuvvMJZZ/ki6jKRYNell6I62qEbZ0lYS0wUWirSVohRd92FNWECAM888wzz5s1j4sSJBTGiokGqbQteRv7o25idNG/Cj6QIKo+3Q5NYbIxjvI5xYutiRl95BRVf/krxIFUx5bVVbRyRTGIaRhaVi2ibG0JHcKc4JEM+IXjWquLmlasoNhulaAMWebU0JMbxJXctOgP4/Ss4jz8Ycwm0xzAygOAzyTG85EouGIgBxQirHTZvDJ+LnMji4AzmyGaWm6NZEJyJKX0iik63VroOsXmHFwdU0YfwektLC7feemv2708cO4OJE2p4RO/NL8PH8nhgdnYWKKVRSuO6kkhFmFPOOix73d///nfWr1/ftwHdpedff/11fvKTn3Dffffxz3/+08eNyoP87scfR7tpSMcJKhudybpQWuN4Ejua5kdf/xiTJtYB8PLLL3PDX/7CH//0J/6dMz1z75nlHwgGfbfsrrvu4sUXX6SxsZEDDjiAZ599lldffZURI/wo+wefXsF3fv0sO7e15zG1VtSW8cOvHsP/XNmlCvSdb38HBLz77rvMmjWLCRMmcO2112aFVkOhkD8NU6lUfTgczj6KjznmGD7+8Y8zbtw4tmzZwsaNG3n44Ye7uqctyX9eWcfSlTuQSrH3tJGcfsLeTB7f9Wb/9re/zbhx4xgxYgS7du3i3nvv5dlnn80+D1KpFGVlZb4BiUSiPhcfeOaZZ7j22ms59dRTWb16NatXr+anP/0pZ599dlEje+HChVx88cUcffTRhEIh9t13X6ZNm8app56a97qvqKjwH8WdyQad5dRTT+Xwww9nyZIlbN++na997WvMmzev6Lfh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</resource>
|
|
<resource name="twitter.png" app="core" location="global" path="/login/">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</resource>
|
|
<resource name="resizable.png" app="core" location="global" path="/">iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAEJGlDQ1BJQ0MgUHJvZmlsZQAAOBGFVd9v21QUPolvUqQWPyBYR4eKxa9VU1u5GxqtxgZJk6XtShal6dgqJOQ6N4mpGwfb6baqT3uBNwb8AUDZAw9IPCENBmJ72fbAtElThyqqSUh76MQPISbtBVXhu3ZiJ1PEXPX6yznfOec7517bRD1fabWaGVWIlquunc8klZOnFpSeTYrSs9RLA9Sr6U4tkcvNEi7BFffO6+EdigjL7ZHu/k72I796i9zRiSJPwG4VHX0Z+AxRzNRrtksUvwf7+Gm3BtzzHPDTNgQCqwKXfZwSeNHHJz1OIT8JjtAq6xWtCLwGPLzYZi+3YV8DGMiT4VVuG7oiZpGzrZJhcs/hL49xtzH/Dy6bdfTsXYNY+5yluWO4D4neK/ZUvok/17X0HPBLsF+vuUlhfwX4j/rSfAJ4H1H0qZJ9dN7nR19frRTeBt4Fe9FwpwtN+2p1MXscGLHR9SXrmMgjONd1ZxKzpBeA71b4tNhj6JGoyFNp4GHgwUp9qplfmnFW5oTdy7NamcwCI49kv6fN5IAHgD+0rbyoBc3SOjczohbyS1drbq6pQdqumllRC/0ymTtej8gpbbuVwpQfyw66dqEZyxZKxtHpJn+tZnpnEdrYBbueF9qQn93S7HQGGHnYP7w6L+YGHNtd1FJitqPAR+hERCNOFi1i1alKO6RQnjKUxL1GNjwlMsiEhcPLYTEiT9ISbN15OY/jx4SMshe9LaJRpTvHr3C/ybFYP1PZAfwfYrPsMBtnE6SwN9ib7AhLwTrBDgUKcm06FSrTfSj187xPdVQWOk5Q8vxAfSiIUc7Z7xr6zY/+hpqwSyv0I0/QMTRb7RMgBxNodTfSPqdraz/sDjzKBrv4zu2+a2t0/HHzjd2Lbcc2sG7GtsL42K+xLfxtUgI7YHqKlqHK8HbCCXgjHT1cAdMlDetv4FnQ2lLasaOl6vmB0CMmwT/IPszSueHQqv6i/qluqF+oF9TfO2qEGTumJH0qfSv9KH0nfS/9TIp0Wboi/SRdlb6RLgU5u++9nyXYe69fYRPdil1o1WufNSdTTsp75BfllPy8/LI8G7AUuV8ek6fkvfDsCfbNDP0dvRh0CrNqTbV7LfEEGDQPJQadBtfGVMWEq3QWWdufk6ZSNsjG2PQjp3ZcnOWWing6noonSInvi0/Ex+IzAreevPhe+CawpgP1/pMTMDo64G0sTCXIM+KdOnFWRfQKdJvQzV1+Bt8OokmrdtY2yhVX2a+qrykJfMq4Ml3VR4cVzTQVz+UoNne4vcKLoyS+gyKO6EHe+75Fdt0Mbe5bRIf/wjvrVmhbqBN97RD1vxrahvBOfOYzoosH9bq94uejSOQGkVM6sN/7HelL4t10t9F4gPdVzydEOx83Gv+uNxo7XyL/FtFl8z9ZAHF4bBsrEwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAG5JREFUGBmNkEEKwCAMBGNpHmEu+v9XeWofkUPKFgKSqlUQWZ1k1yQzo79Va82qeh27IDPLEvaOAFtr9xSOIBKcoxgRdP3p7A9u3WvCNHyXUrKIGE7cRb0NovjN3Fvh1zOdYIWBjzLGQuozwmqlH9DqmGh6XUGCAAAAAElFTkSuQmCC</resource>
|
|
<resource name="select_dropdown.png" app="core" location="global" path="/">iVBORw0KGgoAAAANSUhEUgAAACQAAAASCAYAAAAzI3woAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAehJREFUeNrMlr+OAVEUxt3JJujIxp8CBb1GYbTESDzB9grNJvsI4h22UdhiH2KLQbeJmYRmCx3VFgYJokA2Ye8nc5JrFmsGiZPIcN17zm++853JsO1267qnkKwLvV7vabFYPDpNiLPI4fQ8ExVqNBqvhmHIXq/XyGazZb/f/20n2Xw+DzWbzbflchnioeXz+WfHQKqq1kajUYoxlsIah/rI5XJln893FtRsNotwmPp6vVbwm+foBgKBbqFQKNtuWafTeRmPx0nA7CgZc/G7LLZardp0Oo3YhTFzpCaTSRK5bQMFg8EuIMT2CVB1FDwFA3ARxlRol4O3TrcNFIvFPmVZrkiSpFmhVquVgoKHoEzP1AFOEPThZ7V0Ol2JRqOaY1P3+31F1/XqZrORCYgKeTwelXuqREYHDB+CdyhDOWg/YHCD8XhcvWjKEIPBQNE07SAUGZ2v/ZjTVLTuIZhEIqFePPYiVLvdrvL/ZCpG4Xa7qZV7XsEVLXeqzEkgah+U4l9lsejeYWENMPCMU2WOPqkpkDiTyVTQAhHAOknXhDkJhID0KAQomp4/EpvTdA0YxMN/G6gQpg+eupUyZykkQsGspNStYM5SSGwfrjA6oC6dJttTdiyGw2ES13A4/HWL9yF2by9ovwIMACrdSkZmsK6qAAAAAElFTkSuQmCC</resource>
|
|
<resource name="select_dropdown_rtl.png" app="core" location="global" path="/">iVBORw0KGgoAAAANSUhEUgAAACQAAAASCAYAAAAzI3woAAAAAXNSR0IArs4c6QAAActpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgSW1hZ2VSZWFkeTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KKS7NPQAAAhRJREFUSA3dlr1qwlAUx5NAUcEtYEECguDqIvg1Oly1T9CpQzt0KfQRxHfo4tDXqJBBl6KJ4OoiOHUJ6iKCumjvP+Skt7etTfzo0APhfp3zv7+ckyMqyn+x0Wh0vVgs9EPfB7HQkONVeSPI2jTNJ8dxirFYzKnVarfxeNwJEkc+8/nc6Ha7rdVqdcnNYow90FlooHa73ZrNZjlVVXMQiUQiZqVSudN1/Y1E940CzBXXUHa73TCRSAyr1eo94rR9wfLZYDB45IJZgsH5ZrNhnU7nGRfJ/vJahsE5tKbTaRbaWIcCSiaTtvdWiPUNUCjBPiicAZyXyc0MBfMMAUrhpRtiLxSQYRhWPp9vcAELQvRACBfhwuVyeYm1aJSZ9XrNcDkZ4jVNs0qlUiOVSr1i/+OUvAKMk8mE9fv9Jhcswh3CMFyGb6per9/Qh06ZEWHIHzB4wUwmY7oC0KBJ2HE8HjPbtl0oemu6iHffC7qPl/LC6ya/TORDmUmn0z4MGA4GQjBlarvdFgGFywguGo26aw4FV988H6tcLjdkGDgdBQQBZIp3SBNQrqAHhjmZBGsVCoVPZSI/jEcDQUSGwh4ZZQyZ+alM5IsxVJeJgeIcHyV1n7iPOUCoTPD5rkxizEkyRIJypig7fPzSTRQjjycFgrgMFaRMItTJgSCO7uv1ek1kCD96v5VJBDrbnP8byOI52wV/JfwON8c5TBbJf4UAAAAASUVORK5CYII=</resource>
|
|
<resource name="tooltip_bottom.png" app="core" location="global" path="/stems/">iVBORw0KGgoAAAANSUhEUgAAABUAAAAFCAMAAACdH1c/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFMzMz////Iyh/xwAAAAJ0Uk5T/wDltzBKAAAAI0lEQVR42mJghAMGbEwGBgZMUQYGJGEGZEG4MAOKIEwYIMAAE1YAUSBeED4AAAAASUVORK5CYII=</resource>
|
|
<resource name="tooltip_left.png" app="core" location="global" path="/stems/">iVBORw0KGgoAAAANSUhEUgAAAAUAAAANCAMAAABW4lS6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFMzMz////Iyh/xwAAAAJ0Uk5T/wDltzBKAAAAI0lEQVR42mJgBAEGCMkAIRkgJAOEZICQDAg2Qg2SXjAJEGAABlIAKWUBWoMAAAAASUVORK5CYII=</resource>
|
|
<resource name="tooltip_right.png" app="core" location="global" path="/stems/">iVBORw0KGgoAAAANSUhEUgAAAAUAAAANCAMAAABW4lS6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFMzMz////Iyh/xwAAAAJ0Uk5T/wDltzBKAAAAJElEQVR42mJgBAEGBMnAACYYwAQDmIACCBsqDlUDVQ8zASDAAAZ6ACmQ3ocdAAAAAElFTkSuQmCC</resource>
|
|
<resource name="tooltip_top.png" app="core" location="global" path="/stems/">iVBORw0KGgoAAAANSUhEUgAAABUAAAAFCAMAAACdH1c/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFMzMz////Iyh/xwAAAAJ0Uk5T/wDltzBKAAAAJElEQVR42mJgBAMGGIByGVGEGVFFGZEFEaKMSIJIoshMgAADAA/mAFFggg13AAAAAElFTkSuQmCC</resource>
|
|
</theme>
|