Version 5.0.0 beta 6
This commit is contained in:
1 parent
57d9db6ce2
commit
fa2a720105
115 files changed
+1823
-1147
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<language>
|
||||
<app key="core" version="5000031">
|
||||
<app key="core" version="5000032">
|
||||
<word key="__app_core" js="0">System</word>
|
||||
<word key="__indefart_personal_conversation" js="0">a personal conversation</word>
|
||||
<word key="__indefart_personal_conversation_message" js="0">a message in a personal conversation</word>
|
||||
@@ -3500,6 +3500,7 @@
|
||||
<word key="modperms__core_Reports" js="0">Reports</word>
|
||||
<word key="can_view_reports" js="0">Can view reports?</word>
|
||||
<word key="can_manage_sidebar" js="0">Can use Block Manager?</word>
|
||||
<word key="can_use_theme_editor" js="0">Can use Theme Editor?</word>
|
||||
<word key="can_moderator_be_ignored" js="0">Can be ignored?</word>
|
||||
<word key="can_moderator_be_ignored_desc" js="0"><![CDATA[Additional to this moderator restriction, you can also disallow people to ignore members via a <a href='{internal.admin.app=core&module=members&controller=groups&searchResult=can_be_ignored}'>group setting.</a>]]></word>
|
||||
<word key="add_moderator" js="0">Add Moderator</word>
|
||||
@@ -7190,9 +7191,9 @@
|
||||
<word key="profile_complete_no_add" js="0">All available profile completion steps have been used. To create new profile completion steps, please delete existing steps, or edit them to remove methods.</word>
|
||||
<word key="acplog__quick_register_enabled" js="0">Quick registration enabled</word>
|
||||
<word key="acplog__profile_step_added" js="0">Profile step added: %s</word>
|
||||
<word key="enhancements__core_FacebookPixel" js="0">Facebook Pixel</word>
|
||||
<word key="enhancements__core_FacebookPixel_desc" js="0">The Facebook pixel is used to report conversions, optimize advert delivery, build audiences and get rich insights about how people are using your website.</word>
|
||||
<word key="fb_pixel_id_req" js="0">You need to enter your Facebook Pixe ID</word>
|
||||
<word key="enhancements__core_FacebookPixel" js="0">Meta Pixel</word>
|
||||
<word key="enhancements__core_FacebookPixel_desc" js="0">The Meta pixel is used to report conversions, optimize advert delivery, build audiences and get rich insights about how people are using your website.</word>
|
||||
<word key="fb_pixel_id_req" js="0">You need to enter your Meta Pixel ID</word>
|
||||
<word key="fb_pixel_id" js="0">Pixel ID</word>
|
||||
<word key="fb_pixel_enabled" js="0">Enable</word>
|
||||
<word key="fb_pixel_delay" js="0">Delay</word>
|
||||
|
||||
@@ -24340,6 +24340,18 @@
|
||||
"auto_increment": false,
|
||||
"binary": false
|
||||
},
|
||||
"chart_favorite": {
|
||||
"name": "chart_favorite",
|
||||
"type": "TINYINT",
|
||||
"length": null,
|
||||
"decimals": null,
|
||||
"values": null,
|
||||
"allow_null": false,
|
||||
"default": 0,
|
||||
"comment": "",
|
||||
"unsigned": false,
|
||||
"auto_increment": false
|
||||
},
|
||||
"chart_timescale": {
|
||||
"name": "chart_timescale",
|
||||
"type": "ENUM",
|
||||
@@ -25898,36 +25910,6 @@
|
||||
"zerofill": false,
|
||||
"auto_increment": false,
|
||||
"binary": false
|
||||
},
|
||||
"chart_favorite": {
|
||||
"name": "chart_favorite",
|
||||
"type": "TINYINT",
|
||||
"length": null,
|
||||
"decimals": null,
|
||||
"values": null,
|
||||
"allow_null": false,
|
||||
"default": 0,
|
||||
"comment": "",
|
||||
"unsigned": false,
|
||||
"auto_increment": false
|
||||
},
|
||||
"chart_timescale": {
|
||||
"name": "chart_timescale",
|
||||
"type": "ENUM",
|
||||
"length": null,
|
||||
"decimals": null,
|
||||
"values": [
|
||||
"hourly",
|
||||
"daily",
|
||||
"weekly",
|
||||
"monthly",
|
||||
"none"
|
||||
],
|
||||
"allow_null": true,
|
||||
"default": null,
|
||||
"comment": "",
|
||||
"unsigned": false,
|
||||
"auto_increment": false
|
||||
}
|
||||
},
|
||||
"indexes": {
|
||||
|
||||
+158
-168
@@ -5763,7 +5763,7 @@
|
||||
<li>
|
||||
<a href='#' class='ipsButton ipsButton--soft ipsButton--small' data-ipsMenu id='elEditorAttach_media{expression="md5($name)"}'>{lang="editor_attach_other"} <i class='fa-solid 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>
|
||||
<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>
|
||||
</ul>
|
||||
</li>
|
||||
{{endif}}
|
||||
@@ -6636,7 +6636,7 @@
|
||||
{{if !\IPS\Request::i()->isAjax() }}</div>{{endif}}]]></template>
|
||||
<template template_group="forms" template_name="postingInformation" template_data="$guestPostBeforeRegister, $modQueued, $standalone=false" template_location="front" template_app="core"><![CDATA[{{if !member.member_id}}
|
||||
{{if !$standalone}}
|
||||
<div class='cGuestTeaser'>
|
||||
<div class='cGuestTeaser i-margin-bottom_3'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="guest_post_header"}</h2>
|
||||
{{endif}}
|
||||
<p>
|
||||
@@ -6651,7 +6651,6 @@
|
||||
{{endif}}
|
||||
</p>
|
||||
{{if !$standalone}}
|
||||
<hr class="ipsHr i-margin-block_3">
|
||||
</div>
|
||||
{{endif}}
|
||||
{{elseif $modQueued}}
|
||||
@@ -6889,37 +6888,37 @@
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</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='ipsComposeArea i-padding_3' {{if \IPS\Member::loggedIn()->member_id}}data-controller='core.front.core.reviewForm'{{endif}}>
|
||||
<div class='ipsComposeArea__photo'>{template="userPhoto" group="global" app="core" params="\IPS\Member::loggedIn(), 'fluid'"}</div>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<form accept-charset='utf-8' class="ipsFormWrap ipsFormWrap--review" 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( mt_rand() )"}">
|
||||
{{endif}}
|
||||
{{if !isset( \IPS\Request::i()->_review ) and \IPS\Member::loggedIn()->member_id}}
|
||||
<div data-role='reviewIntro'>
|
||||
<h3 class="i-margin-bottom_2"><strong class="i-color_hard i-font-weight_600">{lang="review_intro_1" sprintf="\IPS\Member::loggedIn()->name"}</strong> <span class='i-color_soft i-font-weight_500'>{lang="review_intro_2"}</span></h3>
|
||||
<a href='#' class='ipsButton ipsButton--primary ipsButton--small ipsJS_show' data-action='writeReview'><i class="fa-regular fa-pen-to-square"></i><span>{lang="write_a_review"}</span></a>
|
||||
</div>
|
||||
{{endif}}
|
||||
<ul class='ipsForm ipsForm--vertical ipsForm--review {{if !isset( \IPS\Request::i()->_review ) and \IPS\Member::loggedIn()->member_id}}ipsJS_hide{{endif}}' data-role='reviewForm'>
|
||||
{{foreach $elements as $collection}}
|
||||
{{foreach $collection as $input}}
|
||||
{$input|raw}
|
||||
{{endforeach}}
|
||||
<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="ipsComposeAreaWrapper">
|
||||
<div class='ipsComposeArea ipsComposeArea--review' {{if \IPS\Member::loggedIn()->member_id}}data-controller='core.front.core.reviewForm'{{endif}}>
|
||||
<div class='ipsComposeArea__photo'>{template="userPhoto" group="global" app="core" params="\IPS\Member::loggedIn(), 'fluid'"}</div>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<form accept-charset='utf-8' class="ipsFormWrap ipsFormWrap--review" 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}}
|
||||
<li class='ipsFieldRow'>
|
||||
<div class='ipsFieldRow__content'>
|
||||
<button type='submit' class='ipsButton ipsButton--primary'>{lang="add_review"}</button>
|
||||
{{if $uploadField}}
|
||||
<input type="hidden" name="MAX_FILE_SIZE" value="{$uploadField}">
|
||||
<input type="hidden" name="plupload" value="{expression="md5( mt_rand() )"}">
|
||||
{{endif}}
|
||||
{{if !isset( \IPS\Request::i()->_review ) and \IPS\Member::loggedIn()->member_id}}
|
||||
<div data-role='reviewIntro'>
|
||||
<h3 class="i-margin-bottom_2"><strong class="i-color_hard i-font-weight_600">{lang="review_intro_1" sprintf="\IPS\Member::loggedIn()->name"}</strong> <span class='i-color_soft i-font-weight_500'>{lang="review_intro_2"}</span></h3>
|
||||
<button type="button" class='ipsButton ipsButton--primary ipsButton--small' data-action='writeReview'><i class="fa-regular fa-pen-to-square"></i><span>{lang="write_a_review"}</span></button>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
{{endif}}
|
||||
<ul class='ipsForm ipsForm--vertical ipsForm--review' data-role='reviewForm' {{if !isset( \IPS\Request::i()->_review ) and \IPS\Member::loggedIn()->member_id}}hidden{{endif}}>
|
||||
{{foreach $elements as $collection}}
|
||||
{{foreach $collection as $input}}
|
||||
{$input|raw}
|
||||
{{endforeach}}
|
||||
{{endforeach}}
|
||||
<li class='ipsSubmitRow'>
|
||||
<button type='submit' class='ipsButton ipsButton--primary'>{lang="add_review"}</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>]]></template>
|
||||
<template template_group="forms" template_name="reviewUnavailable" template_data="$lang, $warnings=array(), $ends=NULL" template_location="front" template_app="core"><![CDATA[
|
||||
@@ -6970,8 +6969,7 @@
|
||||
{$desc|raw}
|
||||
{$warning|raw}
|
||||
{{if $error}}
|
||||
<br>
|
||||
<span class="i-color_warning">{lang="$error"}</span>
|
||||
<div class="ipsFieldRow__warning">{lang="$error"}</div>
|
||||
{{endif}}
|
||||
</div>
|
||||
{{else}}
|
||||
@@ -6987,8 +6985,7 @@
|
||||
{$desc|raw}
|
||||
{$warning|raw}
|
||||
{{if $error}}
|
||||
<br>
|
||||
<span class="i-color_warning">{lang="$error"}</span>
|
||||
<div class="ipsFieldRow__warning">{lang="$error"}</div>
|
||||
{{endif}}
|
||||
</div>
|
||||
{{endif}}
|
||||
@@ -7786,7 +7783,7 @@
|
||||
<li class='ipsData__item'>
|
||||
<div class='ipsData__main'>
|
||||
<div class='i-flex i-align-items_center i-justify-content_space-between'>
|
||||
<a href='{$item->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $day['commentId'] ) )}' class='i-font-weight_600'>{datetime="$day['date']"}</a>
|
||||
<a href='{$item->shareableUrl( $day['commentId'] )}' class='i-font-weight_600'>{datetime="$day['date']"}</a>
|
||||
<span class='i-color_soft'>{lang="num_comments" pluralize="$day['count']"}</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -9380,40 +9377,42 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $comment->getVi
|
||||
{{endif}}]]></template>
|
||||
<template template_group="global" template_name="featuredComment" template_data="$comment, $id, $commentLang='__defart_comment'" template_location="front" template_app="core"><![CDATA[{{if isset( $comment['comment'] )}}
|
||||
{{$idField = $comment['comment']::$databaseColumnId;}}
|
||||
<div class='i-padding_3 ipsEntry ipsEntry--recommended' data-commentID='{$id}'>
|
||||
<div class='ipsColumns i-gap_3'>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class="ipsPhotoPanel i-margin-bottom_2">
|
||||
<div class='ipsEntry ipsEntry--simple ipsEntry--featuredComment' data-commentID='{$id}'>
|
||||
<header class="ipsEntry__header">
|
||||
<div class="ipsEntry__header-align">
|
||||
<div class="ipsPhotoPanel">
|
||||
{template="userPhoto" app="core" group="global" params="$comment['comment']->author(), 'fluid', $comment['comment']->warningRef()"}
|
||||
<div class="ipsPhotoPanel__text">
|
||||
<div class="ipsPhotoPanel__primary">{template="userLink" app="core" group="global" params="$comment['comment']->author(), $comment['comment']->warningRef()"}</div>
|
||||
<div class="ipsPhotoPanel__secondary"><a href="{$comment['comment']->url()}" title='{lang="go_to_this_comment" sprintf="\IPS\Member::loggedIn()->language()->get( $commentLang )"}' rel="nofollow" data-action='goToComment'>{$comment['comment']->dateLine()|raw}</a></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='ipsRichText ipsTruncate_2'>{$comment['comment']->truncated( TRUE )|raw}</div>
|
||||
{{if $comment['note']}}
|
||||
<div class='ipsEntry__recommendedNote'>
|
||||
<p class='ipsRichText'>{$comment['note']}</p>
|
||||
{{if isset( $comment['featured_by'] )}}
|
||||
<p class='i-color_soft i-margin-top_2 i-link-color_inherit'>{lang="recommended_by" htmlsprintf="$comment['featured_by']->link()"}</p>
|
||||
{{endif}}
|
||||
</div>
|
||||
{{elseif isset( $comment['featured_by'] )}}
|
||||
{lang="recommended_by" htmlsprintf="$comment['featured_by']->link()"}
|
||||
{{endif}}
|
||||
</div>
|
||||
<div class='i-basis_auto i-align-self_center'>
|
||||
{{if \IPS\IPS::classUsesTrait( $comment['comment'], 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
|
||||
</header>
|
||||
<div class='ipsEntry__post'>
|
||||
<div class='ipsRichText ipsTruncate_2'>{$comment['comment']->truncated( TRUE )|raw}</div>
|
||||
{{if \IPS\IPS::classUsesTrait( $comment['comment'], 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
|
||||
<div class='i-margin-top_2 i-flex'>
|
||||
{template="reactionOverview" group="global" app="core" params="$comment['comment']"}
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
{{endif}}
|
||||
{{if $comment['note']}}
|
||||
<div class='ipsEntry__recommendedNote'>
|
||||
<p>{$comment['note']}</p>
|
||||
{{if isset( $comment['featured_by'] )}}
|
||||
<p class='i-font-style_italic i-color_soft i-margin-top_1 i-link-color_inherit'>{lang="recommended_by" htmlsprintf="$comment['featured_by']->link()"}</p>
|
||||
{{endif}}
|
||||
</div>
|
||||
{{elseif isset( $comment['featured_by'] )}}
|
||||
{lang="recommended_by" htmlsprintf="$comment['featured_by']->link()"}
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="global" template_name="featuredComments" template_data="$comments, $url, $titleLang='recommended_replies', $commentLang='__defart_comment'" template_location="front" template_app="core"><![CDATA[
|
||||
<section data-controller='core.front.core.recommendedComments' data-url='{$url}' class='ipsBox ipsRecommendedComments {{if !\count( $comments )}}ipsHide{{endif}}'>
|
||||
<template template_group="global" template_name="featuredComments" template_data="$comments, $url, $titleLang='recommended_replies', $commentLang='__defart_comment', $ipsBox=true" template_location="front" template_app="core"><![CDATA[
|
||||
<section data-controller='core.front.core.recommendedComments' data-url='{$url}' class='{{if $ipsBox}}ipsBox ipsBox--featuredComments{{endif}} ipsRecommendedComments {{if !\count( $comments )}}ipsHide{{endif}}'>
|
||||
<div data-role="recommendedComments">
|
||||
<header class='ipsBox__header'>
|
||||
<header class='{{if $ipsBox}}ipsBox__header{{else}}ipsTitle ipsTitle--h5 i-padding_2 i-flex i-align-items_center i-justify-content_space-between{{endif}}'>
|
||||
<h2>{lang="$titleLang"}</h2>
|
||||
{template="carouselNavigation" group="global" app="core" params="'topic-featured-posts'"}
|
||||
</header>
|
||||
@@ -9879,6 +9878,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $comment->getVi
|
||||
{template="favico" app="core" group="global" location="front" params=""}
|
||||
</head>
|
||||
<body data-ips-hook="body" class='ipsApp ipsApp_front {{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']}' {{if isset( \IPS\Request::i()->id )}}data-pageID='{expression="(int) \IPS\Request::i()->id"}'{{endif}} {{if isset( \IPS\Dispatcher::i()->dispatcherController ) AND !\IPS\Dispatcher::i()->dispatcherController->isContentPage }}data-nocontent{{endif}} {{if output.pageName}}data-pageName="{expression="output.pageName"}"{{endif}}>
|
||||
<a href='#ipsLayout__main' class='ipsSkipToContent'>{lang="jump_to_content"}</a>
|
||||
{theme="headerHtml"}
|
||||
{{if settings.googletag_enabled AND !(settings.core_datalayer_use_gtm AND settings.core_datalayer_enabled)}}
|
||||
{setting="googletag_noscript_code"}
|
||||
@@ -9894,7 +9894,6 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $comment->getVi
|
||||
{{endif}}
|
||||
<div class='ipsLayout__app'>
|
||||
{template="announcementTop" app="core" group="global" params=""}
|
||||
<a href='#ipsLayout_main' class='ipsSkipToContent'>{lang="jump_to_content"}</a>
|
||||
<div data-ips-hook="mobileHeader" class='ipsMobileHeader ipsResponsive_header--mobile'>
|
||||
{template="logo" app="core" group="global" params="'mobile'"}
|
||||
{template="mobileNavHeader" app="core" group="global" params=""}
|
||||
@@ -10067,42 +10066,32 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $comment->getVi
|
||||
<div>
|
||||
<input type="hidden" name="csrfKey" value="{expression="\IPS\Session::i()->csrfKey"}">
|
||||
{{if \IPS\Login::registrationType() != 'disabled'}}
|
||||
<div class='i-text-align_center i-padding_3 cGuestTeaser'>
|
||||
<div class='i-text-align_center cGuestTeaser'>
|
||||
{{if $isReview}}
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="teaser_review_title_reg"}</h2>
|
||||
<p class='i-color_soft i-margin-top_2'>{lang="teaser_review_desc_reg"}</p>
|
||||
<h2 class='ipsTitle ipsTitle--h4'>{lang="teaser_review_title_reg"}</h2>
|
||||
{{else}}
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="teaser_title_reg"}</h2>
|
||||
<p class='i-color_soft i-margin-top_2'>{lang="teaser_desc_reg"}</p>
|
||||
<h2 class='ipsTitle ipsTitle--h4'>{lang="teaser_title_reg"}</h2>
|
||||
{{endif}}
|
||||
|
||||
<div class='ipsBox i-padding_3 i-margin-top_3'>
|
||||
<div class='ipsFluid i-basis_400'>
|
||||
<div class='cGuestTeaser_left'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="teaser_account"}</h2>
|
||||
<p class='i-color_soft i-margin-bottom_3'>{lang="teaser_account_desc"}</p>
|
||||
{{if \IPS\Login::registrationType() == 'redirect'}}
|
||||
<a href='{expression="\IPS\Settings::i()->allow_reg_target"}' class='ipsButton ipsButton--primary ipsButton--small' target="_blank" rel="noopener">
|
||||
{{else}}
|
||||
<a href='{url="app=core&module=system&controller=register" seoTemplate="register"}' class='ipsButton ipsButton--primary ipsButton--small' {{if \IPS\Login::registrationType() == 'normal'}}data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="sign_up"}'{{endif}}>
|
||||
{{endif}}
|
||||
{lang="teaser_account_button"}</a>
|
||||
</div>
|
||||
<div class='cGuestTeaser_right'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="teaser_signin"}</h2>
|
||||
<p class='i-color_soft i-margin-bottom_3'>{lang="teaser_signin_desc"}</p>
|
||||
<a href='{url="app=core&module=system&controller=login" seoTemplate="login" ref="(string) $item->url() . '#replyForm'"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-remoteVerify="false" data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton--primary ipsButton--small'>{lang="teaser_signin_button"}</a>
|
||||
</div>
|
||||
<div class='ipsFluid i-basis_260 i-margin-top_3'>
|
||||
<div>
|
||||
{{if \IPS\Login::registrationType() == 'redirect'}}
|
||||
<a href='{expression="\IPS\Settings::i()->allow_reg_target"}' class='ipsButton ipsButton--primary ipsButton--wide' target="_blank" rel="noopener">
|
||||
{{else}}
|
||||
<a href='{url="app=core&module=system&controller=register" seoTemplate="register"}' class='ipsButton ipsButton--primary ipsButton--wide' {{if \IPS\Login::registrationType() == 'normal'}}data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-title='{lang="sign_up"}'{{endif}}>
|
||||
{{endif}}
|
||||
{lang="teaser_account_button"}</a>
|
||||
</div>
|
||||
<div>
|
||||
<a href='{url="app=core&module=system&controller=login" seoTemplate="login" ref="(string) $item->url() . '#replyForm'"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-remoteVerify="false" data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton--secondary ipsButton--wide'>{lang="teaser_signin_button"}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class='i-text-align_center i-padding_3'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>{lang="teaser_title_noreg"}</h2>
|
||||
<p class='i-color_soft i-margin-top_2'>{lang="teaser_desc_noreg"}</p>
|
||||
<br>
|
||||
<br>
|
||||
<a href='{url="app=core&module=system&controller=login" seoTemplate="login" ref="(string) $item->url() . '#replyForm'"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-remoteVerify="false" data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton--secondary'>{lang="teaser_signin_button"}</a>
|
||||
<div class='i-text-align_center'>
|
||||
<h2 class='ipsTitle ipsTitle--h4'>{lang="teaser_title_noreg"}</h2>
|
||||
<p class='i-color_soft i-margin-top_1'>{lang="teaser_desc_noreg"}</p>
|
||||
<a href='{url="app=core&module=system&controller=login" seoTemplate="login" ref="(string) $item->url() . '#replyForm'"}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-remoteVerify="false" data-ipsDialog-title="{lang="teaser_signin_button"}" class='ipsButton ipsButton--primary i-margin-top_3'>{lang="teaser_signin_button"}</a>
|
||||
</div>
|
||||
{{endif}}
|
||||
</div>]]></template>
|
||||
@@ -13577,7 +13566,9 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
|
||||
{{endif}}
|
||||
{{endforeach}}
|
||||
{{endif}}
|
||||
{{if \count( $tags ) > 4}}
|
||||
{{if \count( $tags ) == 5}}
|
||||
{template="tag" group="global" app="core" params="$tags[4], $tagEditUrl"}
|
||||
{{elseif \count( $tags ) > 4}}
|
||||
<li class='ipsTags__more ipsJS_show'>
|
||||
<a href="#" class='ipsTags__tag' data-ipsMenu id='elTags_{$id}'>{lang="and_x_more" pluralize="\count( $tags ) - 4"} <i class="fa-solid fa-angle-down"></i></a>
|
||||
<div class='ipsHide ipsMenu ipsMenu_normal i-padding_2 cTagPopup' id='elTags_{$id}_menu'>
|
||||
@@ -31005,11 +30996,6 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
|
||||
}
|
||||
|
||||
/* Guest Sign In */
|
||||
.cGuestTeaser .ipsButton.ipsButton--primary {
|
||||
width: 100%;
|
||||
max-width: 350px;
|
||||
}
|
||||
|
||||
.cGuestTeaser_social {
|
||||
width: 250px;
|
||||
margin-bottom: 5px;
|
||||
@@ -31170,14 +31156,6 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
html[dir] .cGuestTeaser_left {
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
border-bottom: 2px solid var(--i-background_2);
|
||||
margin-bottom: 15px;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
|
||||
/* Reset guest teaser on mobile back to normal layout from tablet flex layout */
|
||||
.cGuestTeaser .ipsGrid {
|
||||
display: block !important;
|
||||
@@ -31321,7 +31299,6 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
|
||||
box-shadow: none;
|
||||
background: none;
|
||||
border-radius: 0;
|
||||
outline: max(var(--i-widget--bo-wi), 1px) solid var(--i-widget--bo-co);
|
||||
}
|
||||
|
||||
.cWidgetContainer--carousel::-webkit-scrollbar {
|
||||
@@ -37870,13 +37847,12 @@ a:has(.ipsBadge){
|
||||
min-height: max(34px,2em);
|
||||
min-width: max(34px,2.5em);
|
||||
border-radius: min(var(--i-design-radius), 6px);
|
||||
color: var(--i-co);
|
||||
touch-action: manipulation;
|
||||
}
|
||||
|
||||
@media (any-hover:hover){
|
||||
.ipsCarouselNav__button:hover{
|
||||
background: color-mix(in srgb, var(--i-co) 4%, transparent);
|
||||
background: color-mix(in srgb, currentColor 4%, transparent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37991,7 +37967,7 @@ a:has(.ipsBadge){
|
||||
|
||||
.ipsComposeArea{
|
||||
display: flex;
|
||||
gap: 1.3em;
|
||||
gap: 1.2em;
|
||||
}
|
||||
|
||||
.ipsComposeArea__photo{
|
||||
@@ -40666,7 +40642,7 @@ i-data{
|
||||
|
||||
.ipsData--mini-grid .ipsData__item{
|
||||
border-width: 0;
|
||||
outline: var(--i-data--border) solid var(--i-background_3);
|
||||
outline: var(--i-data--border) solid var(--i-data--bo-co);
|
||||
}
|
||||
|
||||
.ipsData--mini-grid .ipsData__title{
|
||||
@@ -42845,7 +42821,7 @@ a.ipsReact_reaction::after {
|
||||
}
|
||||
|
||||
.ipsEntry__header .ipsPhotoPanel{
|
||||
flex: 999 1 1%; /* 1% is needed to prevent unintended wrapping on small screens */
|
||||
flex: 999 1 10%; /* 10% is needed to prevent unintended wrapping on small screens */
|
||||
}
|
||||
|
||||
.ipsEntry__header .ipsPhotoPanel__secondary{
|
||||
@@ -43389,6 +43365,13 @@ hr.ipsUnreadBar{
|
||||
height: 6px;
|
||||
}
|
||||
|
||||
/* Recommended note */
|
||||
.ipsEntry__recommendedNote{
|
||||
background: var(--i-background_2);
|
||||
border-radius: 6px;
|
||||
margin-top: 1em;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
/* Truncate posts if using the compact style and are viewing pages beyond 1 */
|
||||
.ipsEntry__truncate:not([data-truncate-expanded]){
|
||||
@@ -43616,7 +43599,22 @@ hr.ipsUnreadBar{
|
||||
}
|
||||
}
|
||||
|
||||
/* Adjust the padding of the review form, since the parent wrapper already has padding */
|
||||
.ipsForm--review > .ipsFieldRow:first-child{
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.ipsForm--review .ipsFieldRow{
|
||||
border-width: 0;
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.ipsForm--review .ipsSubmitRow{
|
||||
padding-bottom: 0;
|
||||
border-width: 0;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -50189,6 +50187,8 @@ li.L9 {
|
||||
|
||||
.ipsRating {
|
||||
display: inline-flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0 1.5em;
|
||||
color: var(--i-color_soft);
|
||||
}
|
||||
|
||||
@@ -51549,8 +51549,8 @@ details.ipsQuote > .ipsQuote_contents{
|
||||
}
|
||||
|
||||
/* Hide tabs if < 2 tabs exists */
|
||||
.ipsTabs:not(:has([role="tab"]:nth-child(2))){
|
||||
/* display: none; */
|
||||
.ipsTabs:has([role="tablist"] > :only-child){
|
||||
display: none;
|
||||
}
|
||||
|
||||
.ipsTabs--sticky{
|
||||
@@ -52079,10 +52079,6 @@ details.ipsQuote > .ipsQuote_contents{
|
||||
mask-image: linear-gradient(to top, hsl(0 0% 0% / 0) 1.4em, hsl(0 0% 0% / 1) 50%);
|
||||
}
|
||||
|
||||
:where(.tiptap .ipsQuote_contents, [data-ipstruncate])[data-truncated="true"]:not([data-truncate-expanded]) {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/* This selector needs html due to :is(.ipsRichText, .ipsRichText) * */
|
||||
html .ipsTruncate_more{
|
||||
-webkit-appearance: none;
|
||||
@@ -52368,14 +52364,38 @@ html .ipsTruncate_more{
|
||||
padding: 1.5em 0;
|
||||
|
||||
--i-footer-widgets: 320px;
|
||||
--i-color_root: var(--i-footer--co);
|
||||
--i-color_hard: var(--i-footer--co);
|
||||
--i-color_soft: color-mix(in srgb, var(--i-footer--co) 70%, var(--i-footer--ba-co));
|
||||
|
||||
--i-data--bo-co: color-mix(in srgb, var(--i-footer--co) 20%, var(--i-footer--ba-co));
|
||||
}
|
||||
|
||||
.ipsFooter__footer a{
|
||||
@supports (color: oklch(from var(--i) clamp(0, (.7 - l) * 1000, 1) c h)) and (color: oklch(from red l c h)){
|
||||
.ipsFooter{
|
||||
--i-color_hard: oklch(from var(--i-footer--ba-co) clamp(0, (.7 - l) * 1000, 1) c h);
|
||||
}
|
||||
}
|
||||
|
||||
.ipsFooter a{
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
/* Adjust colors of elements so they match the footer background/color */
|
||||
.ipsFooter .ipsList--border > li{
|
||||
outline-color: var(--i-data--bo-co);
|
||||
}
|
||||
.ipsFooter .cSidebarBlock_managing .ipsButton--inherit,
|
||||
.ipsFooter .ipsData--grid .ipsData__image,
|
||||
.ipsFooter .ipsData__image > i{
|
||||
background-color: var(--i-footer--ba-co);
|
||||
}
|
||||
.ipsFooter .ipsContainerTitle{
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets{
|
||||
margin-bottom: 1.5em;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
|
||||
/* Hide footer widgets if they're empty */
|
||||
@@ -52383,60 +52403,25 @@ html .ipsTruncate_more{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets .cWidgetContainer > ul{
|
||||
display: grid;
|
||||
grid-auto-flow: column;
|
||||
grid-auto-columns: minmax(min(var(--i-footer-widgets), 75vw), 1fr);
|
||||
gap: 5em;
|
||||
/* Remove all widget styles for the widget footer */
|
||||
.ipsFooter__widgets .ipsWidget,
|
||||
.ipsFooter__widgets .ipsWidget__header,
|
||||
.ipsFooter__widgets .cWidgetContainer--carousel{
|
||||
box-shadow: none;
|
||||
background: color-mix(in srgb, var(--i-footer--co) 5%, var(--i-footer--ba-co));
|
||||
color: inherit;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets .cWidgetContainer > ul > li{
|
||||
padding: 2em 0;
|
||||
scroll-snap-align: start;
|
||||
}
|
||||
|
||||
/* Remove all widget styles for the widget footer */
|
||||
.ipsFooter__widgets :is(.ipsWidget, .ipsWidget__header){
|
||||
all: unset;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets .ipsWidget *{
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets .ipsWidget__header {
|
||||
display: block;
|
||||
font-weight: bold;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.ipsFooter__widgets .ipsData__item{
|
||||
border-color: color-mix(in srgb, var(--i-co) 10%, transparent);
|
||||
}
|
||||
|
||||
.ipsFooter__widgets :is(.ipsData__meta, .ipsPhotoPanel__secondary, .ipsData__stats){
|
||||
--i-co: inherit;
|
||||
color: color-mix(in srgb, var(--i-co) 50%, transparent);
|
||||
}
|
||||
|
||||
.ipsFooter .cSidebarManager_placeholder{
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/* Move into carousel on mobiles */
|
||||
@media (max-width: 979px){
|
||||
.ipsFooter__widgets .cWidgetContainer > ul{
|
||||
gap: 2em;
|
||||
margin-left: calc(var(--i-layout-gutter) * -1);
|
||||
margin-right: calc(var(--i-layout-gutter) * -1);
|
||||
overflow-x: scroll;
|
||||
overscroll-behavior-x: contain;
|
||||
scroll-behavior: smooth;
|
||||
scroll-snap-type: x mandatory;
|
||||
padding-inline: 2em;
|
||||
scroll-padding-inline: 2em;
|
||||
.ipsFooter__widgets .ipsWidget__header,
|
||||
.ipsFooter__widgets .cWidgetContainer__carousel-buttons {
|
||||
background: color-mix(in srgb, var(--i-footer--co) 10%, var(--i-footer--ba-co));
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
.ipsFooter .cSidebarManager_placeholder{
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.ipsFooter__footer{
|
||||
font-size: .9em;
|
||||
@@ -53310,6 +53295,7 @@ i-navigation-menu{
|
||||
.ipsLayout__main{
|
||||
flex: 1 1 auto;
|
||||
padding-top: var(--i-sp_block);
|
||||
outline-width: 0;
|
||||
}
|
||||
|
||||
@media (max-width: 979px){
|
||||
@@ -53405,7 +53391,7 @@ i-navigation-menu{
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
#elContextualTools{
|
||||
#elContextualTools, [data-role="sidebarAd"]{
|
||||
margin-bottom: var(--i-sp_block);
|
||||
}
|
||||
#elContextualTools,
|
||||
@@ -55154,6 +55140,10 @@ a.i-link-color_inherit,
|
||||
----------------
|
||||
*/
|
||||
|
||||
.i-font-style_italic{
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.i-text-transform_uppercase{
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
@@ -280,5 +280,6 @@
|
||||
"5000028": "5.0.0 Beta 2",
|
||||
"5000029": "5.0.0 Beta 3",
|
||||
"5000030": "5.0.0 Beta 4",
|
||||
"5000031": "5.0.0 Beta 5"
|
||||
"5000031": "5.0.0 Beta 5",
|
||||
"5000032": "5.0.0 Beta 6"
|
||||
}
|
||||
Reference in new issue
Block a user