Posted in site documentation
8263
1:15 am, June 11, 2021
 

change this to a list group - other items

Other item format is a bit average, list group should fix this. 

This uses the template:

core-list-item-simple.html 

So we can change this a bit to the list group format. 

Which is basically this layout

HTML

<ul class="list-group">
  <li class="list-group-item">An item</li>
  <li class="list-group-item">A second item</li>
  <li class="list-group-item">A third item</li>
  <li class="list-group-item">A fourth item</li>
  <li class="list-group-item">And a fifth one</li>
</ul>

as i want it to be links, need to use the same classes and links instead. 

HTML

<div class="list-group">
  <a href="#" class="list-group-item list-group-item-action active" aria-current="true">
    The current link item
  </a>
  <a href="#" class="list-group-item list-group-item-action">A second link item</a>
  <a href="#" class="list-group-item list-group-item-action">A third link item</a>
  <a href="#" class="list-group-item list-group-item-action">A fourth link item</a>
  <a href="#" class="list-group-item list-group-item-action disabled" tabindex="-1" aria-disabled="true">A disabled link item</a>
</div>

Changed templates to use the list-group.html and list-group-item.html rather than the core templates. 

HTML - list-group-item.html

<a href="/view/[@class_name]/[@uid]/[@title_uid]/" class="list-group-item list-group-item-action" title='[@title]'>[@title]</a

HTML - list-group-card.html

a list group inside a card to make it neater. 

<div class='card mb-3'>
  <h5 class='card-header'>[@title]</h5>
  <div class='card-body'>
    <div class="list-group">
      [@content]
    </div>
  </div>
</div>

Updated quite easily once i found the function. 

Now it looks something like this: 

Which is quite a lot nicer than the simple links and also better for mobile as you can press anywhere on the element, and makes it a bit more like buttons. 

PHP

if($class->category > " ") {
	$other_items_list_title = "Other Items in $class->category";
	$other_items_list = $class->list_all(
        $start = 0,
        $max = 50,
        $list_type = "category",
        $template_file = "list-group-item.html",
        $search_term = $class->category
      );

		$other_items_card_template = new template("list-group-card.html");
		$other_items_card_template->set("title", $other_items_list_title);
		$other_items_card_template->set("content", $other_items_list);
		$page_content .= $other_items_card_template->output();
}

View Statistics
This Week
217
This Month
1318
This Year
2678

No Items Found.

Add Comment
Type in a Nick Name here
 
Related Search Terms
Search Code
Search Code by entering your search text above.
Welcome

This is my test area for webdev. I keep a collection of code here, mostly for my reference. Also if i find a good link, i usually add it here and then forget about it. more...

Subscribe to weekly updates about things i have added to the site or thought interesting during the last week.

You could also follow me on twitter or not... does anyone even use twitter anymore?

If you found something useful or like my work, you can buy me a coffee here. Mmm Coffee. ☕

❤️👩‍💻🎮

🪦 2000 - 16 Oct 2022 - Boots
Random Quote
time you enjoyed wasting is not wasted time
Unknown
Random CSS Property

margin-inline-end

The margin-inline-end CSS property defines the logical inline end margin of an element, which maps to a physical margin depending on the element's writing mode, directionality, and text orientation. In other words, it corresponds to the margin-top, margin-right, margin-bottom or margin-left property depending on the values defined for writing-mode, direction, and text-orientation.
margin-inline-end css reference