48 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
namespace nur\v\html5;
 | 
						|
 | 
						|
use nur\md;
 | 
						|
use nur\v\base\AbstractLayoutManager;
 | 
						|
use nur\v\v;
 | 
						|
 | 
						|
class Html5LayoutManager extends AbstractLayoutManager {
 | 
						|
  const ROW_OPTIONS_SCHEMA = [
 | 
						|
    "class" => "?string",
 | 
						|
  ];
 | 
						|
 | 
						|
  protected function getRowTags($options): array {
 | 
						|
    md::ensure_schema($options, self::ROW_OPTIONS_SCHEMA);
 | 
						|
    return [
 | 
						|
      v::sdiv(["class" => ["row", $options["class"]]]),
 | 
						|
      v::ediv(),
 | 
						|
    ];
 | 
						|
  }
 | 
						|
 | 
						|
  const COL_OPTIONS_SCHEMA = [
 | 
						|
    "class" => "?string",
 | 
						|
  ];
 | 
						|
 | 
						|
  protected function getColTags($size, $options): array {
 | 
						|
    md::ensure_schema($options, self::COL_OPTIONS_SCHEMA);
 | 
						|
    return [
 | 
						|
      v::sdiv(["class" => ["col", $options["class"]]]),
 | 
						|
      v::ediv(),
 | 
						|
    ];
 | 
						|
  }
 | 
						|
 | 
						|
  const PANEL_OPTIONS_SCHEMA = [
 | 
						|
    "class" => "?string",
 | 
						|
  ];
 | 
						|
 | 
						|
  protected function getPanelTags($title, $options): array {
 | 
						|
    md::ensure_schema($options, self::PANEL_OPTIONS_SCHEMA);
 | 
						|
    return [
 | 
						|
      v::sdiv([
 | 
						|
        "class" => ["panel", $options["class"]],
 | 
						|
        v::h2($title),
 | 
						|
      ]),
 | 
						|
      v::ediv(),
 | 
						|
    ];
 | 
						|
  }
 | 
						|
}
 |