stydenet / html Goto Github PK
View Code? Open in Web Editor NEWLaravel package designed to generate common HTML components
License: MIT License
Laravel package designed to generate common HTML components
License: MIT License
Estaba probando tu package, detecte que cuando pones logged => true a cada item del menu y cuando vas a generar el menu como no envias la variable url el package no tiene nada para construir el menu.
Solution
The new select
method allows you to chain a call to a new from
method to fetch data from the database, the params of this method atm are:
id
) $fields->select('parent_id')
->from('menu_items', 'label', 'id', function ($query) {
$query->whereNull('parent_id')
->orderBy('label', 'ASC');
})
->label('Parent');
I'm looking for ideas to improve this syntax, make it more flexible etc.
Also this needs integration tests.
Hi, when generating multiselects with
{!! Field::selectmultiple('categorias[] ......, ['id'=>'categorias] !!}
the id of the generated Field is set to categorias[], causing jquery #('categorias') or #('categorias[]') not finding the select field
In FieldBuilder.php, function doBuild(....)
the code
$id = $this->getHtmlId($name));
can be changed to:
$id = (isset($attributes['id']) ? $attributes['id'] : $this->getHtmlId($name));
to gerate the correct id for this control
currently only it verifies that the user has role, but if the user has more than one rool?
Where is this package usually used on Laravel? On Blade files.
So, what about adding blade directives to make it easier for developers?
When i tried to generate a select (multiselect), this create a empty option selectable. This happens in common select too.
This is my two suggestions.
Custom components can't be defined because, Styde\Html\FormBuider constructor doesn't instantiate internal class attribute view defined on Collective\Html\FormBuilder
Use Form::select its different from Field::select for multiple select.
Form::select('fruits[]', ['1' => 'Apple', '2' => 'Banana', '3' => 'Watermelon'], ['1', '3'], ['multiple'])
generate
<select multiple="multiple" name="fruits[]">
<option value="1" selected="selected">Apple</option>
<option value="2">Banana</option>
<option value="3" selected="selected">Watermelon</option>
</select>
and
Field::select('fruits[]', ['1' => 'Apple', '2' => 'Banana', '3' => 'Watermelon'], ['1', '3'], ['multiple', 'empty' => false])
generates
<div id="field_fruits[]" class="form-group">
<label for="fruits[]" class="control-label"> Fruits[] </label>
<div class="controls">
<select 1="1" 3="3" class="form-control" id="fruits[]" name="fruits[]">
<option value="1">Apple</option>
<option value="2">Banana</option>
<option value="3">Watermelon</option>
</select>
</div>
</div>
Check the select 1="1" ,3="3" and selected attr in options dont work ,ignore the empty => 'false'
When create a file like this:Field::file('myFile')->required()
Estoy realizando un LMS en Laravel el cual trabaja con temas, pero se me esta presentando un conflicto y es que el paquete html de Styde me crea una carpeta llamada themes que exactamente igual a la que yo utilizo para los temas del LMS, e intentado en mover la carpeta de los templates del lms pero igual se ve confuso.
En conclusión, que en el archivo de configuración se pueda definir una nueva ruta para los resources del paquete.
Get an wrong name when $options array is only one item.
Code:
{!! Form::checkboxes('remember', ['remember' => 'Recordar'], ['remember']) !!}
Result an input name 'remember[]' :
<div class="checkbox">
<label>
<input id="remember_remember" checked="checked" name="remember[]" type="checkbox" value="remember">
Recordar
</label>
</div>
Hello, I was wondering about if this package will add support for Laravel 7 since laravel collective has done it
I have investigated if it's possible for me to do a PR, but the phpspec dependencies do not satisfy symfony 5 yet :(
A functionality could be added for all the fields that allows passing an attribute 'help' with its respective value. i.e:
{!! Field::textarea('presentation', ['label' => 'Presentation website (*)', 'rows' => 4, 'help'=> 'Write your two names']) !!}
Result:
<small id="presentation-help" class="form-text text-muted">Write your two names</small>
Field::select method generate an empty option ever. I include placehoder key but the empty option still is generated.
I have problems to display errors on "nested" fields.
For example:
Field::text('address[name]')
Validation returns with errors but the form doesn't display any.
I understand that in this case I can use address_name, but there are more complex escenarios where it's quite a problem.
I am using the "styde / html" version: "~ 1.2".
When using {!! Form::radios('visible', [1 => 'Yes', 0 => 'No'], 1) !!}
I did not get the default selection working, when reviewing the class class Styde \ Html \ FormBuilder, when printing the input of the render I can observe that the condition for the "selected" is fulfilled.
array:2 [▼
0 => array:5 [▼
"name" => "visible"
"value" => 1
"label" => "Si"
"selected" => true
"id" => "visible_1"
]
1 => array:5 [▼
"name" => "visible"
"value" => 0
"label" => "No"
"selected" => false
"id" => "visible_0"
]
]
However the render output does not set the checked = ""
<div class="radio"> <label> <input id="visible_1" name="visible" type="radio" value="1"> Si </label> </div> <div class="radio"> <label> <input id="visible_0" name="visible" type="radio" value="0"> No </label> </div>
Is it just me, or does Laravel 5.1 simply not have this?
Hi, I do not see a license choice for this repository.
I note that https://github.com/LaravelCollective/html/blob/5.3/LICENSE.txt is the MIT License.
While your repository is have much contribution that is a good choice for some projects for other people to know about working on a custom CMS, generating HTML dynamicall from you. That you may add a Licence for your repository
When this line \Styde\Html\Alert\Middleware::class
is added to Http\Kernel.php
file, the auth views from Laravel 5.2 doesn't work.
verification on attribute required
Al usar el facades Field :: text en la documentación, indica que el atributo requerido puede ser opcional si se coloca 'required' => false, en la versión 5.5 tengo que hacer la siguiente modificación para el atributo pueda trabajar basado en el valor booleano
protected function getRequired($attributes)
{
if (!array_key_exists('required', $attributes)) {
return true;
}
if (isset($attributes['required'])) {
return $attributes['required'];
}
return false;
}
protected function getHtmlAttributes($type, $attributes, $errors, $htmlId, $required)
{
$attributes['class'] = $this->getClasses($type, $attributes, $errors);
$attributes['id'] = $htmlId;
if ($required && !array_key_exists('required', $attributes)) {
$attributes[] = 'required';
}
unset($attributes['template'], $attributes['label']);
return $attributes;
}
src/FormBuilder.php is throwing an error using PHP 7.3 on line 144.
The problem appears when using Field::radios with php 7.3 because the way compact works in this php version:
Undefined variables passed to compact will be reported with a notice, they were previously ignored.
Just starting html
Al hacer un submenu dentro de otro, es decir:
'menu' => [ 'submenu_1' => [ 'submenu_1_1' => [ ] ] ]
y al entrar al submenu_1_1 no genera la clase "active" para menu, únicamente para "submenu_1" y "submenu_1_1" por favor su ayuda, ¿cómo resuelvo esto?
Bueno pues nada tengo el siguiente problema:
<div class="form-group">
<label class="col-lg-2 col-sm-2 control-label">{{ trans('auth::ui.role.description') }}</label>
<div class="col-lg-8">
{!! Form::text('description', null, ['class' => 'form-control']) !!}
</div>
</div>
Ahora como ves uso las traducciones para los label, y esto me genera un problema al trabajar con tu paquete, porque si coloco una traduccion esta no va a coincidir con el nombre del campo esperado
Hello!
I inherited a proejct which uses this great package but we are having issues
installing some dependencies in a PHP 8 environment.
Are there any plans to update it for PHP 8?
Much appreciated.
In FieldBuilder the parameter "template" is removed by getHtmlAttributes (line 696) before $this->getCustomTemplate($attributes) get called (line 701).
Good morning and greetings to the developers, I love this package, I use it almost daily, so please don't forget it, I still don't have the level to maintain such a package. I hope they continue to maintain and update it for the current version of Laravel and future versions, or in any case open it up to the community that can maintain it.
Any chanses we would get icons support?
E.g. for Bulma add icon-left
and icon-right
to options list. Not sure about boostrap, but i believe they have some icon support too.
<div class="field">
<p class="control has-icons-left has-icons-right">
<input class="input" type="email" placeholder="Email">
<span class="icon is-small is-left"><i class="fas fa-envelope"></i></span>
<span class="icon is-small is-right"><i class="fas fa-check"></i></span>
</p>
</div>
Hello @sileence,
I hope this email finds you well. I wanted to express my appreciation for the amazing work you've done with StydeNet/html. This package has been very useful for my project and I am grateful for it.
Since Laravel has recently released version 10, I was wondering if you could consider adding support for this version in your package. I understand it may take time, but I think it would be of great benefit to the user community.
I'm sure many users like me would be grateful for this update. Thanks in advance for your time and effort!
Kind regards,
It would be nice to have a method to send variables external to the template. As "$label"
Al tener urls por ejemplo del tipo
usuarios/roles
usuarios/roles/editar
En el menú se genera la clase "active" para ambas opciones.
¿Cómo se puede solucionar esto?
Gracias
ErrorException in Container.php line 144:
array_merge(): Argument 1 is not an array
cloning html-integration-tests
and going to
html-integration-tests/public/alert/success url
$this->handler->getPreviousMessages() return "null" in Container.php
Is there an horizontal-form option?, i still can't find a way to do it.
Thanks
/**
* Create a form input field.
*
* @param string $type
* @param string $name
* @param string $value
* @param array $attributes
*
* @return string
*/
public function input($type, $name, $value = null, $attributes = array())
{
return $this->build($type, $name, $value, $attributes);
}
Como podria crear forms con inputs groups, quisiera pasar como parametro el tipo de input group por ejemplo http://getbootstrap.com/components/#input-groups
Alert message not work for my only a in new installation 5.4 and after redirect
This is the controller:
public function edit(Consorcio $consorcio)
{
return view('consorcio.edit', ['consorcio' => $consorcio]);
}
public function update(Request $request, Consorcio $consorcio)
{
$consorcio->nombre = $request->get('nombre');
if( !$consorcio->save() ){
Alert::danger("Error: No se se guardaron los cambios.");
} else {
Alert::success("El consorcio se modificó correctamente.");
}
return redirect()->route('consorcio.edit', $consorcio->id);
}
and in the view (consorcio/edit.blade.php) :
<div class="container">
<div class="row">
<div class="col-md-12">
<div>
<p>{!! Alert::render() !!}</p>
</div>
...
FatalErrorException in String.php line 7:
Cannot use 'String' as class name as it is reserved
http://php.net/manual/en/reserved.other-reserved-words.php
The classes of html.php file don't work. I tried it part by part and this function has the problem. This function never returns the correct type class and always returns 'form-control' or 'default-class'
Buenos días. Estoy agregando links al menú por ejemplo. News y newsletter. Cuando selecciono news queda activo también newsletter debido a que la función hace una búsqueda parcial para agregar la clase active. Cual seria una solución apropiada. Por ahora modifique igualando en la función pero lo hago en el vendor. Pero es algo q no debería hacerse. Quizás creando una funcion. O también podría estar utilizando mal el componente. Gracias por su apoyo.
as laravelcollective/html was abandoned now composer recommends using spatie/laravel-html it would be great if this package has the option to make compatible.
Debes corregir lo del role y poner roles
Instalé Styde/Html en mi laravel 6 y obtengo el siguiente error
Undefined index: theme
me marca la siguiente linea
$this->theme = new Theme($this->app['view'], $this->options['theme'], $this->options['custom']);
vendor\styde\html\src\HtmlServiceProvider.php:110
Alerts are being lost among the requests.
Using middleware \ Styde \ Html \ Alert \ Middleware :: class
it is not working.
I'm using alert ('Hello')
and then redirect () -> route ('index')
Where in the view of the route index
I have the {!! Alert :: render () !!}
It seems that someone already raised a pull request correcting this problem: #120
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.