attrib.exe -s -r -h -a C:\Windows\system32\drivers\etc\hosts
<?php
echo Menu::widget([
'encodeLabels' => false,
'items' => [
['label' => '<i class="fa fa-home"></i> Home', 'url' => ['default/index']],
],
]);
?>
class Menu extends ActiveRecord
{
// ...
public static function getList()
{
$data = static::find()
->select(['id', 'parent_id', 'title'])
->orderBy('parent_id ASC')
->asArray()
->all();
$sort = new SortList([
'data' => $data,
'prefix' => '------',
]);
$sortList = ArrayHelper::map($sort->getList(), 'id', 'title');
return $sortList;
}
}
class SortList extends Object
{
public $data;
public $prefix = ' ';
protected function getPath($category_id, $prefix = false)
{
foreach ($this->data as $item) {
if ($category_id == $item['id']) {
$prefix = $prefix ? $this->prefix . $prefix : $item['title'];
if ($item['parent_id']) {
return $this->getPath($item['parent_id'], $prefix);
} else {
return $prefix;
}
}
}
return '';
}
public function getList($parent_id = 0)
{
$data = [];
foreach ($this->data as $item) {
if ($parent_id == $item['parent_id']) {
$data[] = [
'id' => $item['id'],
'title' => $this->getPath($item['id'])
];
$data = array_merge($data, $this->getList($item['id']));
}
}
return $data;
}
}
$('.js-print-btn').on('click', function (e) {
e.preventDefault();
printContent($(this).attr('href'));
});
function printContent(el) { // {{{
printcontent = $(el).html();
printcontent = printcontent.replace('table table-condensed table-bordered ', '');
printcontent = printcontent.replace(new RegExp('<a href=', 'g'), '<nolink _href').replace(new RegExp('<a ', 'g'), '<nolink ').replace(new RegExp('</a>', 'g'), '</nolink>');
// console.log(printcontent);
var printDivCSS = new String('<body><style>.td-submit, .btn, .js-errors, input {display: none;} table {border-collapse: collapse;border-spacing: 0;} table td, table th {border:1px #ccc solid; padding: 5px;}</style>');
var printDivAfter = new String('</body>');
var newWindow = window.open();
newWindow.document.write(printDivCSS + printcontent + printDivAfter);
newWindow.document.close();
newWindow.focus();
newWindow.print();
newWindow.close();
}
<form method="get">
<input type="text" name="add_group">
<input type="submit" name="send">
</form>
session_start(); // Обязательно запускаем (возобновляем) сессию! Без этого работать не будет!
// Если кнопка была нажата
if (isset($_GET['send'])) {
// Если инпут не пуст
if (!empty($_GET['foxy_add'])) {
$_SESSION['foxy_add'] = $_GET['add_group'];
}
}
// Эти 2 условия можно совместить, но я не стал этого делать для наглядности