Skip to content

Widgets collection for Yii2

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

wdmg/yii2-widgets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yii2 Downloads Packagist Version Progress GitHub license

Yii2 Widgets

Custom widgets collection for Yii2

NavContents::widget()

The widget parses your HTML code for the presence of h1-h6 headers and forms a navigation list with the correct href, after which it render a Boostrap Nav before content.

If the h1-h6 headers does not have an id attribute, it will be generated automatically. The rest of the attributes of the headers, whether class, style or data will also be saved.

MenuContents::widget()

The same as in the case of NavContents::widget(), but the usual <ul> list is formed at the output.

Requirements

  • PHP 5.6 or higher
  • Yii2 v.2.0.33 and newest

Installation

To install the widgets, run the following command in the console:

$ composer require "wdmg/yii2-widgets"

Usage

Example of usecase NavContents::widget() in view instance:

<?php

use wdmg\widgets\NavContents;

$content = '<h1>Header H1</h1><p>Some text, some text...</p><p>Some text, some text...</p>'

?>

<?= NavContents::widget([
    'id' => "list1",
    'content' => $content, // where `$content` the html source with h1-h6 headers
    'renderContent' => true, // if `true` (by default) render content html after table of contents
    'transliterate' => true, // if need to convert href and ID to Latin (Cyrillic for example)
    'options' => [
        'class' => 'nav nav-stacked'
    ],
    ... // and other options for yii\bootstrap\Nav::widget()
]); ?>

Example of usecase MenuContents::widget() in view instance:

<?php

use wdmg\widgets\MenuContents;

$content = '<h1 id="test-header" class="header">Header H1</h1><p>Some text, some text...</p><p>Some text, some text...</p>'

?>

<?= MenuContents::widget([
    'id' => "list2",
    'content' => $content, // where `$content` the html source with h1-h6 headers
    'renderContent' => true, // if `true` (by default) render content html after table of contents
    'transliterate' => true, // if need to convert href and ID to Latin (Cyrillic for example)
    'options' => [
        'class' => 'list-toc'
    ],
    ... // and other options for yii\widgets\Menu::widget()
]); ?>

Example of usecase LangSwitcher::widget() in view instance of dashboard:

<?php

use wdmg\widgets\LangSwitcher;

<?php
    echo LangSwitcher::widget([
        'label' => 'Language version',
        'model' => $model,
        'renderWidget' => 'button-group',
        'createRoute' => 'news/create', // string or array
        'updateRoute' => 'news/update', // string or array
        'supportLocales' => $this->context->module->supportLocales,
        'versions' => (isset($model->source_id)) ? $model->getAllVersions($model->source_id, true) : $model->getAllVersions($model->id, true),
        'options' => [
            'id' => 'locale-switcher',
            'class' => 'pull-right'
        ]
    ]);
?>

Example of usecase AliasInput::widget() in view instance of dashboard:

<?php

use wdmg\widgets\AliasInput;

<?= $form->field($model, 'alias')->widget(AliasInput::class, [
    'labels' => [
        'edit' => 'Edit',
        'save' => 'Save'
    ],
    'options' => [
        'baseUrl' => $model->url
    ]
])->label('Post URL'); ?>

Status and version [in progress development]

  • v.1.1.0 - Update copyrights
  • v.1.0.4 - URL`s options in LangSwitcher
  • v.1.0.3 - Added AliasInput::widget()
  • v.1.0.2 - Added LangSwitcher::widget()
  • v.1.0.1 - Up to date dependencies
  • v.1.0.0 - Added NavContents::widget() and MenuContents::widget()

About

Widgets collection for Yii2

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Packages

No packages published

Languages