Keyword

Advanced Search

Search Results (Searched for: Joomla K2 user extra fields)

  • JoomlaWorks
  • JoomlaWorks's Avatar
08 Oct 2018 01:08 - 08 Oct 2018 01:16

After Update to K2 2.9 Extra Fields Don't Work At All

Category: English K2 Community

Switch error reporting to maximum so you can see which part fails (and IF it's K2) as I'm working primarily on PHP 7.2 locally and have no issues at all.

As for sub-templating, JoomlaWorks was literally the first Joomla company to launch such features in its products. That's because we understand CM in CMS. What you want to do is probably called adaptive design/development and it's really not that hard.

In your template's index.php, this is what you need to have different subtemplates per device type:
<?php // URLs with "?m" or "&m" render mobile pages - much like Google's Blogger does / "?force" or "&force" is used to force the desktop view if(isset($_GET['m']) && !isset($_GET['force'])){ include('index.mobile.inc.php'); } else { include('index.desktop.inc.php'); }

Then you need a system plugin (using the onAfterInitialise event) to set a PHP constant like define("SITE_VIEW", "mobile"); or define("SITE_VIEW", "desktop");:
 // Desktop or mobile if(isset($_GET['m']) && !isset($_GET['force'])){ define("SITE_VIEW", "mobile"); } else { define("SITE_VIEW", "desktop"); }

And finally, in your html overrides under /html/com_k2/ you simply check for the value of SITE_VIEW to determine if the user visiting the site is using a mobile or desktop browser.

You would also need the JS redirect in your desktop sub-template, something like:
 <!-- Browser detect and redirect --> <script type="text/javascript"> (function() { // Get URL query strings function getQS(v) { var qs = window.location.search.substring(1); var qsArray = qs.split("&"); for (i = 0; i < qsArray.length; i++) { var qp = qsArray[i].split("="); if (qp[0] == v) { return true; } } } if (getQS('force')) { document.getElementsByTagName('a').onclick = function(el) { if (el.href.indexOf('?') > 0) { el.href = el.href + '&force=1'; } else { el.href = el.href + '?force=1'; } } } if (getQS('m') === undefined) { if (getQS('force')) return; var curUrl = window.location.href; var userAgent = navigator.userAgent || navigator.vendor || window.opera; var getLastChar = curUrl.substr((curUrl.length) - 1); if (((/Android/i).test(userAgent) && (/Mobile/i).test(userAgent)) || (/BlackBerry|iPhone|iPod|Opera Mini|IEMobile/i).test(userAgent)) { if (curUrl.indexOf('?') > 0) { window.location.replace(curUrl + '&m=1'); } else { window.location.replace(curUrl + '?m=1'); } } } })(); </script>

The above makes sure to set ?m or &m and handle ?force or &force if there's a link to enforce the desktop view in your site.

I'm just giving you an idea on how to implement things here, it's not THE solution of course. But the above can work great with any type of caching, either Joomla-based caching or stricter server-side caching e.g. via Varnish or Nginx.

If you need more info, I could make a blog post with more details.
  • James Argo
  • James Argo's Avatar
12 Mar 2018 16:28

K2 Backend ACL critical problem, user can do restricted action.

Category: English K2 Community

Thank you Krikor and Fotis for replying.

Fotis wrote: In order for an editor in the backend to have access to users, extra fields etc. they MUST have "core.admin" rights assigned to them. In other words, they must share a critical feature available to admins only.

If your plain user can modify content beyond items and categories and comments, make sure they don't have the above permissions when configuring their group.


If you mean by "core.admin" rights is what we have with Joomla ACL as Global Configuration --> Permission --> Author, then I believe I have not assigned them "Access Administration Interface" . But if you mean K2 ACL permission, then I do assign the Author "Access Administration Interface" in K2 ACL permission. Because if I don't assign them in Access Administration Interface of K2 ACL permission, he can not access K2 at back end administrator page at all.

The most simple yet logic solution that comes to my mind is to disable (or hide) the "change author" button and publishing state in K2 item editor for user without publishing right like we have on front end site editor. Well, at least that would prevent the user to "sneak into the hole".

Thank you. :-)
  • James Argo
  • James Argo's Avatar
10 Mar 2018 07:21 - 10 Mar 2018 08:13

K2 Backend ACL critical problem, user can do restricted action.

Category: English K2 Community

Greeting all...

First of all, thank you Joomlaworks for providing us so useful and wonderful extension K2 for free. It is great!

Ok, I just have found a problem which could cause a threat to our site, where user with very limited backend admin access can see, and take action on things they suppose NOT to do. I spent last few days on testing this issue in both local server and also online server. I can confirm this is really potential problem which can destroy the whole K2 articles in our site. To make it short, let's make it this way:

1. Fresh install Joomla 3.8.5.
2. Fresh install K2.
3. No other extension installed.
4. I (as Super User) create Joomla usergroup Author, and new Viewing Access Level called "Author" which includes Public, Registered and Author only (ticked).
5. I create a Joomla user named "author1" which will act as article creator. In Joomla user, I assign this user author1 to usergroup Author. Then import the user to K2 user. His ONLY job is to create K2 articles and edit his OWN articles when necessary via back end and NOT to publish it. To do so, I assign his permission via Joomla ACL as follow :
  • Joomla global ACL, set the group Author to have backend Administrator login. That's it. The rest permission in this point is inherited.
  • Still in Global Configuration, go to K2 permission tab. Set Author permission to allow CREATE and EDIT OWN. *I also have to set Access Administration Interface" to Allowed, in order to make the admin menu toolbar appear to the author while he is login to backend administrator. Otherwise he will not be able to access either component toolbar or any K2 section (panel) in backend administrator.* Save it.
  • Go to admin menu Joomla Extension --> Modules --> Administrator. FInd the module "Toolbar", edit it and grant access to "Author"

If we do it correctly, we can now logout as Super User, and re-login to backend administrator as Author1 with limited view access.

What we see as Author1 in backend administrator Cpanel page is K2 stats (admin) , and K2 Quick Icons (admin) , while in toolbar he can see Components and Help menu. The Components will only have K2 sub menu, * with K2 FULL sub menu instead of only Items, category, tags, comments, media manager, and information! *

That means, using the toolbar this Author1 is able to access many unauthorized resources and take unauthorized action such as disabling any user available (despite their usergroup), and flag them as spammer!

It is true that when he tries to access (for example) the K2 Users page, he will be warned by red error box saying "Error you are not authorized to view this resource", but still the page is open and give him an access to many unauthorized option to take action such as disabling users, and flag users as spammers.

Ok, so what if I don't grant access of module toolbar to Author? Doesn't that mean he is still able to access K2 section via K2 Quick Icons (admin) menu in Cpanel when he logged in and NOT having full K2 menu in toolbar?

Yes... He will not see Component menu in toolbar. Thus he wont have any K2 submenu either. And he still be able to access K2 backend section through K2 Quick Icons (admin). The problem is, there is still a chance for him to easily "sneak" into the hole.

Let's say I don't grant access of module toolbar to Author in admin menu module. This author can access K2 backend section through K2 Quick Icons (admin). What he will see in the left menu are : Items, Categories, Tags, Comments, Media Manager, and Information only. No link to K2, Users, Usergroups, or Extra fields. The problem is, when he create new article (or editing his own) the K2 item editor will open. In this K2 item editor, he CAN change the author by clicking Author button... When he click it, K2 users page will open and again, he will be warned by red error box saying "Error you are not authorized to view this resource", but still the page is open and give him an access to many unauthorized option to take action such as disabling users, and flag users as spammers.



If you don't have any idea what was happening when someone click flag users as spammer to legit site contributors, it is big disaster. All their articles will be destroyed from database, and the user is deleted from K2 database table, the site turns out error 1056 database error etc in front end, etc... Well, at least that was what happen to me last week. The website down for a while. Lucky I got daily backup to restore (Thanks Akeeba!).

I am not sure if this is appropriate, but granting this user "Access Administration Interface" in global K2 permission ACL should not go that far. There should be a way where "Access Administration Interface" permission does not give him way to far access in K2 admin section. Instead, only permission given to him is accessible (like create items and edit his own).


The next thing is, he is able to publish his own article if he manage to edit his own article via backend admin K2 item editor. It is true, that if he goes to Items menu in K2, (where he will see list of articles), he can not click (un-tick) the published checkbox (doing so will not change the state of article) to make it published or unpublished. But if he manage to edit the articles, he is able to change the state of publishing via K2 item editor page (it will take effect after saving).


That's all for now, please bear my English. I hope JW developers can take a look into the problem and solve them in next release.

Thank you so much for all your effort! You guys ROCK!!
  • MGS Creativa
  • MGS Creativa's Avatar
28 Dec 2017 17:53 - 28 Dec 2017 19:56

Lightbox popup extra field doesn't work on itemlist view

Category: English K2 Community

Hi! In my site I have a K2 category tahts is displayed in the frontend as an itemlist that shows article title and extra fields for each article and no more data.

One of those extra fields is an lightbox popup link field, which didn't worked as expected, the link opens but no lightbox at all, it opens as a normal link.

After some digging, I realized thet the logic that enables JS for the lightbox popups doen't take into account the itemlist view, so in the file administrator/components/com_k2/helpers/html.php on line 236 i have changed this
if (!$user->guest || ($option == 'com_k2' && $view == 'item') || defined('K2_JOOMLA_MODAL_REQUIRED')){
to this
if (!$user->guest || ($option == 'com_k2' && $view == 'item') || ($option == 'com_k2' && $view == 'itemlist') || defined('K2_JOOMLA_MODAL_REQUIRED')){

The change is to add another logical condition to enable JS necessary for the lightbox popup "($option == 'com_k2' && $view == 'itemlist')"

Hope this hits K2 source code.

Thanks!
  • Nadal Kumar
  • Nadal Kumar's Avatar
04 Dec 2017 23:17

K2 remains the greatest thing that happend to Joomla, but...

Category: English K2 Community

Krikor thanks for the reply.

You didn't publish a link. However, if you meant the extension called Inceptive Multiple ExtraFields Group at github.com/kmgalanakis/Inceptive-Multiple-Extra-Field-Groups-for-K2, it doesn't seem compatible with 2.8+ because it breaks the K2 tab function and causes the fields of display settings and publishing to all show on one page, and it is chaotic. Such a situation is what makes it quite risky to construct a massive website that is dependent on third party application which may become defunct due to lacking maintenance.

Such a function has to be within the core construct for long term reliability.

Secondly, it still promotes clutter since it creates a tab per group instead of all groups within a single tab and stacked vertically.

I'll certainly follow your advice and submit the suggestion, though the request has been submitted by other users since 2009 (www.joomlaworks.net/forum/k2-en/19900-assign-multiple-extra-field-groups-to-categories).
  • Eddie May
  • Eddie May's Avatar
02 Dec 2017 11:02

DateTime::__construct(): Failed to parse time string (-1-11-

Category: English K2 Community

Hi,
Thanks for the reply.

K2 plugins, etc
K2 Administrator Component 2.8.0

K2 Comments
Site Module 2.8.0

K2 Content
Site Module 2.8.0

K2 Quick Icons (admin)
Administrator Module 2.8.0

K2 Stats (admin)
Administrator Module 2.8.0

K2 Tools
Site Module 2.8.0

K2 User
Site Module 2.8.0

K2 Users
Site Module 2.8.0

Multiple Extra Fields Groups for K2
Site Plugin 1.0.41

Search - K2
Site Plugin 2.8.0

Smart Search - K2
Site Plugin 2.8.0

System - K2
Site Plugin 2.8.0 August 18th, 2017 JoomlaWorks system 10003

System - K2MultiImages
Site Plugin 1.4.1 March 2016 Andrey Miasoedov system 10031

User - K2
Site Plugin 2.8.0 August 18th, 2017 JoomlaWorks


Third-party Extensions
AllVideos (plugin) Installed
Simple Image Gallery Pro (plugin) Not Installed

Template:
Joostrap


html>K2MultiImages
  • admin_form.php
  • category-slider-hs.php
  • item-standard.php
  • category-slider.php
  • category-standard.php
  • item-default.php
  • item-fotorama.php
  • item-slider-hs-grid-thumbs.php
  • item-slider-hs-vertical-thumbs.php
  • item-slider-hs.php
  • item-slider.php


com_content > category
  • portfolio.php
  • portfolio.xml
  • portfolio_children.php
  • portfolio_item.php


Thanks
  • ByBus
  • ByBus's Avatar
26 Nov 2017 14:14

Enable K2 plugins or components in item.php

Category: English K2 Community

Hi, I've made a custom item.php. But I think what I made few mistakes in it. Components (such as chronoforms 6) and plugins (I use jl social comments pro) now not working. There are no references to these components in the source code of the page. K2 plugins enabled in backend.
But everything works fine with standart template.
Please help

This is my item.php
<?php /** * @version 2.7.x * @package K2 * @author JoomlaWorks https://www.joomlaworks.net * @copyright Copyright (c) 2006 - 2016 JoomlaWorks Ltd. All rights reserved. * @license GNU/GPL license: http://www.gnu.org/copyleft/gpl.html */ // no direct access defined('_JEXEC') or die; $document = JFactory::getDocument(); $document->addScript('/js/skitter/dist/jquery.easing.1.3.js'); $document->addScript('/js/skitter/dist/jquery.skitter.js'); $document->addScript('/js/Fancy/jquery.fancybox.js'); $document->addScript('/js/Fancy/jquery.matchHeight.js'); $document->addScriptDeclaration(' jQuery(document).ready(function() { jQuery("[data-fancybox=\"plangal\"]").fancybox({loop : true}); jQuery("[data-fancybox=\"fasgal\"]").fancybox({loop : true}); jQuery("[data-fancybox=\"razgal\"]").fancybox({loop : true}); jQuery("[data-fancybox=\"skitgal\"]").fancybox({loop : true}); }); '); $document->addScriptDeclaration(' jQuery(document).ready(function() { //Вкладки jQuery(".tab_item").not(":first").hide(); jQuery(".wrapper .tab").click(function() { jQuery(".wrapper .tab").removeClass("activetab").eq(jQuery(this).index()).addClass("activetab"); jQuery(".tab_item").hide().eq(jQuery(this).index()).fadeIn() }).eq(0).addClass("activetab"); //Одинаковая высота планировок и их выравнивание по вертикали planirHeightMid(); //Картинки по середине (в планировках, фасадах и разрезах) function planMiddle(elem) { elem.each(function() { var pla = jQuery(this).innerHeight(); var plai = jQuery("a > img", this); var plaim = plai.outerHeight() + 28 + 20; if (pla > plaim) { plai.css("margin-top", (pla - plai.height() - 28) / 2 + "px"); } }); }; function planirHeightMid() { jQuery(".planir").matchHeight(); planMiddle(jQuery(".planir")); }; jQuery("#fasad").one("click", function() { jQuery(".fasad").matchHeight(); planMiddle(jQuery(".fasad")); }); jQuery("#razrez").one("click", function() { jQuery(".razrez").matchHeight(); planMiddle(jQuery(".razrez")); }); //Хак для открытия skitterGall в fancybox jQuery( ".lupa" ).click(function() { var curSlide = jQuery(".image_main").attr("src"); jQuery(".fncm").each(function(){ if(jQuery(this).attr("href") == curSlide){ jQuery(this).trigger( "click" ); } }); }); }); '); $document->addStyleSheet('/js/skitter/dist/skitter.css'); $document->addStyleSheet('/css/itemstyle.css'); $document->addStyleSheet('/js/Fancy/jquery.fancybox.css'); $document->addStyleSheet('http://fontawesome.io/assets/font-awesome/css/font-awesome.css'); ?> <!-- Start K2 Item Layout --> <span id="startOfPageId<?php echo JRequest::getInt('id'); ?>"></span> <link href="https://fonts.googleapis.com/css?family=Cuprum" rel="stylesheet"> <div id="k2Container" class="containerproject"> <!-- Plugins: BeforeDisplay --> <?php echo $this->item->event->BeforeDisplay; ?> <!-- K2 Plugins: K2BeforeDisplay --> <?php echo $this->item->event->K2BeforeDisplay; ?> <!-- Plugins: AfterDisplayTitle --> <?php echo $this->item->event->AfterDisplayTitle; ?> <!-- K2 Plugins: K2AfterDisplayTitle --> <?php echo $this->item->event->K2AfterDisplayTitle; ?> <?php if($this->item->params->get('itemExtraFields') && count($this->item->extra_fields)): ?> <?php foreach ($this->item->extra_fields as $key=>$extraField): ?> <?php if($extraField->value != ''): ?> <?php endif; ?> <?php endforeach; ?> <?php endif; $skittersettings = $this->item->extraFields->skittersettings->value; $document->addScriptDeclaration($skittersettings); $slicksettings = $this->item->extraFields->slicksettings->value; $document->addScriptDeclaration($slicksettings); ?> <div class="item-top-block"> <div class="articul-block"> <div class="articul"> <?php if($this->item->extraFields->articul->value) {echo $this->item->extraFields->articul->value;} ?> </div> <?php if ($this->item->extraFields->dostoinstva->value){ ?> <div class="dostoinstva"> <?php echo $this->item->extraFields->dostoinstva->value; ?> </div> <?php } ?> </div> <div class="slider-item-block"> <div class="lupa"> <i class="fa fa-search-plus" aria-hidden="true">&zwnj;</i> </div> <?php if($this->item->params->get('itemImage') && !empty($this->item->image)): ?> <div class="skitter skitter-large with-dots"> <ul> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo $this->item->image; ?>"> <img src="<?php echo $this->item->image; ?>" class="cut" /> </a> <div class="label_text"> <p> <?php if(!empty($this->item->image_caption)) echo K2HelperUtilities::cleanHtml($this->item->image_caption); else echo K2HelperUtilities::cleanHtml($this->item->title); ?> </p> </div> </li> <?php if ($this->item->extraFields->slideone->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slideone->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slideone->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slideonetxt->value; ?> </p> </div> </li> <?php } ?> <?php if ($this->item->extraFields->slidetwo->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slidetwo->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slidetwo->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slidetwotxt->value; ?> </p> </div> </li> <?php } ?> <?php if ($this->item->extraFields->slidethree->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slidethree->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slidethree->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slidethreetxt->value; ?> </p> </div> </li> <?php } ?> <?php if ($this->item->extraFields->slidefour->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slidefour->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slidefour->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slidefourtxt->value; ?> </p> </div> </li> <?php } ?> <?php if ($this->item->extraFields->slidefive->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slidefive->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slidefive->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slidefivetxt->value; ?> </p> </div> </li> <?php } ?> <?php if ($this->item->extraFields->slidesix->value){ ?> <li> <a class="fncm" data-fancybox="skitgal" href="<?php echo clrimg($this->item->extraFields->slidesix->value); ?>"> <img src="<?php echo clrimg($this->item->extraFields->slidesix->value); ?>" class="swapBlocks"/> </a> <div class="label_text"> <p> <?php echo $this->item->extraFields->slidesixtxt->value; ?> </p> </div> </li> <?php } ?> </ul> </div> <?php endif; ?> </div> <div class="maininfo-list"> <ul> <li class="maininfo"> <div class="infopic-block"> <div class="krisha-pic info-pic"></div> </div> <div class="infopic-txt">КРОВЛЯ</div> <div class="maininfo-txt"><?php if ($this->item->extraFields->krovlya->value){echo $this->item->extraFields->krovlya->value;} ?></div> <div class="clrboth"></div> </li> <li class="maininfo"> <div class="infopic-block"> <div class="perekritie-pic info-pic"></div> </div> <div class="infopic-txt">ПЕРЕКРЫТИЕ</div> <div class="maininfo-txt"><?php if ($this->item->extraFields->perekritie->value){echo $this->item->extraFields->perekritie->value;} ?></div> <div class="clrboth"></div> </li> <li class="maininfo"> <div class="infopic-block"> <div class="steni-pic info-pic"></div> </div> <div class="infopic-txt">СТЕНЫ</div> <div class="maininfo-txt"><?php if ($this->item->extraFields->steni->value){echo $this->item->extraFields->steni->value;} ?></div> <div class="clrboth"></div> </li> <li class="maininfo"> <div class="infopic-block"> <div class="fundament-pic info-pic"></div> </div> <div class="infopic-txt">ФУНДАМЕНТ</div> <div class="maininfo-txt"><?php if ($this->item->extraFields->fundament->value){echo $this->item->extraFields->fundament->value;} ?></div> <div class="clrboth"></div> </li> </ul> <div class="znaki-wrapper"> <div class="znacki-item "> <?php if ($this->item->extraFields->spalen->value){ ?> <div class="infopic-block marg-corr"> <div class="garazhicon spalen-pic"></div> <div class="kol-vo"><?php echo sklonenie($this->item->extraFields->spalen->value,'spalen'); ?></div> </div> <?php } ?> <?php if ($this->item->extraFields->sanuzlov->value){ ?> <div class="infopic-block marg-corr"> <div class="garazhicon sanuzel-pic"></div> <div class="kol-vo"><?php echo sklonenie($this->item->extraFields->sanuzlov->value,'sanuzlov'); ?></div> </div> <?php } ?> <?php if ($this->item->extraFields->etazhei->value){ ?> <div class="infopic-block marg-corr"> <div class="garazhicon etazh-pic"></div> <div class="kol-vo"><?php echo sklonenie($this->item->extraFields->etazhei->value,'etazhei'); ?></div> </div> <?php } ?> <?php if ($this->item->extraFields->garazhei->value){ ?> <div class="infopic-block marg-corr"> <div class="garazhicon garazh-pic"></div> <div class="kol-vo"><?php echo sklonenie($this->item->extraFields->garazhei->value,'garazhei'); ?></div> </div> <?php } ?> <?php if ($this->item->extraFields->saun->value){ ?> <div class="infopic-block marg-corr"> <div class="garazhicon sauna-pic"></div> <div class="kol-vo"><?php echo sklonenie($this->item->extraFields->saun->value,'saun'); ?></div> </div> <?php } ?> <div class="clrboth"></div> </div> </div> <?php if ($this->item->extraFields->ploshad->value){ ?> <div class="ploshad zakaz-block ploshcor"> Площадь: <div class="ploshad-znach"> <?php echo $this->item->extraFields->ploshad->value; ?> м<sup>2</sup> </div> </div> <?php } ?> <?php if ($this->item->extraFields->tsena->value){ ?> <div class="ploshad zakaz-block"> Цена: <div class="ploshad-znach"> <?php echo $this->item->extraFields->tsena->value; ?> руб. </div> </div> <?php } ?> <div class="podrobnee-prj"> <a class="uk-button uk-align-right cupit" href="#">КУПИТЬ</a> </div> </div> </div> <?php if ($this->item->extraFields->dopslides->value){ $arrofimg = dopimg($this->item->extraFields->dopslides->value); ?> <div id="item-k2-slides-position" class="blockstyle" style="padding: 10px; padding-bottom: 7px;"> <div class="slider-bl-prj"> <?php foreach ($arrofimg as $key=>$imgpath) { ?> <div> <a data-fancybox="skitgal" href="<?php echo $imgpath; ?>"> <img src="<?php echo $imgpath; ?>" /> </a> </div> <?php } ?> </div> </div> <?php } ?> <div class="blockstyle" style="padding:0; background: transparent;"> <div class="wrapper"> <div class="tabs"> <span id="planir" class="tab"><span class="plan-ico razrez-ico">&ensp;</span>Планировки</span> <span id="fasad" class="tab"><i class="fa fa-home" aria-hidden="true"></i>Фасады</span> <span id="razrez" class="tab"><span class="razrez-ico">А-А</span>Разрезы</span> <span class="tab"><i class="fa fa-info" aria-hidden="true"></i>Описание</span> <span class="tab"><i class="fa fa-list-ol" aria-hidden="true"></i>Состав проекта</span> </div> <div class="tab_content"> <!--ПЛАНИРОВКИ НАЧАЛО--> <div class="tab_item"> <div class="tab-contenr-wrapper"> <?php if ($this->item->extraFields->planone->value){ $planone = $this->item->extraFields->planone->value; ?> <div class="planirovka planir"> <div class="planir-opis"><?php echo $this->item->extraFields->planonename->value; ?></div> <a data-fancybox="plangal" href="<?php echo clrimg($planone); ?>"><img src="<?php echo clrimg($planone); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->plantwo->value){ $plantwo = $this->item->extraFields->plantwo->value; ?> <div class="planirovka planir"> <div class="planir-opis"><?php echo $this->item->extraFields->plantwoname->value; ?></div> <a data-fancybox="plangal" href="<?php echo clrimg($plantwo); ?>"><img src="<?php echo clrimg($plantwo); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->planthree->value){ $planthree = $this->item->extraFields->planthree->value; ?> <div class="planirovka planir"> <div class="planir-opis"><?php echo $this->item->extraFields->planthreename->value; ?></div> <a data-fancybox="plangal" href="<?php echo clrimg($planthree); ?>"><img src="<?php echo clrimg($planthree); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->planfour->value){ $planfour = $this->item->extraFields->planfour->value; ?> <div class="planirovka planir"> <div class="planir-opis"><?php echo $this->item->extraFields->planfourname->value; ?></div> <a data-fancybox="plangal" href="<?php echo clrimg($planfour); ?>"><img src="<?php echo clrimg($planfour); ?>" alt="" width="100%"></a> </div> <?php } ?> </div> <div class="clrboth"></div> </div> <!--ПЛАНИРОВКИ КОНЕЦ ФАСАДЫ НАЧАЛО--> <div class="tab_item"> <div class="tab-contenr-wrapper"> <?php if ($this->item->extraFields->fasadone->value){ $fasadone = $this->item->extraFields->fasadone->value; ?> <div class="planirovka fasad"> <div class="planir-opis"><?php echo $this->item->extraFields->fasadonename->value; ?></div> <a data-fancybox="fasgal" href="<?php echo clrimg($fasadone); ?>"><img src="<?php echo clrimg($fasadone); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->fasadtwo->value){ $fasadtwo = $this->item->extraFields->fasadtwo->value; ?> <div class="planirovka fasad"> <div class="planir-opis"><?php echo $this->item->extraFields->fasadtwoname->value; ?></div> <a data-fancybox="fasgal" href="<?php echo clrimg($fasadtwo); ?>"><img src="<?php echo clrimg($fasadtwo); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->fasadthree->value){ $fasadthree = $this->item->extraFields->fasadthree->value; ?> <div class="planirovka fasad"> <div class="planir-opis"><?php echo $this->item->extraFields->fasadthreename->value; ?></div> <a data-fancybox="fasgal" href="<?php echo clrimg($fasadthree); ?>"><img src="<?php echo clrimg($fasadthree); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->fasadfour->value){ $fasadfour = $this->item->extraFields->fasadfour->value; ?> <div class="planirovka fasad"> <div class="planir-opis"><?php echo $this->item->extraFields->fasadfourname->value; ?></div> <a data-fancybox="fasgal" href="<?php echo clrimg($fasadfour); ?>"><img src="<?php echo clrimg($fasadfour); ?>" alt="" width="100%"></a> </div> <?php } ?> </div> <div class="clrboth"></div> </div> <!--ФАСАДЫ КОНЕЦ РАЗРЕЗЫ НАЧАЛО--> <div class="tab_item"> <div class="tab-contenr-wrapper"> <?php if ($this->item->extraFields->razrezone->value){ $razrezone = $this->item->extraFields->razrezone->value; ?> <div class="planirovka razrez"> <div class="planir-opis"><?php echo $this->item->extraFields->razrezonename->value; ?></div> <a data-fancybox="razgal" href="<?php echo clrimg($razrezone); ?>"><img src="<?php echo clrimg($razrezone); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->razreztwo->value){ $razreztwo = $this->item->extraFields->razreztwo->value; ?> <div class="planirovka razrez"> <div class="planir-opis"><?php echo $this->item->extraFields->razreztwoname->value; ?></div> <a data-fancybox="razgal" href="<?php echo clrimg($razreztwo); ?>"><img src="<?php echo clrimg($razreztwo); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->razrezthree->value){ $razrezthree = $this->item->extraFields->razrezthree->value; ?> <div class="planirovka razrez"> <div class="planir-opis"><?php echo $this->item->extraFields->razrezthreename->value; ?></div> <a data-fancybox="razgal" href="<?php echo clrimg($razrezthree); ?>"><img src="<?php echo clrimg($razrezthree); ?>" alt="" width="100%"></a> </div> <?php } ?> <?php if ($this->item->extraFields->razrezfour->value){ $razrezfour = $this->item->extraFields->razrezfour->value; ?> <div class="planirovka razrez"> <div class="planir-opis"><?php echo $this->item->extraFields->razrezfourname->value; ?></div> <a data-fancybox="razgal" href="<?php echo clrimg($razrezfour); ?>"><img src="<?php echo clrimg($razrezfour); ?>" alt="" width="100%"></a> </div> <?php } ?> </div> <div class="clrboth"></div> </div> <!--РАЗРЕЗЫ КОНЕЦ ОПИСАНИЕ НАЧАЛО--> <div class="tab_item"> <?php if(!empty($this->item->fulltext)): ?> <?php if($this->item->params->get('itemIntroText')): ?> <!-- Item introtext --> <?php echo $this->item->introtext; ?> <?php endif; ?> <?php if($this->item->params->get('itemFullText')): ?> <!-- Item fulltext --> <?php echo $this->item->fulltext; ?> <?php endif; ?> <?php else: ?> <!-- Item text --> <?php echo $this->item->introtext; ?> <?php endif; ?> </div> <!--ОПИСАНИЕ КОНЕЦ СОСТАВ НАЧАЛО--> <div class="tab_item"> <?php if ($this->item->extraFields->sostav->value){echo $this->item->extraFields->sostav->value;} ?> </div> <!--СОСТАВ КОНЕЦ--> </div> </div> <div class="commentary"></div> <div id="comment-prj" class="blockstyle"> <?php echo $this->item->event->K2AfterDisplayTitle; ?> <?php echo $this->item->event->AfterDisplayContent; ?> <?php if( $this->item->params->get('itemComments') && (($this->item->params->get('comments') == '2' && !$this->user->guest) || ($this->item->params->get('comments') == '1')) ): ?> <!-- K2 Plugins: K2CommentsBlock --> <?php echo $this->item->event->K2CommentsBlock; ?> <?php endif; ?> <?php if( $this->item->params->get('itemComments') && ($this->item->params->get('comments') == '1' || ($this->item->params->get('comments') == '2')) && empty($this->item->event->K2CommentsBlock) ): ?> <!-- Item comments --> <a name="itemCommentsAnchor" id="itemCommentsAnchor"></a> <div class="itemComments"> <?php if($this->item->params->get('commentsFormPosition')=='above' && $this->item->params->get('itemComments') && !JRequest::getInt('print') && ($this->item->params->get('comments') == '1' || ($this->item->params->get('comments') == '2' && K2HelperPermissions::canAddComment($this->item->catid)))): ?> <!-- Item comments form --> <div class="itemCommentsForm"> <?php echo $this->loadTemplate('comments_form'); ?> </div> <?php endif; ?> <?php if($this->item->numOfComments>0 && $this->item->params->get('itemComments') && ($this->item->params->get('comments') == '1' || ($this->item->params->get('comments') == '2'))): ?> <!-- Item user comments --> <h3 class="itemCommentsCounter"> <span><?php echo $this->item->numOfComments; ?></span> <?php echo ($this->item->numOfComments>1) ? JText::_('K2_COMMENTS') : JText::_('K2_COMMENT'); ?> </h3> <ul class="itemCommentsList"> <?php foreach ($this->item->comments as $key=>$comment): ?> <li class="<?php echo ($key%2) ? "odd" : "even"; echo (!$this->item->created_by_alias && $comment->userID==$this->item->created_by) ? " authorResponse" : ""; echo($comment->published) ? '':' unpublishedComment'; ?>"> <span class="commentLink"> <a href="<?php echo $this->item->link; ?>#comment<?php echo $comment->id; ?>" name="comment<?php echo $comment->id; ?>" id="comment<?php echo $comment->id; ?>"> <?php echo JText::_('K2_COMMENT_LINK'); ?> </a> </span> <?php if($comment->userImage): ?> <img src="<?php echo $comment->userImage; ?>" alt="<?php echo JFilterOutput::cleanText($comment->userName); ?>" width="<?php echo $this->item->params->get('commenterImgWidth'); ?>" /> <?php endif; ?> <span class="commentDate"><?php echo JHTML::_('date', $comment->commentDate, JText::_('K2_DATE_FORMAT_LC2')); ?></span> <span class="commentAuthorName"> <?php echo JText::_('K2_POSTED_BY'); ?> <?php if(!empty($comment->userLink)): ?> <a href="<?php echo JFilterOutput::cleanText($comment->userLink); ?>" title="<?php echo JFilterOutput::cleanText($comment->userName); ?>" target="_blank" rel="nofollow"><?php echo $comment->userName; ?></a> <?php else: ?> <?php echo $comment->userName; ?> <?php endif; ?> </span> <p><?php echo $comment->commentText; ?></p> <?php if( $this->inlineCommentsModeration || ($comment->published && ($this->params->get('commentsReporting')=='1' || ($this->params->get('commentsReporting')=='2' && !$this->user->guest))) ): ?> <span class="commentToolbar"> <?php if($this->inlineCommentsModeration): ?> <?php if(!$comment->published): ?> <a class="commentApproveLink" href="<?php echo JRoute::_('index.php?option=com_k2&view=comments&task=publish&commentID='.$comment->id.'&format=raw')?>"><?php echo JText::_('K2_APPROVE')?></a> <?php endif; ?> <a class="commentRemoveLink" href="<?php echo JRoute::_('index.php?option=com_k2&view=comments&task=remove&commentID='.$comment->id.'&format=raw')?>"><?php echo JText::_('K2_REMOVE')?></a> <?php endif; ?> <?php if($comment->published && ($this->params->get('commentsReporting')=='1' || ($this->params->get('commentsReporting')=='2' && !$this->user->guest))): ?> <a data-k2-modal="iframe" href="<?php echo JRoute::_('index.php?option=com_k2&view=comments&task=report&commentID='.$comment->id)?>"><?php echo JText::_('K2_REPORT')?></a> <?php endif; ?> <?php if($comment->reportUserLink): ?> <a class="k2ReportUserButton" href="<?php echo $comment->reportUserLink; ?>"><?php echo JText::_('K2_FLAG_AS_SPAMMER'); ?></a> <?php endif; ?> </span> <?php endif; ?> <div class="clr"></div> </li> <?php endforeach; ?> </ul> <!-- Comments Pagination --> <div class="itemCommentsPagination"> <?php echo $this->pagination->getPagesLinks(); ?> <div class="clr"></div> </div> <?php endif; ?> <?php if( $this->item->params->get('commentsFormPosition')=='below' && $this->item->params->get('itemComments') && !JRequest::getInt('print') && ($this->item->params->get('comments') == '1' || ($this->item->params->get('comments') == '2' && K2HelperPermissions::canAddComment($this->item->catid))) ): ?> <!-- Item comments form --> <div class="itemCommentsForm"> <?php echo $this->loadTemplate('comments_form'); ?> </div> <?php endif; ?> <?php $user = JFactory::getUser(); if($this->item->params->get('comments') == '2' && $user->guest): ?> <div class="itemCommentsLoginFirst"><?php echo JText::_('K2_LOGIN_TO_POST_COMMENTS'); ?></div> <?php endif; ?> </div> <?php endif; ?> <?php function clrimg($img) { preg_match('%<img.*?src=["\'](.*?)["\'].*?/>%i', $img , $result); return $result[1]; } function sklonenie($chislo, $tip) { $arri = array (2, 0, 1, 1, 1, 2); if ($tip == 'spalen'){ $arr = array ('спальня', 'спальни','спален'); } elseif ($tip == 'sanuzlov'){ $arr = array ('санузел', 'санузла','санузлов'); } elseif ($tip == 'etazhei'){ $arr = array ('этаж', 'этажа','этажей'); } elseif ($tip == 'garazhei'){ $arr = array ('гараж', 'гаража','гаражей'); } elseif ($tip == 'saun'){ $arr = array ('сауна', 'сауны','саун'); } $i=($chislo%100>4 && $chislo%100<20)? 2 : $arri[min($chislo%10, 5)]; return $chislo.$arr[$i]; } function dopimg($dopimage){ $doparr = preg_split("/\\r\\n|\\r|\\n/", $dopimage); $doparr = array_filter($doparr); return $doparr; } ?> </div> </div>
  • Usop Wilcha
  • Usop Wilcha's Avatar
14 Oct 2017 01:04 - 25 Oct 2017 01:37

Extra Fields Missing on Front End Submit Form

Category: English K2 Community

Hi

I'm using the Item Edit Form on the front end to allow the registered user to submit their entry before being approved by the admins

I think it was working fine before, but after using some other plugin, it started to be messed up, i already uninstall few plugin to revert back the condition but still no luck till now

The full page - postimg.org/image/1mcrrv3njv/a92e983c/

The error - s1.postimg.org/1xro8zef8f/submit1.gif

You can try the live dummy site here, password were available on the page itself, URL - [REMOVED]

Try to submit anything dummy, it will not directly being approved though, so no issue there

Please advise

Thanks

Joomla 3.7.5 (Seems quite an issue in updated 3.8)
K2 2.8
  • Paolo M. Scarpa
  • Paolo M. Scarpa's Avatar
14 Sep 2017 22:47

[SOLVED] Extra Fields > Missing options in the toolbar of the editor

Category: English K2 Community

Hi there,

I was here for another topic, but I stumbled upon this thread, that disclosed to me the universe of extra fields... :D

I never used them on K2, so far, but the question was interesting, thus I went to create an extra field group, to see what's happening (some day or other, I could have the need of).

Well, I can say that the solution is rather simple: use JCE Editor.

I'm a long time user of JCE Editor, from the age of J1.0, always delighted with the high performance of such script, that is, actually, a sort of evolution of TinyMCE, but with far more sophisticated features.

I'm currently using the PRO version all around, but I have in one of my test sites a "normal" free version installed, not even the last update, I think, where I carried out the test.

The result is that JCE loads perfectly all its buttons and functions in the extra field tab (if you choose "Textarea", of course)... below a link of the test screenshot:

jmp.sh/MUVI0Df

Mind that in the example the language of the GUI is Italian, where "campi aggiuntivi" means "extra fields".

You can download JCE here: www.joomlacontenteditor.net/, and I have to say that the support is one of the best I know (after subscription, at least), but, to solve the problem in subject, I deem there is no need of support at all.

Hope the above will be of help.
  • Usop Wilcha
  • Usop Wilcha's Avatar
30 Aug 2017 19:45

Display Joomla K2 Extra Fields only to Certain Users or Grou

Category: English K2 Community

Hi Emmanouil,

Yes, you're right here

Here's the scenario,

I'm creating a directory listing , which contents were submitted by the registered users

Some fields of the custom values only for the internal records only, not to be visible to the public, that's why i've planned to use the css tricks if possible since it can be manipulated with custom css module and acl related settings

All Extra Fields submitted by registered user (agent) - Visible by admin
e.g
Fields 1
Fields 2
Fields 3
Fields 4
Fields 5

Some extra fields were hidden from the public / guest views
e.g
Fields 1
Fields 3
Fields 5

Appreciate your helpful sharing here : )
  • Emmanouil
  • Emmanouil's Avatar
30 Aug 2017 18:07 - 30 Aug 2017 18:09

Display Joomla K2 Extra Fields only to Certain Users or Grou

Category: English K2 Community

Hi Danny,

just to be clear. You have a group of extra fields and you want one of them to be visible only to a certain user group right?

I have a solution but it not involves css in. If i understood right let me know and i will guide you.
  • Usop Wilcha
  • Usop Wilcha's Avatar
30 Aug 2017 15:15 - 30 Aug 2017 15:51

Display Joomla K2 Extra Fields only to Certain Users or Grou

Category: English K2 Community

Hi

I was looking on this post, which kinda resemblance with my small project requirements here but mine were just much simpler

I need a quick fix where only certain user groups that can view the extra fields value in the item page, does this achievable by using CSS only?

What i can think now is to use custom css module to hide certain value to be displayed, and this module access level will do the tricks

Unfortunately, currently i can't find the right css line that control the each extra fields value.. does it need some special tweak or located elsewhere unusually?

Is there any easier solution options available? kindly please share : )

Many thanks for your kindness

Regards
  • quang
  • quang's Avatar
31 May 2017 10:58

Bild unscharf - Bild wie Original anzeigen?

Category: Offizielle deutsche Gemeinschaft

Hallo

Nein es ist nie zu spät.
Ich danke dir viel Mal.

In welche Stelle soll ich diesen CSS geben.


Ich sehe im Modul 2 CSS Dateien:
1.) k2.css
2.) k2.print.css


Unter K2.Css

/**
* @version 2.7.x
* @package K2
* @author JoomlaWorks www.joomlaworks.net
* @copyright Copyright (c) 2006 - 2016 JoomlaWorks Ltd. All rights reserved.
* @license GNU/GPL license:http://www.gnu.org/copyleft/gpl.html
*/

/*
### Legend ###
Colors used:
#fafafa (light grey) used as background on all toolbars, category and user/author boxes
*/



/*
Common Elements
*/

/* --- Basic typography --- */
a:active,
a:focus {outline:0;}
img {border:none;}

/* --- Global K2 container --- */
#k2Container {padding:0 0 24px 0;}
body.contentpane #k2Container {padding:16px;} /* used in popups */

/* --- General padding --- */
.k2Padding {padding:4px;}

/* --- Clearing --- */
.clr {clear:both;height:0;line-height:0;display:block;float:none;padding:0;margin:0;border:none;}

/* --- Striped rows (add a different background color enable stripped rows in various listings with K2 content) --- */
.even {padding:2px;}
.odd {padding:2px;}

/* --- RSS feed icon --- */
div.k2FeedIcon {padding:4px 8px;}
div.k2FeedIcon a,
div.k2FeedIcon a:hover {display:block;float:right;margin:0;padding:0;width:16px;height:16px;}
div.k2FeedIcon a span,
div.k2FeedIcon a:hover span {display:none;}

/* --- Rating --- */
.itemRatingForm {display:block;vertical-align:middle;line-height:25px;float:left;}
.itemRatingLog {font-size:11px;margin:0;padding:0 0 0 4px;float:left;}
div.itemRatingForm .formLogLoading {background:url(../images/system/loading.gif) no-repeat left center;height:25px;padding:0 0 0 20px;}
.itemRatingList,
.itemRatingList a:hover,
.itemRatingList .itemCurrentRating {background:transparent url(../images/system/transparent_star.gif) left -1000px repeat-x;}
.itemRatingList {position:relative;float:left;width:125px;height:25px;overflow:hidden;list-style:none;margin:0;padding:0;background-position:left top;}
.itemRatingList li {display:inline;background:none;padding:0;}
.itemRatingList a,
.itemRatingList .itemCurrentRating {position:absolute;top:0;left:0;text-indent:-1000px;height:25px;line-height:25px;outline:none;overflow:hidden;border:none;cursor:pointer;}
.itemRatingList a:hover {background-position:left bottom;}
.itemRatingList a.one-star {width:20%;z-index:6;}
.itemRatingList a.two-stars {width:40%;z-index:5;}
.itemRatingList a.three-stars {width:60%;z-index:4;}
.itemRatingList a.four-stars {width:80%;z-index:3;}
.itemRatingList a.five-stars {width:100%;z-index:2;}
.itemRatingList .itemCurrentRating {z-index:1;background-position:0 center;margin:0;padding:0;}
span.siteRoot {display:none;}

/* --- CSS added with JavaScript --- */
.smallerFontSize {font-size:100%;line-height:inherit;}
.largerFontSize {font-size:150%;line-height:140%;}

/* --- ReCaptcha --- */
.recaptchatable .recaptcha_image_cell,
#recaptcha_table {background-color:#fff !important;}
#recaptcha_table {border-color:#ccc !important;}
#recaptcha_response_field {border-color:#ccc !important;background-color:#fff !important;}
.k2-recaptcha-v2 {margin-top:12px;}

/* --- Icon Font Support --- */
/* Reset for users with older overrides */
div.itemToolbar ul li a#fontDecrease,
div.itemToolbar ul li a#fontIncrease {font-size:14px;}
div.itemToolbar ul li a#fontDecrease img,
div.itemToolbar ul li a#fontIncrease img {background:none;}
a.ubUserFeedIcon,
a.ubUserFeedIcon:hover,
a.ubUserURL,
a.ubUserURL:hover,
span.ubUserEmail,
div.itemIsFeatured:before,
div.catItemIsFeatured:before,
div.userItemIsFeatured:before,
div.k2FeedIcon a,
div.k2FeedIcon a:hover,
div.itemToolbar ul li a#fontDecrease,
div.itemToolbar ul li a#fontIncrease {background:none;text-decoration:none;vertical-align:middle;font-family:'simple-line-icons';speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}

/* Font assignments */
div.catItemIsFeatured:before,
div.userItemIsFeatured:before,
div.itemIsFeatured:before {content:"\e09b";}
a#fontIncrease:before {content:"\e091";}
a#fontDecrease:before {content:"\e092";}
div.k2FeedIcon a:before,
a.ubUserFeedIcon:before {content:"\e03b";}
a.ubUserURL:before {content:"\e037";}
span.ubUserEmail:before {content:"\e086";}

/* --- Primary lists in modules --- */
div.k2LatestCommentsBlock ul,
div.k2TopCommentersBlock ul,
div.k2ItemsBlock ul,
div.k2LoginBlock ul,
div.k2UserBlock ul.k2UserBlockActions,
div.k2UserBlock ul.k2UserBlockRenderedMenu,
div.k2ArchivesBlock ul,
div.k2AuthorsListBlock ul,
div.k2CategoriesListBlock ul,
div.k2UsersBlock ul {margin:0;padding:0 4px;list-style:none;} /* Example CSS: padding:0;margin:0;list-style:none; */

div.k2LatestCommentsBlock ul li,
div.k2TopCommentersBlock ul li,
div.k2ItemsBlock ul li,
div.k2LoginBlock ul li,
div.k2UserBlock ul.k2UserBlockActions li,
div.k2UserBlock ul.k2UserBlockRenderedMenu li,
div.k2ArchivesBlock ul li,
div.k2AuthorsListBlock ul li,
div.k2CategoriesListBlock ul li,
div.k2UsersBlock ul li {display:block;padding:0;margin:0 0 24px 0;} /* Example CSS: display:block;clear:both;padding:2px 0;border-bottom:1px dotted #ccc; */

.clearList {display:none;float:none;clear:both;} /* this class is used to clear all previous floating list elements */
.lastItem {border:none;} /* class appended on last list item */

/* --- Avatars --- */
.k2Avatar img {display:block;float:left;background:#fff;border:1px solid #ddd;border-radius:50%;padding:2px;margin:2px 4px 4px 0;}

/* --- Read more --- */
a.k2ReadMore {}
a.k2ReadMore:hover {}

/* --- Pagination --- */
div.k2Pagination {padding:8px;margin:24px 0 4px 0;text-align:center;}
div.k2Pagination ul {text-align:center;}
div.k2Pagination ul li {display:inline-block;margin:0;padding:0;}
div.k2Pagination ul li a {display:inline-block;padding:4px 8px;margin:0 8px;border:1px solid #ddd;border-radius:4px;vertical-align:middle;background:#fff;text-decoration:none;}
div.k2Pagination ul li a:hover {background:#fafafa;cursor:pointer;}
div.k2Pagination ul li.active a {background:#fafafa;}
div.k2Pagination ul li a span {vertical-align:middle;}

/* --- Extra fields: CSV data styling --- */
table.csvData {}
table.csvData tr th {}
table.csvData tr td {}

/* --- Featured flags: the classes are repeated further below to indicate placement in the CSS structure --- */
div.itemIsFeatured,
div.catItemIsFeatured,
div.userItemIsFeatured {position:relative;}
div.itemIsFeatured:before,
div.catItemIsFeatured:before,
div.userItemIsFeatured:before {position:absolute;top:10px;right:10px;color:#CF1919;font-size:20px;}

/* --- Separators --- */
.k2HorizontalSep {border:0;padding:0;margin:0 8px;}

/* --- Edit Buttons --- */
span.itemEditLink,
span.catItemEditLink,
span.userItemEditLink {float:right;display:block;padding:0;margin:0;width:120px;text-align:right;}
span.itemEditLink a,
span.catItemEditLink a,
span.userItemEditLink a {display:inline-block;padding:4px 8px;margin:0;background:#2d96dd;color:#fff;border:0;border-radius:4px;font-size:11px;line-height:100%;font-weight:bold;text-align:center;text-decoration:none;}
span.itemEditLink a:hover,
span.catItemEditLink a:hover,
span.userItemEditLink a:hover {background:#217dbb;}



/*
Component - Item view
*/
a.itemPrintThisPage {display:block;width:160px;margin:4px auto 16px;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:14px;}
a.itemPrintThisPage:hover {background:#fafafa;text-decoration:none;}

div.itemView {padding:8px 0 24px 0;margin:0 0 24px 0;} /* this is the item container for this view */
div.itemIsFeatured {} /* Attach a class for each featured item */

span.itemEditLink {}
span.itemEditLink a {}
span.itemEditLink a:hover {}

div.itemHeader {}
div.itemHeader span.itemDateCreated {color:#999;font-size:11px;}
div.itemHeader h2.itemTitle {padding:10px 0 4px 0;margin:0;}
div.itemHeader h2.itemTitle span {}
div.itemHeader h2.itemTitle span sup {font-size:12px;color:#CF1919;text-decoration:none;} /* "Featured" presented in superscript */
div.itemHeader span.itemAuthor {display:block;padding:0;margin:0;}
div.itemHeader span.itemAuthor a:before {content:" ";}
div.itemHeader span.itemAuthor a {}
div.itemHeader span.itemAuthor a:hover {}

div.itemToolbar {padding:8px;margin:16px 0 0 0;background:#fafafa;border-radius:4px;}
div.itemToolbar ul {text-align:right;list-style:none;padding:0;margin:0;}
div.itemToolbar ul li {display:inline;list-style:none;padding:0 4px 0 8px;margin:0;border-left:1px solid #ccc;text-align:center;background:none;font-size:12px;}
div.itemToolbar ul > li:first-child {border:none;} /* remove the first CSS border from the left of the toolbar */
div.itemToolbar ul li a {font-size:12px;font-weight:normal;}
div.itemToolbar ul li a:hover {}
div.itemToolbar ul li a span {}
div.itemToolbar ul li a.itemPrintLink {}
div.itemToolbar ul li a.itemPrintLink span {}
div.itemToolbar ul li a.itemEmailLink {}
div.itemToolbar ul li a.itemEmailLink span {}
div.itemToolbar ul li a.itemVideoLink {}
div.itemToolbar ul li a.itemVideoLink span {}
div.itemToolbar ul li a.itemImageGalleryLink {}
div.itemToolbar ul li a.itemImageGalleryLink span {}
div.itemToolbar ul li a.itemCommentsLink {}
div.itemToolbar ul li a.itemCommentsLink span {}
div.itemToolbar ul li a img {vertical-align:middle;}
div.itemToolbar ul li span.itemTextResizerTitle {}
div.itemToolbar ul li a#fontDecrease {margin:0 0 0 2px;}
div.itemToolbar ul li a#fontDecrease img {width:13px;height:13px;font-size:13px;}
div.itemToolbar ul li a#fontIncrease {margin:0 0 0 2px;}
div.itemToolbar ul li a#fontIncrease img {width:13px;height:13px;font-size:13px;}
div.itemToolbar ul li a#fontDecrease span,
div.itemToolbar ul li a#fontIncrease span {display:none;}

div.itemRatingBlock {padding:8px 0;}
div.itemRatingBlock span {display:block;float:left;font-style:normal;padding:0 4px 0 0;margin:0;color:#999;}

div.itemBody {padding:8px 0;margin:0;}

div.itemImageBlock {padding:8px 0;margin:0 0 16px 0;}
span.itemImage {display:block;text-align:center;margin:0 0 8px 0;}
span.itemImage img {max-width:100%;height:auto;}
span.itemImageCaption {color:#666;float:left;display:block;font-size:11px;}
span.itemImageCredits {color:#999;float:right;display:block;font-style:italic;font-size:11px;}
@media screen and ( max-width:600px ){
span.itemImageCaption,
span.itemImageCredits {float:none;text-align:center;}
}

div.itemIntroText {color:#444;font-size:18px;font-weight:bold;line-height:24px;padding:4px 0 12px 0;}
div.itemIntroText img {}

div.itemFullText {}
div.itemFullText h3 {margin:0;padding:16px 0 4px 0;}
div.itemFullText p {}
div.itemFullText img {}

div.itemExtraFields {margin:16px 0 0 0;padding:8px 0 0 0;border-top:1px dotted #ddd;}
div.itemExtraFields h3 {margin:0;padding:0 0 8px 0;}
div.itemExtraFields ul {margin:0;padding:0;list-style:none;}
div.itemExtraFields ul li {display:block;}
div.itemExtraFields ul li span.itemExtraFieldsLabel {display:block;float:left;font-weight:bold;margin:0 4px 0 0;width:30%;}
div.itemExtraFields ul li span.itemExtraFieldsValue {}

div.itemContentFooter {display:block;text-align:right;padding:4px 0;margin:16px 0 4px 0;color:#999;}
span.itemHits {float:left;}
span.itemDateModified {}

div.itemSocialSharing {padding:8px 0;}
div.itemTwitterButton {float:left;margin:2px 24px 0 0;}
div.itemFacebookButton {float:left;margin-right:24px;width:200px;}
div.itemGooglePlusOneButton {}

div.itemLinks {margin:16px 0;padding:0;}

div.itemCategory {}
div.itemCategory span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.itemCategory a {}
div.itemTagsBlock {}
div.itemTagsBlock span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.itemTagsBlock ul.itemTags {list-style:none;padding:0;margin:0;display:inline;}
div.itemTagsBlock ul.itemTags li {display:inline;list-style:none;padding:0 4px 0 0;margin:0;text-align:center;}
div.itemTagsBlock ul.itemTags li a:before {content:"#";}
div.itemTagsBlock ul.itemTags li a {}
div.itemTagsBlock ul.itemTags li a:hover {}

div.itemAttachmentsBlock {padding:4px;border-bottom:1px dotted #ccc;}
div.itemAttachmentsBlock span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.itemAttachmentsBlock ul.itemAttachments {list-style:none;padding:0;margin:0;display:inline;}
div.itemAttachmentsBlock ul.itemAttachments li {display:inline;list-style:none;padding:0 4px;margin:0;text-align:center;}
div.itemAttachmentsBlock ul.itemAttachments li a {}
div.itemAttachmentsBlock ul.itemAttachments li a:hover {}
div.itemAttachmentsBlock ul.itemAttachments li span {font-size:10px;color:#999;font-weight:normal;}

/* Author block */
div.itemAuthorBlock {background:#fafafa;border:1px solid #ddd;border-radius:4px;margin:0 0 16px 0;padding:8px;}
div.itemAuthorBlock img.itemAuthorAvatar {float:left;display:block;background:#fff;padding:4px;border:1px solid #ddd;margin:0 8px 0 0;border-radius:50%;}
div.itemAuthorBlock div.itemAuthorDetails {margin:0;padding:4px 0 0 0;}
div.itemAuthorBlock div.itemAuthorDetails h3.authorName {margin:0 0 4px 0;padding:0;}
div.itemAuthorBlock div.itemAuthorDetails h3.authorName a {font-size:16px;}
div.itemAuthorBlock div.itemAuthorDetails h3.authorName a:hover {}
div.itemAuthorBlock div.itemAuthorDetails p {}
div.itemAuthorBlock div.itemAuthorDetails span.itemAuthorUrl {font-weight:bold;color:#555;}
div.itemAuthorBlock div.itemAuthorDetails span.itemAuthorEmail {font-weight:bold;color:#555;}
div.itemAuthorBlock div.itemAuthorDetails span.itemAuthorUrl a,
div.itemAuthorBlock div.itemAuthorDetails span.itemAuthorEmail a {font-weight:normal;}

/* Author latest */
div.itemAuthorLatest {margin-bottom:16px;padding:0;}
div.itemAuthorLatest h3 {}
div.itemAuthorLatest ul {}
div.itemAuthorLatest ul li {}
div.itemAuthorLatest ul li a {}
div.itemAuthorLatest ul li a:hover {}

/* Related by tag */
div.itemRelated {margin-bottom:16px;padding:0;} /* Add overflow-x:scroll; if you want to enable the scrolling features, as explained in item.php */
div.itemRelated h3 {}
div.itemRelated ul {}
div.itemRelated ul li {}
div.itemRelated ul li.k2ScrollerElement {float:left;overflow:hidden;border:1px solid #ddd;padding:4px;margin:0 4px 4px 0;background:#fff;} /* you need to insert this class in the related li element in item.php for this styling to take effect */
div.itemRelated ul li.clr {clear:both;height:0;line-height:0;display:block;float:none;padding:0;margin:0;border:none;}
a.itemRelTitle {}
div.itemRelCat {}
div.itemRelCat a {}
div.itemRelAuthor {}
div.itemRelAuthor a {}
img.itemRelImg {}
div.itemRelIntrotext {}
div.itemRelFulltext {}
div.itemRelMedia {}
div.itemRelImageGallery {}

/* Video */
div.itemVideoBlock {margin:0 0 16px 0;padding:16px;background:#010101 url(../images/system/videoplayer-bg.gif) repeat-x bottom;color:#eee;}
div.itemVideoBlock div.itemVideoEmbedded {text-align:center;} /* for embedded videos (not using AllVideos) */
div.itemVideoBlock span.itemVideo {display:block;overflow:hidden;}
div.itemVideoBlock span.itemVideoCaption {color:#eee;float:left;display:block;font-size:11px;font-weight:bold;width:60%;}
div.itemVideoBlock span.itemVideoCredits {color:#eee;float:right;display:block;font-style:italic;font-size:11px;width:35%;text-align:right;}
@media screen and ( max-width:600px ){
div.itemVideoBlock span.itemVideoCaption,
div.itemVideoBlock span.itemVideoCredits {float:none;text-align:center;width:auto;}
}

/* Image Gallery */
div.itemImageGallery {margin:0 0 16px 0;padding:0;}

/* Article navigation */
div.itemNavigation {padding:8px;margin:0 0 24px 0;background:#fafafa;border-radius:4px;}
div.itemNavigation span.itemNavigationTitle {color:#999;}
div.itemNavigation a.itemPrevious {padding:0 12px;}
div.itemNavigation a.itemNext {padding:0 12px;}

/* Comments */
div.itemComments {background:#fafafa;border:1px solid #ddd;border-radius:4px;padding:16px;}

div.itemComments ul.itemCommentsList {margin:0 0 16px;padding:0;list-style:none;}
div.itemComments ul.itemCommentsList li {display:block;padding:4px;margin:0 0 8px 0;border-bottom:1px solid #ddd;background:#fff;}
div.itemComments ul.itemCommentsList li.authorResponse {background:#f5fdff;}
div.itemComments ul.itemCommentsList li.unpublishedComment {background:#ffeaea;}
div.itemComments ul.itemCommentsList li img {float:left;margin:4px 4px 4px 0;padding:4px;}
div.itemComments ul.itemCommentsList li span.commentDate {padding:0 4px 0 0;margin:0 8px 0 0;border-right:1px solid #ccc;font-weight:bold;font-size:14px;}
div.itemComments ul.itemCommentsList li span.commentAuthorName {font-weight:bold;font-size:14px;}
div.itemComments ul.itemCommentsList li p {padding:4px 0;}
div.itemComments ul.itemCommentsList li span.commentAuthorEmail {display:none;}
div.itemComments ul.itemCommentsList li span.commentLink {float:right;margin-left:8px;}
div.itemComments ul.itemCommentsList li span.commentLink a {font-size:11px;color:#999;text-decoration:underline;}
div.itemComments ul.itemCommentsList li span.commentLink a:hover {font-size:11px;color:#555;text-decoration:underline;}

div.itemComments ul.itemCommentsList li span.commentToolbar {display:block;clear:both;}
div.itemComments ul.itemCommentsList li span.commentToolbar a {font-size:11px;color:#999;text-decoration:underline;margin-right:4px;}
div.itemComments ul.itemCommentsList li span.commentToolbar a:hover {font-size:11px;color:#555;text-decoration:underline;}
div.itemComments ul.itemCommentsList li span.commentToolbarLoading {background:url(../images/system/searchLoader.gif) no-repeat 100% 50%;}

div.itemCommentsPagination {padding:4px;margin:0 0 24px 0;}
/* Joomla 1.5 - 2.5 */
div.itemCommentsPagination span.pagination {display:block;float:right;clear:both;}
/* Joomla 3.x */
div.itemCommentsPagination ul {text-align:center;}
div.itemCommentsPagination ul li {display:inline-block;margin:0;padding:0;}
div.itemCommentsPagination ul li a {display:inline-block;padding:4px 8px;margin:0 8px;border:1px solid #ddd;border-radius:4px;vertical-align:middle;background:#fff;text-decoration:none;}
div.itemCommentsPagination ul li a:hover {background:#fafafa;cursor:pointer;}
div.itemCommentsPagination ul li.active a {background:#fafafa;}
div.itemCommentsPagination ul li a span {vertical-align:middle;}

div.itemCommentsForm h3 {margin:0;padding:0 0 4px 0;}
div.itemCommentsForm p.itemCommentsFormNotes {border-top:2px solid #ccc;padding:8px 0;}
div.itemCommentsForm form {margin:0;padding:0;width:100%;}
div.itemCommentsForm form label.formComment,
div.itemCommentsForm form label.formName,
div.itemCommentsForm form label.formEmail,
div.itemCommentsForm form label.formUrl,
div.itemCommentsForm form label.formRecaptcha {display:block;margin:12px 0 0 2px;}
div.itemCommentsForm form textarea.inputbox {display:block;width:100%;height:200px;margin:0;padding:8px;box-sizing:border-box;}
div.itemCommentsForm form input.inputbox {display:block;width:100%;margin:0;padding:8px;line-height:150%;height:auto;box-sizing:border-box;}
div.itemCommentsForm form input#submitCommentButton {display:block;margin:16px 0 0 0;padding:8px 16px;background:#2d96dd;color:#fff;border:0;border-radius:4px;font-size:16px;font-weight:bold;}
div.itemCommentsForm form input#submitCommentButton:hover {background:#217dbb;}
div.itemCommentsForm form span#formLog {margin:24px;padding:8px 12px;border-radius:4px;text-align:center;display:none;}
div.itemCommentsForm form span#formLog.k2FormLogError {display:block;background:#f00;color:#fff;}
div.itemCommentsForm form span#formLog.k2FormLogSuccess {display:block;background:#18ac00;color:#fff;}
div.itemCommentsForm form .formLogLoading {background:url(../images/system/loading.gif) no-repeat left center;}

div.itemCommentsLoginFirst {display:block;margin:24px;padding:8px 12px;background:#f00;color:#fff;border-radius:4px;}

/* "Report comment" form */
div.k2ReportCommentFormContainer {padding:8px;width:480px;margin:0 auto;}
div.k2ReportCommentFormContainer blockquote {width:462px;background:#fafafa;border:1px solid #ddd;padding:8px;margin:0 0 8px 0;}
div.k2ReportCommentFormContainer blockquote span.quoteIconLeft {font-style:italic;font-weight:bold;font-size:40px;color:#135CAE;line-height:30px;vertical-align:top;display:block;float:left;}
div.k2ReportCommentFormContainer blockquote span.quoteIconRight {font-style:italic;font-weight:bold;font-size:40px;color:#135CAE;line-height:30px;vertical-align:top;display:block;float:right;}
div.k2ReportCommentFormContainer blockquote span.theComment {font-style:italic;font-size:12px;font-weight:normal;color:#000;padding:0 4px;}
div.k2ReportCommentFormContainer form label {display:block;font-weight:bold;}
div.k2ReportCommentFormContainer form input,
div.k2ReportCommentFormContainer form textarea {display:block;border:1px solid #ddd;font-size:12px;padding:2px;margin:0 0 8px 0;width:474px;}
div.k2ReportCommentFormContainer form #recaptcha {margin-bottom:24px;}
div.k2ReportCommentFormContainer form span#formLog {margin:24px;padding:8px 12px;background:#fafafa;border-radius:4px;text-align:center;display:none;}
div.k2ReportCommentFormContainer form .formLogLoading {background:url(../images/system/loading.gif) no-repeat left center;}

/* Back to top link */
div.itemBackToTop {text-align:right;}
div.itemBackToTop a {text-decoration:underline;}
div.itemBackToTop a:hover {text-decoration:underline;}



/*
Component - Itemlist view (category)
*/

div.itemListCategoriesBlock {}

/* --- Category block --- */
div.itemListCategory {background:#fafafa;border:1px solid #ddd;border-radius:4px;margin:0 0 24px 0;padding:8px;}
span.catItemAddLink {display:block;padding:8px 0;margin:0 0 4px 0;border-bottom:1px dotted #ccc;text-align:right;}
span.catItemAddLink a {padding:4px 16px;border:1px solid #ddd;background:#fafafa;text-decoration:none;}
span.catItemAddLink a:hover {background:#ffffcc;}
div.itemListCategory img {float:left;display:block;margin:0 8px 0 0;}
div.itemListCategory h2 {}
div.itemListCategory p {}

/* --- Sub-category block --- */
div.itemListSubCategories {}
div.itemListSubCategories h3 {}
div.subCategoryContainer {float:left;}
div.subCategoryContainerLast {} /* this class is appended to the last container on each row of items (useful when you want to set 0 padding/margin to the last container) */
div.subCategory {background:#fafafa;border:1px solid #ddd;margin:4px;padding:8px;}
div.subCategory a.subCategoryImage,
div.subCategory a.subCategoryImage:hover {text-align:center;display:block;}
div.subCategory a.subCategoryImage img,
div.subCategory a.subCategoryImage:hover img {margin:0 8px 0 0;}
div.subCategory h2 {}
div.subCategory h2 a {}
div.subCategory h2 a:hover {}
div.subCategory p {}

/* --- Item groups --- */
div.itemList {}
div#itemListLeading {}
div#itemListPrimary {}
div#itemListSecondary {}
div#itemListLinks {background:#fafafa;border:1px solid #ddd;margin:8px 0;padding:8px;}

div.itemContainer {float:left;}
div.itemContainerLast {} /* this class is appended to the last container on each row of items (useful when you want to set 0 padding/margin to the last container) */
@media screen and ( max-width:600px ){
div.itemContainer {float:none;display:block;width:100%!important;}
}

/* --- Item block for each item group --- */
div.catItemView {margin-bottom:48px;padding:4px;} /* this is the container for each K2 item on this view */

/* Additional class appended to the element above for further styling per group item */
div.groupLeading {}
div.groupPrimary {}
div.groupSecondary {}
div.groupLinks {padding:0;margin:0;}

div.catItemIsFeatured {} /* Attach a class for each featured item */

span.catItemEditLink {}
span.catItemEditLink a {}
span.catItemEditLink a:hover {}

div.catItemHeader {}
div.catItemHeader span.catItemDateCreated {color:#999;font-size:11px;}
div.catItemHeader h3.catItemTitle {padding:10px 0 4px 0;margin:0;}
div.catItemHeader h3.catItemTitle span {}
div.catItemHeader h3.catItemTitle span sup {font-size:12px;color:#CF1919;text-decoration:none;} /* superscript */
div.catItemHeader span.catItemAuthor {display:block;padding:0;margin:0;}
div.catItemHeader span.catItemAuthor a {}
div.catItemHeader span.catItemAuthor a:hover {}

div.catItemRatingBlock {padding:8px 0;}
div.catItemRatingBlock span {display:block;float:left;font-style:normal;padding:0 4px 0 0;margin:0;color:#999;}

div.catItemBody {padding:8px 0;margin:0;}

div.catItemImageBlock {padding:8px 0;margin:0 0 16px 0;}
span.catItemImage {display:block;text-align:center;margin:0 0 8px 0;}
span.catItemImage img {max-width:100%;height:auto;}

div.catItemIntroText {font-size:inherit;font-weight:normal;line-height:inherit;padding:4px 0 12px 0;}
div.catItemIntroText img {}

div.catItemExtraFields,
div.genericItemExtraFields {margin:16px 0 0 0;padding:8px 0 0 0;border-top:1px dotted #ddd;}
div.catItemExtraFields h4,
div.genericItemExtraFields h4 {margin:0;padding:0 0 8px 0;}
div.catItemExtraFields ul,
div.genericItemExtraFields ul {margin:0;padding:0;list-style:none;}
div.catItemExtraFields ul li,
div.genericItemExtraFields ul li {display:block;}
div.catItemExtraFields ul li span.catItemExtraFieldsLabel,
div.genericItemExtraFields ul li span.genericItemExtraFieldsLabel {display:block;float:left;font-weight:bold;margin:0 4px 0 0;width:30%;}
div.catItemExtraFields ul li span.catItemExtraFieldsValue {}

div.catItemLinks {margin:0 0 16px 0;padding:0;}

div.catItemHitsBlock {padding:4px 0;}
span.catItemHits {}

div.catItemCategory {padding:4px 0;}
div.catItemCategory span {font-weight:bold;padding:0 4px 0 0;}
div.catItemCategory a {}

div.catItemTagsBlock {padding:4px 0;}
div.catItemTagsBlock span {font-weight:bold;padding:0 4px 0 0;}
div.catItemTagsBlock ul.catItemTags {list-style:none;padding:0;margin:0;display:inline;}
div.catItemTagsBlock ul.catItemTags li {display:inline;list-style:none;padding:0 4px 0 0;margin:0;text-align:center;}
div.catItemTagsBlock ul.catItemTags li a:before {content:"#";}
div.catItemTagsBlock ul.catItemTags li a {}
div.catItemTagsBlock ul.catItemTags li a:hover {}

div.catItemAttachmentsBlock {padding:4px;border-bottom:1px dotted #ccc;}
div.catItemAttachmentsBlock span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.catItemAttachmentsBlock ul.catItemAttachments {list-style:none;padding:0;margin:0;display:inline;}
div.catItemAttachmentsBlock ul.catItemAttachments li {display:inline;list-style:none;padding:0 4px;margin:0;text-align:center;}
div.catItemAttachmentsBlock ul.catItemAttachments li a {}
div.catItemAttachmentsBlock ul.catItemAttachments li a:hover {}
div.catItemAttachmentsBlock ul.catItemAttachments li span {font-size:10px;color:#999;font-weight:normal;}

/* Video */
div.catItemVideoBlock {margin:0 0 16px 0;padding:16px;background:#010101 url(../images/system/videoplayer-bg.gif) repeat-x bottom;}
div.catItemVideoBlock div.catItemVideoEmbedded {text-align:center;} /* for embedded videos (not using AllVideos) */
div.catItemVideoBlock span.catItemVideo {display:block;}

/* Image Gallery */
div.catItemImageGallery {margin:0 0 16px 0;padding:0;}

/* Anchor link to comments */
div.catItemCommentsLink {display:inline;margin:0 8px 0 0;padding:0 8px 0 0;border-right:1px solid #ccc;}
div.catItemCommentsLink a {}
div.catItemCommentsLink a:hover {}

/* Read more link */
div.catItemReadMore {display:inline;}
div.catItemReadMore a {}
div.catItemReadMore a:hover {}

/* Modified date */
span.catItemDateModified {display:block;text-align:right;padding:4px;margin:4px 0;color:#999;border-top:1px solid #ddd;}



/*
Component - Itemlist view (user)
*/

/* User info block */
div.userView {}
div.userBlock {background:#fafafa;border:1px solid #ddd;border-radius:4px;margin:0 0 24px 0;padding:8px;}

span.userItemAddLink {display:block;padding:8px 0;margin:0 0 4px 0;border-bottom:1px dotted #ccc;text-align:right;}
span.userItemAddLink a {padding:4px 16px;border:1px solid #ddd;background:#fafafa;text-decoration:none;}
span.userItemAddLink a:hover {background:#ffffcc;}

div.userBlock img {display:block;float:left;background:#fff;padding:4px;border:1px solid #ddd;margin:0 8px 0 0;border-radius:50%;}
div.userBlock h2 {}
div.userBlock div.userDescription {padding:4px 0;}
div.userBlock div.userAdditionalInfo {padding:4px 0;margin:8px 0 0 0;}
span.userURL {font-weight:bold;color:#555;display:block;}
span.userEmail {font-weight:bold;color:#555;display:block;}

div.userItemList {}

/* User items */
div.userItemView {margin-bottom:48px;} /* this is the item container for this view */
div.userItemIsFeatured {} /* Attach a class for each featured item */

div.userItemViewUnpublished {opacity:0.9;border:4px dashed #ccc;background:#fffff2;padding:8px;margin:8px 0;}

span.userItemEditLink {}
span.userItemEditLink a {}
span.userItemEditLink a:hover {}

div.userItemHeader {}
div.userItemHeader span.userItemDateCreated {color:#999;font-size:11px;}
div.userItemHeader h3.userItemTitle {padding:10px 0 4px 0;margin:0;}
div.userItemHeader h3.userItemTitle span sup {font-size:12px;color:#CF1919;text-decoration:none;} /* "Unpublished" presented in superscript */

div.userItemBody {padding:8px 0;margin:0;}

div.userItemImageBlock {padding:0;margin:0;float:left;}
span.userItemImage {display:block;text-align:center;margin:0 8px 8px 0;}
span.userItemImage img {max-width:100%;height:auto;}

div.userItemIntroText {font-size:inherit;font-weight:normal;line-height:inherit;padding:4px 0 12px 0;}
div.userItemIntroText img {}

div.userItemLinks {margin:0 0 16px 0;padding:0;}

div.userItemCategory {padding:4px 0;}
div.userItemCategory span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.userItemCategory a {}

div.userItemTagsBlock {padding:4px 0;}
div.userItemTagsBlock span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.userItemTagsBlock ul.userItemTags {list-style:none;padding:0;margin:0;display:inline;}
div.userItemTagsBlock ul.userItemTags li {display:inline;list-style:none;padding:0 4px 0 0;margin:0;text-align:center;}
div.userItemTagsBlock ul.userItemTags li a:before {content:"#";}
div.userItemTagsBlock ul.userItemTags li a {}
div.userItemTagsBlock ul.userItemTags li a:hover {}

/* Anchor link to comments */
div.userItemCommentsLink {display:inline;margin:0 8px 0 0;padding:0 8px 0 0;border-right:1px solid #ccc;}
div.userItemCommentsLink a {}
div.userItemCommentsLink a:hover {}

/* Read more link */
div.userItemReadMore {display:inline;}
div.userItemReadMore a {}
div.userItemReadMore a:hover {}



/*
Component - Itemlist view (tag)
*/
div.tagView {}

div.tagItemList {}

div.tagItemView {margin-bottom:48px;} /* this is the item container for this view */

div.tagItemHeader {}
div.tagItemHeader span.tagItemDateCreated {color:#999;font-size:11px;}
div.tagItemHeader h2.tagItemTitle {padding:10px 0 4px 0;margin:0;}

div.tagItemBody {padding:8px 0;margin:0;}

div.tagItemImageBlock {padding:0;margin:0;float:left;}
span.tagItemImage {display:block;text-align:center;margin:0 8px 8px 0;}
span.tagItemImage img {max-width:100%;height:auto;}

div.tagItemIntroText {font-size:inherit;font-weight:normal;line-height:inherit;padding:4px 0 12px 0;}
div.tagItemIntroText img {}

div.tagItemExtraFields {}
div.tagItemExtraFields h4 {}
div.tagItemExtraFields ul {}
div.tagItemExtraFields ul li {}
div.tagItemExtraFields ul li span.tagItemExtraFieldsLabel {}
div.tagItemExtraFields ul li span.tagItemExtraFieldsValue {}

div.tagItemCategory {display:inline;margin:0 8px 0 0;padding:0 8px 0 0;border-right:1px solid #ccc;}
div.tagItemCategory span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.tagItemCategory a {}

/* Read more link */
div.tagItemReadMore {display:inline;}
div.tagItemReadMore a {}
div.tagItemReadMore a:hover {}



/*
Component - Itemlist view (generic)
*/
div.genericView {}

div.genericItemList {}

div.genericItemView {margin-bottom:48px;} /* this is the item container for this view */

div.genericItemHeader {}
div.genericItemHeader span.genericItemDateCreated {color:#999;font-size:11px;}
div.genericItemHeader h2.genericItemTitle {padding:10px 0 4px 0;margin:0;}

div.genericItemBody {padding:8px 0;margin:0;}

div.genericItemImageBlock {padding:0;margin:0;float:left;}
span.genericItemImage {display:block;text-align:center;margin:0 8px 8px 0;}
span.genericItemImage img {max-width:100%;height:auto;}

div.genericItemIntroText {font-size:inherit;font-weight:normal;line-height:inherit;padding:4px 0 12px 0;}
div.genericItemIntroText img {}

div.genericItemExtraFields {}
div.genericItemExtraFields h4 {}
div.genericItemExtraFields ul {}
div.genericItemExtraFields ul li {}
div.genericItemExtraFields ul li span.genericItemExtraFieldsLabel {}
div.genericItemExtraFields ul li span.genericItemExtraFieldsValue {}

div.genericItemCategory {display:inline;margin:0 8px 0 0;padding:0 8px 0 0;border-right:1px solid #ccc;}
div.genericItemCategory span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.genericItemCategory a {}

/* Read more link */
div.genericItemReadMore {display:inline;}
div.genericItemReadMore a {}
div.genericItemReadMore a:hover {}

/* No results found message */
div#genericItemListNothingFound {padding:40px;text-align:center;}
div#genericItemListNothingFound p {font-size:20px;color:#999;}

/* --- Google Search (use Firebug or similar tools to inspect the generated HTML, then style accordingly --- */
#k2GoogleSearchContainer .gsc-control {width:auto !important;}
#k2GoogleSearchContainer .gsc-control .gsc-above-wrapper-area,
#k2GoogleSearchContainer .gsc-control .gsc-resultsHeader,
#k2GoogleSearchContainer .gsc-control .gsc-url-bottom {display:none !important;} /* Hide unneeded elements of the results page */



/*
Component - Latest view
*/

div.latestItemsContainer {float:left;}
@media screen and ( max-width:600px ){
div.latestItemsContainer {float:none;display:block;width:100%!important;}
}

/* Category info block */
div.latestItemsCategory {background:#fafafa;border:1px solid #ddd;border-radius:4px;margin:0 8px 24px 0;padding:8px;}
div.latestItemsCategoryImage {text-align:center;}
div.latestItemsCategoryImage img {margin:0 8px 0 0;}
div.latestItemsCategory h2 {}
div.latestItemsCategory p {}

/* User info block */
div.latestItemsUser {background:#fafafa;border:1px solid #ddd;border-radius:4px;margin:0 8px 24px 0;padding:8px;}
div.latestItemsUser img {display:block;float:left;background:#fff;padding:4px;border:1px solid #ddd;margin:0 8px 0 0;border-radius:50%;}
div.latestItemsUser h2 {}
div.latestItemsUser p.latestItemsUserDescription {padding:4px 0;}
div.latestItemsUser p.latestItemsUserAdditionalInfo {padding:4px 0;margin:8px 0 0 0;}
span.latestItemsUserURL {font-weight:bold;color:#555;display:block;}
span.latestItemsUserEmail {font-weight:bold;color:#555;display:block;}

/* Latest items list */
div.latestItemList {padding:0 8px 8px 0;}

div.latestItemView {} /* this is the item container for this view */

div.latestItemHeader {}
div.latestItemHeader h3.latestItemTitle {padding:10px 0 4px 0;margin:0;}

span.latestItemDateCreated {color:#999;font-size:11px;}

div.latestItemBody {padding:8px 0;margin:0;}

div.latestItemImageBlock {padding:0;margin:0;float:left;}
span.latestItemImage {display:block;text-align:center;margin:0 8px 8px 0;}
span.latestItemImage img {max-width:100%;height:auto;}
@media screen and ( max-width:600px ){
div.latestItemImageBlock {float:none;display:block;}
}

div.latestItemIntroText {font-size:inherit;font-weight:normal;line-height:inherit;padding:4px 0 12px 0;}
div.latestItemIntroText img {}

div.latestItemLinks {margin:0 0 16px 0;padding:0;}

div.latestItemCategory {padding:4px 0;}
div.latestItemCategory span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.latestItemCategory a {}

div.latestItemTagsBlock {padding:4px 0;}
div.latestItemTagsBlock span {font-weight:bold;color:#555;padding:0 4px 0 0;}
div.latestItemTagsBlock ul.latestItemTags {list-style:none;padding:0;margin:0;display:inline;}
div.latestItemTagsBlock ul.latestItemTags li {display:inline;list-style:none;padding:0 4px 0 0;margin:0;text-align:center;}
div.latestItemTagsBlock ul.latestItemTags li a:before {content:"#";}
div.latestItemTagsBlock ul.latestItemTags li a {}
div.latestItemTagsBlock ul.latestItemTags li a:hover {}

/* Video */
div.latestItemVideoBlock {margin:0 0 16px 0;padding:16px;background:#010101 url(../images/system/videoplayer-bg.gif) repeat-x bottom;}
div.latestItemVideoBlock span.latestItemVideo {display:block;}

/* Anchor link to comments */
div.latestItemCommentsLink {display:inline;margin:0 8px 0 0;padding:0 8px 0 0;border-right:1px solid #ccc;}
div.latestItemCommentsLink a {}
div.latestItemCommentsLink a:hover {}

/* Read more link */
div.latestItemReadMore {display:inline;}
div.latestItemReadMore a {}
div.latestItemReadMore a:hover {}

/* Items presented in a list */
h2.latestItemTitleList {padding:2px 0;margin:8px 0 2px 0;border-bottom:1px dotted #ccc;}



/*
Component - Register & profile page views (register.php & profile.php)
*/
.k2AccountPage {}
.k2AccountPage table {}
.k2AccountPage table tr th {}
.k2AccountPage table tr td {}
.k2AccountPage table tr td label {white-space:nowrap;}
img.k2AccountPageImage {border:4px solid #ddd;margin:10px 0;padding:0;display:block;}
.k2AccountPage div.k2AccountPageNotice {padding:8px;}
.k2AccountPage div.k2AccountPageUpdate {border-top:1px dotted #ddd;margin:8px 0;padding:8px;text-align:right;}

.k2AccountPage th.k2ProfileHeading {text-align:left;font-size:18px;padding:8px;background:#f6f6f6;}
.k2AccountPage td#userAdminParams {padding:0;margin:0;}
.k2AccountPage table.admintable td.key,
.k2AccountPage table.admintable td.paramlist_key {background:#f6f6f6;border-bottom:1px solid #e9e9e9;border-right:1px solid #e9e9e9;color:#666;font-weight:bold;text-align:right;font-size:11px;width:140px;}

/* Profile edit */
.k2AccountPage table.admintable {}
.k2AccountPage table.admintable tr td {}
.k2AccountPage table.admintable tr td span {}
.k2AccountPage table.admintable tr td span label {}



/*
Modules - mod_k2_comments
*/

/* Latest Comments */
div.k2LatestCommentsBlock {}
div.k2LatestCommentsBlock ul {}
div.k2LatestCommentsBlock ul li {}
div.k2LatestCommentsBlock ul li.lastItem {}
div.k2LatestCommentsBlock ul li a.lcAvatar img {}
div.k2LatestCommentsBlock ul li a {}
div.k2LatestCommentsBlock ul li a:hover {}
div.k2LatestCommentsBlock ul li span.lcComment {}
div.k2LatestCommentsBlock ul li span.lcUsername {}
div.k2LatestCommentsBlock ul li span.lcCommentDate {color:#999;}
div.k2LatestCommentsBlock ul li span.lcItemTitle {}
div.k2LatestCommentsBlock ul li span.lcItemCategory {}

/* Top Commenters */
div.k2TopCommentersBlock {}
div.k2TopCommentersBlock ul {}
div.k2TopCommentersBlock ul li {}
div.k2TopCommentersBlock ul li.lastItem {}
div.k2TopCommentersBlock ul li a.tcAvatar img {}
div.k2TopCommentersBlock ul li a.tcLink {}
div.k2TopCommentersBlock ul li a.tcLink:hover {}
div.k2TopCommentersBlock ul li span.tcUsername {}
div.k2TopCommentersBlock ul li span.tcCommentsCounter {}
div.k2TopCommentersBlock ul li a.tcLatestComment {}
div.k2TopCommentersBlock ul li a.tcLatestComment:hover {}
div.k2TopCommentersBlock ul li span.tcLatestCommentDate {color:#999;}



/*
Modules - mod_k2_content
*/

div.k2ItemsBlock {}

div.k2ItemsBlock p.modulePretext {}

div.k2ItemsBlock ul {}
div.k2ItemsBlock ul li {}
div.k2ItemsBlock ul li a {}
div.k2ItemsBlock ul li a:hover {}
div.k2ItemsBlock ul li.lastItem {}

div.k2ItemsBlock ul li a.moduleItemTitle {}
div.k2ItemsBlock ul li a.moduleItemTitle:hover {}

div.k2ItemsBlock ul li div.moduleItemAuthor {}
div.k2ItemsBlock ul li div.moduleItemAuthor a {}
div.k2ItemsBlock ul li div.moduleItemAuthor a:hover {}

div.k2ItemsBlock ul li a.moduleItemAuthorAvatar img {}

div.k2ItemsBlock ul li div.moduleItemIntrotext {display:block;padding:4px 0;}
div.k2ItemsBlock ul li div.moduleItemIntrotext a.moduleItemImage img {float:right;margin:2px 0 4px 4px;padding:0;}

div.k2ItemsBlock ul li div.moduleItemExtraFields {}
div.moduleItemExtraFields ul {}
div.moduleItemExtraFields ul li {}
div.moduleItemExtraFields ul li span.moduleItemExtraFieldsLabel {display:block;float:left;font-weight:bold;margin:0 4px 0 0;width:30%;}
div.moduleItemExtraFields ul li span.moduleItemExtraFieldsValue {}

div.k2ItemsBlock ul li div.moduleItemVideo {}
div.k2ItemsBlock ul li div.moduleItemVideo span.moduleItemVideoCaption {}
div.k2ItemsBlock ul li div.moduleItemVideo span.moduleItemVideoCredits {}

div.k2ItemsBlock ul li span.moduleItemDateCreated {}

div.k2ItemsBlock ul li a.moduleItemCategory {}

div.k2ItemsBlock ul li div.moduleItemTags {}
div.k2ItemsBlock ul li div.moduleItemTags b {}
div.k2ItemsBlock ul li div.moduleItemTags a {padding:0 2px;}
div.k2ItemsBlock ul li div.moduleItemTags a:hover {}

div.k2ItemsBlock ul li div.moduleAttachments {}

div.k2ItemsBlock ul li a.moduleItemComments {border-right:1px solid #ccc;padding:0 4px 0 0;margin:0 8px 0 0;}
div.k2ItemsBlock ul li a.moduleItemComments:hover {}
div.k2ItemsBlock ul li span.moduleItemHits {border-right:1px solid #ccc;padding:0 4px 0 0;margin:0 8px 0 0;}
div.k2ItemsBlock ul li a.moduleItemReadMore {}
div.k2ItemsBlock ul li a.moduleItemReadMore:hover {}

div.k2ItemsBlock a.moduleCustomLink {}
div.k2ItemsBlock a.moduleCustomLink:hover {}



/*
Modules - mod_k2_tools
*/

/* --- Archives --- */
div.k2ArchivesBlock {}
div.k2ArchivesBlock ul {}
div.k2ArchivesBlock ul li {}
div.k2ArchivesBlock ul li a {}
div.k2ArchivesBlock ul li a:hover {}

/* --- Authors --- */
div.k2AuthorsListBlock {}
div.k2AuthorsListBlock ul {}
div.k2AuthorsListBlock ul li {}
div.k2AuthorsListBlock ul li a.abAuthorAvatar img {}
div.k2AuthorsListBlock ul li a.abAuthorName {}
div.k2AuthorsListBlock ul li a.abAuthorName:hover {}
div.k2AuthorsListBlock ul li a.abAuthorLatestItem {display:block;clear:both;}
div.k2AuthorsListBlock ul li a.abAuthorLatestItem:hover {}
div.k2AuthorsListBlock ul li span.abAuthorCommentsCount {}

/* --- Breadcrumbs --- */
div.k2BreadcrumbsBlock {}
div.k2BreadcrumbsBlock span.bcTitle {padding:0 4px 0 0;color:#999;}
div.k2BreadcrumbsBlock a {}
div.k2BreadcrumbsBlock a:hover {}
div.k2BreadcrumbsBlock span.bcSeparator {padding:0 4px;font-size:14px;}

/* --- Calendar --- */
div.k2CalendarBlock {height:190px;margin-bottom:8px;} /* use this height value so that the calendar height won't change on Month change via ajax */
div.k2CalendarLoader {background:#fff url(../images/system/k2CalendarLoader.gif) no-repeat 50% 50%;}
table.calendar {margin:0 auto;background:#fff;border-collapse:collapse;}
table.calendar tr td {text-align:center;vertical-align:middle;padding:2px;border:1px solid #f4f4f4;background:#fff;}
table.calendar tr td.calendarNavMonthPrev {background:#fafafa;text-align:left;}
table.calendar tr td.calendarNavMonthPrev a {font-size:20px;text-decoration:none;}
table.calendar tr td.calendarNavMonthPrev a:hover {font-size:20px;text-decoration:none;}
table.calendar tr td.calendarCurrentMonth {background:#fafafa;}
table.calendar tr td.calendarNavMonthNext {background:#fafafa;text-align:right;}
table.calendar tr td.calendarNavMonthNext a {font-size:20px;text-decoration:none;}
table.calendar tr td.calendarNavMonthNext a:hover {font-size:20px;text-decoration:none;}
table.calendar tr td.calendarDayName {background:#e9e9e9;font-size:11px;width:14.2%;}
table.calendar tr td.calendarDateEmpty {background:#fbfbfb;}
table.calendar tr td.calendarDate {}
table.calendar tr td.calendarDateLinked {padding:0;}
table.calendar tr td.calendarDateLinked a {display:block;padding:2px;text-decoration:none;background:#fafafa;}
table.calendar tr td.calendarDateLinked a:hover {display:block;background:#135cae;color:#fff;padding:2px;text-decoration:none;}
table.calendar tr td.calendarToday {background:#135cae;color:#fff;}
table.calendar tr td.calendarTodayLinked {background:#135cae;color:#fff;padding:0;}
table.calendar tr td.calendarTodayLinked a {display:block;padding:2px;color:#fff;text-decoration:none;}
table.calendar tr td.calendarTodayLinked a:hover {display:block;background:#BFD9FF;padding:2px;text-decoration:none;}

/* --- Category Tree Select Box --- */
div.k2CategorySelectBlock {}
div.k2CategorySelectBlock form select {width:auto;}
div.k2CategorySelectBlock form select option {}

/* --- Category List/Menu --- */
div.k2CategoriesListBlock {}
div.k2CategoriesListBlock ul {}
div.k2CategoriesListBlock ul li {}
div.k2CategoriesListBlock ul li a {}
div.k2CategoriesListBlock ul li a:hover {}
div.k2CategoriesListBlock ul li a span.catTitle {padding-right:4px;}
div.k2CategoriesListBlock ul li a span.catCounter {}
div.k2CategoriesListBlock ul li a:hover span.catTitle {}
div.k2CategoriesListBlock ul li a:hover span.catCounter {}
div.k2CategoriesListBlock ul li.activeCategory {}
div.k2CategoriesListBlock ul li.activeCategory a {font-weight:bold;}

/* Root level (0) */
ul.level0 {}
ul.level0 li {}
ul.level0 li a {}
ul.level0 li a:hover {}
ul.level0 li a span {}
ul.level0 li a:hover span {}

/* First level (1) */
ul.level1 {}
ul.level1 li {}
ul.level1 li a {}
ul.level1 li a:hover {}
ul.level1 li a span {}
ul.level1 li a:hover span {}

/* n level (n) - like the above... */

/* --- Search Box --- */
div.k2SearchBlock {position:relative;}
div.k2SearchBlock form {}
div.k2SearchBlock form input.inputbox {}
div.k2SearchBlock form input.button {}
div.k2SearchBlock form input.k2SearchLoading {background:url(../images/system/searchLoader.gif) no-repeat 100% 50%;}
div.k2SearchBlock div.k2LiveSearchResults {display:none;background:#fff;position:absolute;z-index:99;border:1px solid #ddd;margin-top:-1px;}
/* Live search results (fetched via ajax) */
div.k2SearchBlock div.k2LiveSearchResults ul.liveSearchResults {list-style:none;margin:0;padding:0;}
div.k2SearchBlock div.k2LiveSearchResults ul.liveSearchResults li {border:none;margin:0;padding:0;}
div.k2SearchBlock div.k2LiveSearchResults ul.liveSearchResults li a {display:block;padding:1px 2px;border-top:1px dotted #ddd;}
div.k2SearchBlock div.k2LiveSearchResults ul.liveSearchResults li a:hover {background:#fffff0;}

/* --- Tag Cloud --- */
div.k2TagCloudBlock {padding:8px 0;}
div.k2TagCloudBlock a {padding:4px;float:left;display:block;}
div.k2TagCloudBlock a:hover {padding:4px;float:left;display:block;background:#135cae;color:#fff;text-decoration:none;}

/* --- Custom Code --- */
div.k2CustomCodeBlock {}



/*
Modules - mod_k2_user (mod_k2_login is removed since v2.6.x)
*/

div.k2LoginBlock {}
div.k2LoginBlock p.preText {}

div.k2LoginBlock fieldset.input {margin:0;padding:0 0 8px 0;}
div.k2LoginBlock fieldset.input p {margin:0;padding:0 0 4px 0;}
div.k2LoginBlock fieldset.input p label {display:block;}
div.k2LoginBlock fieldset.input p input {display:block;}
div.k2LoginBlock fieldset.input p#form-login-remember label,
div.k2LoginBlock fieldset.input p#form-login-remember input {display:inline;}
div.k2LoginBlock fieldset.input input.button {}

div.k2LoginBlock ul {}
div.k2LoginBlock ul li {}

div.k2LoginBlock p.postText {}

div.k2UserBlock {}
div.k2UserBlock p.ubGreeting {border-bottom:1px dotted #ccc;}
div.k2UserBlock div.k2UserBlockDetails a.ubAvatar img {}
div.k2UserBlock div.k2UserBlockDetails span.ubName {display:block;font-weight:bold;font-size:14px;}
div.k2UserBlock div.k2UserBlockDetails span.ubCommentsCount {}

div.k2UserBlock ul.k2UserBlockActions {}
div.k2UserBlock ul.k2UserBlockActions li {}
div.k2UserBlock ul.k2UserBlockActions li a {}
div.k2UserBlock ul.k2UserBlockActions li a:hover {}

div.k2UserBlock ul.k2UserBlockRenderedMenu {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li a {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li a:hover {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul {} /* 2nd level ul */
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul li {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul li a {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul ul {} /* 3rd level ul (and so on...) */
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul ul li {}
div.k2UserBlock ul.k2UserBlockRenderedMenu li ul ul li a {}

div.k2UserBlock form {}
div.k2UserBlock form input.ubLogout {}



/*
Modules - mod_k2_users
*/

div.k2UsersBlock {}
div.k2UsersBlock ul {}
div.k2UsersBlock ul li {}
div.k2UsersBlock ul li.lastItem {}
div.k2UsersBlock ul li a.ubUserAvatar img {}
div.k2UsersBlock ul li a.ubUserName {}
div.k2UsersBlock ul li a.ubUserName:hover {}
div.k2UsersBlock ul li div.ubUserDescription {}
div.k2UsersBlock ul li div.ubUserAdditionalInfo {}
a.ubUserFeedIcon,
a.ubUserFeedIcon:hover {display:inline-block;margin:0 2px 0 0;padding:0;font-size:15px;}
a.ubUserFeedIcon span,
a.ubUserFeedIcon:hover span {display:none;}
a.ubUserURL,
a.ubUserURL:hover {display:inline-block;margin:0 2px 0 0;padding:0;font-size:15px;}
a.ubUserURL span,
a.ubUserURL:hover span {display:none;}
span.ubUserEmail {display:inline-block;margin:0 2px 0 0;padding:0;overflow:hidden;font-size:15px;}
span.ubUserEmail a {display:inline-block;margin:0;padding:0;width:16px;height:16px;text-indent:-9999px;}

div.k2UsersBlock ul li h3 {clear:both;margin:8px 0 0 0;padding:0;}
div.k2UsersBlock ul li ul.ubUserItems {}
div.k2UsersBlock ul li ul.ubUserItems li {}



/* --- END --- */
  • piet
  • piet's Avatar
07 Apr 2017 15:57
Replied by piet on topic What Happened to K2 3.0?

What Happened to K2 3.0?

Category: English K2 Community

Steven Trooster wrote: If you're looking for a solution with just extra fields, wait a few weeks and go for Joomla 3.7. I've tested it and it's way more powerful than de K2 extra fields or extra fields from any other cck I've seen. (Field types can been expanded in the future with extra plugins, so an extra field can contain bitterly anything)
If your looking for author bio's, find an user-extension. And use core Joomla articles
If you just want comments on articles, find a plugin. And use core Joomla articles
If you want article image handling, well Joomla has a realy bad media manager. (Joomla 4 will improve that) Maybe stick with K2 or move on.
If you want versioning of text, go for Joomla core articles
If you want modules that show articles in various ways, go for Joomla core
If you want all of the above, either stick with K2 and cross your fingers it will work on subsequent new Joomla versions, or choose an other cck.

By any means: make a plan to opt out of K2 before Joomla 4 end of this year. There isn't going to be a K2 version 3. Sorry to say, but it's over. And there's no guarantee K2 will get security updates or run on Joomla 4.


Hello,

and for the image field, what do you propose ?

With K2 you can add and change easily the image. And when you decide to change the size of image in frontend (large, small, etc,...) it is easy.
If you have a tool like this in Joomla whitout K2, I'll take it.

Regard.
  • Steven Trooster
  • Steven Trooster's Avatar
04 Apr 2017 23:08
Replied by Steven Trooster on topic What Happened to K2 3.0?

What Happened to K2 3.0?

Category: English K2 Community

If you're looking for a solution with just extra fields, wait a few weeks and go for Joomla 3.7. I've tested it and it's way more powerful than de K2 extra fields or extra fields from any other cck I've seen. (Field types can been expanded in the future with extra plugins, so an extra field can contain bitterly anything)
If your looking for author bio's, find an user-extension. And use core Joomla articles
If you just want comments on articles, find a plugin. And use core Joomla articles
If you want article image handling, well Joomla has a realy bad media manager. (Joomla 4 will improve that) Maybe stick with K2 or move on.
If you want versioning of text, go for Joomla core articles
If you want modules that show articles in various ways, go for Joomla core
If you want all of the above, either stick with K2 and cross your fingers it will work on subsequent new Joomla versions, or choose an other cck.

By any means: make a plan to opt out of K2 before Joomla 4 end of this year. There isn't going to be a K2 version 3. Sorry to say, but it's over. And there's no guarantee K2 will get security updates or run on Joomla 4.
  • WinniePooh
  • WinniePooh's Avatar
09 Dec 2016 11:41
Slow when user is logged in was created by WinniePooh

Slow when user is logged in

Category: English K2 Community

Hi,

I've noticed that my main page is much slower when I'm logged in. The Joomla debug plugin gives me this peak:
Time: 195.95 ms / 240.80 ms Memory: 14.529 MB / 17.79 MB Application: afterRenderComponent com_k2

When I visit the main page as guest the response time reduces drastically:
Time: 0.93 ms / 35.98 ms Memory: 0.116 MB / 3.24 MB Application: afterRenderComponent com_k2

I tried to disable K2 plugins and extra fields, but it didn't helped. I know that logged in users don't have any cache. But does it have so much impact to K2?

Regards
  • Karel Babor
  • Karel Babor's Avatar
30 Nov 2016 21:35
Replied by Karel Babor on topic K2 Media Manager front-end permissions

K2 Media Manager front-end permissions

Category: English K2 Community

Hi, This makes no sense for me.

How can i turn of the k2 media manager for k2 extra fields images, so that i can use the normal joomla media manager which is working fine for front end admins?

Or if i will have to let publishers go in to our back-end admin, there is no way for us to set the permission to denied for them to access some categories and for them to enter category setting. Because the user groups only appear to be working for front-end?

/ Best regard karel
  • Krikor Boghossian
  • Krikor Boghossian's Avatar
24 Jul 2016 21:48
Replied by Krikor Boghossian on topic Import via MySQL

Import via MySQL

Category: English K2 Community

Did you import the rest of K2's data, extra fields, users tags etc?
Did you import the Joomla! users as well?
Displaying 21 - 40 out of 248 results.

Powered by Kunena Forum