<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Diego</title>
    <description>The latest articles on DEV Community by Diego (@drodero).</description>
    <link>https://dev.to/drodero</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1040262%2F5d39576a-0ff3-4ba8-b0cc-6b860786b752.jpg</url>
      <title>DEV Community: Diego</title>
      <link>https://dev.to/drodero</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/drodero"/>
    <language>en</language>
    <item>
      <title>Efecto copos de nieve para dar a nuestra web un toque navideño</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Fri, 05 Dec 2025 12:11:43 +0000</pubDate>
      <link>https://dev.to/drodero/efecto-copos-de-nieve-para-dar-a-nuestra-web-un-toque-navideno-3j01</link>
      <guid>https://dev.to/drodero/efecto-copos-de-nieve-para-dar-a-nuestra-web-un-toque-navideno-3j01</guid>
      <description>&lt;p&gt;Hola, hoy os traigo un pequeño script que acabo de generar (si, si, con la ayuda inestimable de la IA, en este caso, Chat-GPT 5.1).&lt;/p&gt;

&lt;p&gt;Con este script tendremos en cualquier página un efecto de copos de nieve cayendo muy chulo, y sin añadir ninguna librería externa, es super ligero.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;script&amp;gt;
        document.addEventListener("DOMContentLoaded", () =&amp;gt; {
            const css = `
                .snowflake {
                    position: fixed;
                    top: -10px;
                    color: white;
                    font-size: 1em;
                    pointer-events: none;
                    animation: fall linear infinite;
                }
                @keyframes fall {
                    to { transform: translateY(100vh); opacity: 0; }
                }
            `;

            const style = document.createElement("style");
            style.innerHTML = css;
            document.head.appendChild(style);

            function createFlake() {
                const flake = document.createElement("div");
                flake.className = "snowflake";
                flake.textContent = "❄";
                flake.style.left = Math.random() * window.innerWidth + "px";
                flake.style.fontSize = 8 + Math.random() * 15 + "px";
                flake.style.animationDuration = 4 + Math.random() * 6 + "s";
                document.body.appendChild(flake);
                setTimeout(() =&amp;gt; flake.remove(), 10000);
            }

            setInterval(createFlake, 200);
        });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Espero que os guste, y por supuesto, sentíos libres de usarlo, modificarlo y lo que queráis. Eso si, si lo mejoráis, ponerlo en los comentarios y lo actualizo ;-)&lt;/p&gt;

&lt;p&gt;Gracias!&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>css</category>
      <category>tutorial</category>
      <category>chatgpt</category>
    </item>
    <item>
      <title>Como ejecutar Laravel con driver de SQLServer en Mac con procesador Silicon</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Wed, 08 Oct 2025 11:56:54 +0000</pubDate>
      <link>https://dev.to/drodero/como-ejecutar-php-con-driver-de-sqlserver-en-mac-con-procesador-silicon-25ch</link>
      <guid>https://dev.to/drodero/como-ejecutar-php-con-driver-de-sqlserver-en-mac-con-procesador-silicon-25ch</guid>
      <description>&lt;p&gt;Si te has vuelto loco como yo porque no puedes ejecutar de proyecto de PHP 8.x con Laravel porque falla la conexión con SQL Server (cuando hasta hace poco te funcionaba perfectamente). Claro, tienes un Mac con procesador Apple Silicon (M1, M2, M3, M4...).&lt;/p&gt;

&lt;p&gt;Pues después de muchas horas buscando información, al final la solución que he encontrado (si tu tienes una solución mejor, déjalo en los comentarios y actualizo el post), es lanzar este comando y luego el php artisan serve:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export DYLD_LIBRARY_PATH="/opt/homebrew/opt/openssl@1.1/lib:$DYLD_LIBRARY_PATH"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En mi caso, dado que tengo instalado también Laravel Herd, y para poner la cosa más divertida, no se le pueden instalar complementos como SQL Server al PHP que ejecuta Herd, tengo que lanzar la versión de PHP de brew que tengo instalada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/opt/homebrew/Cellar/php@8.2/8.2.28_1/bin/php artisan serve
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Como os decía, si tenéis una solución más bonita, mejor, más elegante, me lo podéis dejar en comentarios.&lt;/p&gt;

&lt;p&gt;Un saludo y hasta la próxima!&lt;/p&gt;

</description>
      <category>spanish</category>
      <category>laravel</category>
      <category>database</category>
      <category>php</category>
    </item>
    <item>
      <title>Como redefinir el color de un estilo tipo primary</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Tue, 03 Jun 2025 16:45:13 +0000</pubDate>
      <link>https://dev.to/drodero/como-redefinir-el-color-de-un-estilo-tipo-primary-2cpb</link>
      <guid>https://dev.to/drodero/como-redefinir-el-color-de-un-estilo-tipo-primary-2cpb</guid>
      <description>&lt;p&gt;Hola, os voy a contar como he resuelto un "problema" que tenía con un proyecto en el que estoy trabajando. &lt;/p&gt;

&lt;p&gt;En este caso tengo una plantilla basada en Bootstrap 5 (se llama YNEX), y como buena plantilla que es (es de pago, pero la recomiendo), los estilos los tiene definidos con variables.&lt;/p&gt;

&lt;p&gt;Ya se que con pre-procesadores de css tipo SASS y demás se puede hacer, pero nunca han sido de mi gusto.&lt;/p&gt;

&lt;p&gt;Lo que he hecho es crear un fichero llamado pre-custom.css con este contenido:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;:root {
    --primary-color: #0a8e3f !important;
    --primary-color-hover: #0a8e3f !important;
    --primary-color-focus: rgba(9, 125, 60, 0.5) !important;
    --primary-color-active: #0a8e3f !important;
    --primary-color-disabled: #097d3c !important;

    --primary-rgb: 10, 142, 63 !important;
    --primary-rgb-hover: 10, 142, 63 !important;
    --primary-rgb-focus: 9, 125, 60 !important;
    --primary-rgb-active: 10, 142, 63 !important;
    --primary-rgb-disabled: 9, 125, 60 !important;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Este fichero hay que cargarlo antes que el CSS principal de la plantilla. Yo, en mi caso, lo cargo el primero de todos en el HTML (en mi caso plantilla Blade para Laravel).&lt;/p&gt;

&lt;p&gt;De esta forma he re-definido el color de todos los elementos que usan  primary-color de la plantilla.&lt;/p&gt;

</description>
      <category>css</category>
    </item>
    <item>
      <title>Como validar IBAN español con C#</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Thu, 27 Feb 2025 19:29:20 +0000</pubDate>
      <link>https://dev.to/drodero/como-validar-iban-espanol-con-c-1nkb</link>
      <guid>https://dev.to/drodero/como-validar-iban-espanol-con-c-1nkb</guid>
      <description>&lt;p&gt;Hola, en este pequeño algoritmo, os defino como se escribe en C# una función para validar si un número de cuenta IBAN español, pasado como argumento, es válido o no:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; public int ValidaIBAN(string iban)
 {
     if (string.IsNullOrWhiteSpace(iban))
         return 0;

     // Eliminar espacios y convertir a mayúsculas
     iban = iban.Replace(" ", "").ToUpper();

     // Verificar longitud exacta de IBAN español (24 caracteres)
     if (iban.Length != 24)
         return 0;

     // Extraer los 20 dígitos del BBAN (sin los 4 caracteres iniciales "ESXX")
     string bban = iban.Substring(4);

     // Código de España "ES" convertido a números = "1428"
     string numericIban = bban + "1428" + iban.Substring(2, 2); // Mueve los dígitos de control al final

     Console.WriteLine(numericIban);

     // Convertir a BigInteger y calcular el módulo 97
     BigInteger ibanNumber = BigInteger.Parse(numericIban);

     if (ibanNumber % 97 == 1)
         return 1;
     else
         return 0;
 }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Es una cosa muy sencilla, con la que llevo peleando durante un rato. Espero que a alguien le pueda servir ;-)&lt;/p&gt;

</description>
      <category>csharp</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>Como poner PHP en el path con comandos del terminal en Windows 11</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Wed, 27 Nov 2024 20:42:37 +0000</pubDate>
      <link>https://dev.to/drodero/como-poner-php-en-el-path-con-comandos-del-terminal-en-windows-11-538n</link>
      <guid>https://dev.to/drodero/como-poner-php-en-el-path-con-comandos-del-terminal-en-windows-11-538n</guid>
      <description>&lt;p&gt;Si quieres poder usar PHP para por ejemplo, programar con Laravel, después de descargarte de la web oficial los ficheros de PHP para Windows, y por ejemplo, los descomprimes en:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;C:\php\php-8.3&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Lo siguiente sería usar este comando de PowerShell:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;[Environment]::SetEnvironmentVariable("Path", $Env:Path + ";C:\php\php-8.3", [EnvironmentVariableTarget]::Machine)&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Y listo, ya tienes PHP en el path, ¡así de fácil!&lt;/p&gt;

</description>
      <category>php</category>
      <category>windows11</category>
      <category>laravel</category>
    </item>
    <item>
      <title>Como añadir una columna a varias tablas de golpe con Laravel</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Fri, 31 May 2024 11:30:42 +0000</pubDate>
      <link>https://dev.to/drodero/como-anadir-una-columna-a-varias-tablas-de-golpe-con-laravel-860</link>
      <guid>https://dev.to/drodero/como-anadir-una-columna-a-varias-tablas-de-golpe-con-laravel-860</guid>
      <description>&lt;p&gt;Imagínate que llevas un tiempo creando tu proyecto. Y tienes muchas tablas ya desarrolladas. De repente te das cuenta que te falta una columna en un grupo de ellas. Por ejemplo, quieres tener una columna "completado".&lt;/p&gt;

&lt;p&gt;La opción trivial, es ir creando una migración para cada una de las tablas, para crearles esa columna.&lt;/p&gt;

&lt;p&gt;Pero gracias a Laravel, podemos crear una migración donde añada esa columna a todas las tablas. En mi caso, será a todas las tablas que comienzan por "C_".&lt;/p&gt;

&lt;p&gt;Aquí tenéis el código:&lt;/p&gt;

&lt;h2&gt;
  
  
  Creamos la migración
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan make:migration add_completado_to_all_c_tables --table=users

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Modificamos la migración:
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Facades\DB;

class AddCompletadoToAllCTables extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        // Obtener todas las tablas que comienzan con 'C_'
        $tables = DB::connection()-&amp;gt;getDoctrineSchemaManager()-&amp;gt;listTableNames();
        $cTables = array_filter($tables, function($table) {
            return strpos($table, 'C_') === 0;
        });

        // Añadir la columna 'completado' a cada tabla
        foreach ($cTables as $table) {
            Schema::table($table, function (Blueprint $table) {
                $table-&amp;gt;boolean('completado')-&amp;gt;default(0)-&amp;gt;after('id'); // Ajusta 'after' según sea necesario
            });
        }
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        // Eliminar la columna 'completado' de cada tabla
        $tables = DB::connection()-&amp;gt;getDoctrineSchemaManager()-&amp;gt;listTableNames();
        $cTables = array_filter($tables, function($table) {
            return strpos($table, 'C_') === 0;
        });

        foreach ($cTables as $table) {
            Schema::table($table, function (Blueprint $table) {
                $table-&amp;gt;dropColumn('completado');
            });
        }
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Ejecutamos la migración
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan migrate

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;De esta forma, le añadiremos la columna "completado" a todas las tablas de nuestra base de datos que comienzan por "C_".&lt;/p&gt;

&lt;p&gt;Oh yeah!&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>laravel</category>
      <category>database</category>
    </item>
    <item>
      <title>Ordering dates using DataTables.net in Laravel</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Mon, 18 Mar 2024 20:15:25 +0000</pubDate>
      <link>https://dev.to/drodero/ordering-dates-using-datatablesnet-in-laravel-4976</link>
      <guid>https://dev.to/drodero/ordering-dates-using-datatablesnet-in-laravel-4976</guid>
      <description>&lt;p&gt;If you tried to order dates using the &lt;a href="https://www.datatables.net/" rel="noopener noreferrer"&gt;DataTables&lt;/a&gt; component, you may have struggled for a wile.&lt;/p&gt;

&lt;p&gt;I've found the final solution to all these problems: using the data-order attribute to specify the date in yyyy-mm-dd format:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; &amp;lt;td data-order="{{ \Carbon\Carbon::parse($pacient-&amp;gt;created_at)-&amp;gt;format('Y-m-d H:i') }}"&amp;gt;
     {{ $pacient-&amp;gt;formatted_created_at }}
&amp;lt;/td&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then, you can simply order by that column in the JavaScript code, and, that's all folks!&lt;/p&gt;

&lt;p&gt;PS: I have in my &lt;strong&gt;Patient&lt;/strong&gt; model this definition:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; public function getFormattedCreatedAtAttribute()
    {
        return $this-&amp;gt;created_at-&amp;gt;format('d-m-Y');
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>laravel</category>
      <category>datatables</category>
    </item>
    <item>
      <title>Enhace your javascript Alerts with SweetAlert!</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Fri, 23 Feb 2024 08:00:29 +0000</pubDate>
      <link>https://dev.to/drodero/enhace-your-javascript-alerts-with-seewtalert-2hfe</link>
      <guid>https://dev.to/drodero/enhace-your-javascript-alerts-with-seewtalert-2hfe</guid>
      <description>&lt;p&gt;Do you want to improve the alerts of your web application?&lt;/p&gt;

&lt;p&gt;Tired of the look of default alerts?&lt;/p&gt;

&lt;p&gt;So, today you are in luck!&lt;/p&gt;

&lt;p&gt;You can use SweetAlert, which is a gorgeous replacement for alerts and error messages:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sweetalert.js.org/" rel="noopener noreferrer"&gt;https://sweetalert.js.org/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's is very simple to use. One you've included the css and js files in your source code, you just have to replace the "alert" function with the "swal" function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alert("Oops, something went wrong!")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6u2214ux9ady2lm4gn92.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6u2214ux9ady2lm4gn92.png" alt="Image description" width="449" height="125"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;swal("Oops", "Something went wrong!", "error")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3gs03jxnc0ixw579eur.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3gs03jxnc0ixw579eur.png" alt="Image description" width="479" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You have plenty of options to customize your alerts, so, let's dive into their docs, and, master it!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sweetalert.js.org/docs/" rel="noopener noreferrer"&gt;https://sweetalert.js.org/docs/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy coding!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Crear plantilla de Email con Laravel 10 y enviar un correo</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Thu, 27 Apr 2023 13:56:51 +0000</pubDate>
      <link>https://dev.to/drodero/crear-plantilla-de-email-con-laravel-10-y-enviar-un-correo-3ob4</link>
      <guid>https://dev.to/drodero/crear-plantilla-de-email-con-laravel-10-y-enviar-un-correo-3ob4</guid>
      <description>&lt;p&gt;Laravel tiene un sistema genial para el envío de correos. En este artículo no vamos a contar como configurarlo, sino que vamos a ir directamente a como se envía un correo.&lt;/p&gt;

&lt;p&gt;Para crear una plantilla de correo electrónico, que además será parametizable, primero tenemos que lanzar una orden que nos va a crear los ficheros necesarios:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan make:mail UsuarioCreadoParaEnvioComunicaciones --markdown=emails.usuario_creado_para_envio_comunicaciones
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Crea dos ficheros, una clase tipo Mailable:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;app/Mail/UsuarioCreadoParaEnvioComunicaciones.php&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Y un fichero donde se pondrá el texto del email:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;resources/views/emails/usuario_creado_para_envio_comunicaciones.blade.php&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Nos vamos al fichero &lt;code&gt;UsuarioCreadoParaEnvioComunicaciones.php&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;En el método &lt;code&gt;__construct&lt;/code&gt;, vamos a poner las variables que queremos pasarles al correo electrónico:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public function __construct(public Inscripcion $inscripcion, public string $password) { }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Y que no se nos olvide poner en la cabecera:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;use App\Models\Inscripcion;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Y cambiamos el asunto del email en el campo subject del método &lt;code&gt;envelope()&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Ahora nos vamos al fichero &lt;code&gt;usuario_creado_para_envio_comunicaciones.blade.php&lt;/code&gt; y lo modificamos al gusto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@component('mail::message')
![{{ $inscripcion-&amp;gt;elcongreso-&amp;gt;nombre }}]({{ $inscripcion-&amp;gt;elcongreso-&amp;gt;logo }})

# {{ $inscripcion-&amp;gt;elcongreso-&amp;gt;nombre }}

Estimad{{ $inscripcion-&amp;gt;o_a() }} {{ $inscripcion-&amp;gt;nombre }},

@if($password == "La que usted tenía anteriormente")
**Aparece en nuestros sistemas como usuari{{ $inscripcion-&amp;gt;o_a() }} registrad{{ $inscripcion-&amp;gt;o_a() }} en el portal de congresos.**
@endif

A continuación le explicamos los pasos a seguir para realizar su primer acceso y proceder a registrar sus comunicaciones:

* [{{ route('mis-comunicaciones.index', $inscripcion-&amp;gt;elcongreso-&amp;gt;elcongreso) }}]({{ route('mis-comunicaciones.index', $inscripcion-&amp;gt;elcongreso-&amp;gt;elcongreso) }})

* Indique su dirección de correo electrónico y su clave:

 * **{!! $inscripcion-&amp;gt;email !!}**

 * **{{ $password }}**

Reciba un cordial saludo.

{{ $inscripcion-&amp;gt;elcongreso-&amp;gt;nombre }}
@endcomponent
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para probarlo podemos lanzar este código:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Mail::to('pruebas@gmail.com')-&amp;gt;send(new App\Mail\UsuarioCreadoParaEnvioComunicaciones(App\Models\Inscripcion::find(38), 'password'));

Mail::to('pruebas@gmail.com')-&amp;gt;send(new App\Mail\UsuarioCreadoParaEnvioComunicaciones(App\Models\Inscripcion::find(38), 'La que usted tenía anteriormente'));
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Un saludo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Instalar el driver de SQL Server para PHP 8.1 en Plesk</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Wed, 12 Apr 2023 15:34:00 +0000</pubDate>
      <link>https://dev.to/drodero/instalar-el-driver-de-sql-server-para-php-81-en-plesk-4033</link>
      <guid>https://dev.to/drodero/instalar-el-driver-de-sql-server-para-php-81-en-plesk-4033</guid>
      <description>&lt;p&gt;Hoy he actualizado una aplicación con Laravel desde la versión 8 a la versión 10, y aparte del pequeño dolor de cabeza de subir dos versiones de Laravel, me he encontrado con el problema de que en la versión de PHP 8.1 no estaba configurado el driver de SQL Server.&lt;br&gt;
Después de mucho buscar, los comandos que he tenido que lanzar son estos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;apt-get install apt-transport-https make gcc g++ unixodbc unixodbc-dev plesk-php81-dev

/opt/plesk/php/8.1/bin/pecl install pdo_sqlsrv

echo "extension=pdo_sqlsrv.so" &amp;gt; /opt/plesk/php/8.1/etc/php.d/pdo_sqlsrv.ini

/opt/plesk/php/8.1/bin/pecl install sqlsrv

echo "extension=sqlsrv.so" &amp;gt; /opt/plesk/php/8.1/etc/php.d/sqlsrv.ini

plesk bin php_handler --reread

plesk sbin packagemng -sdf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;La información la he sacado de esta web y modificado un pelín para PHP 8.1:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://support.plesk.com/hc/en-us/articles/12377482190999--How-to-install-the-sqlsrv-extension-for-the-Plesk-PHP-handlers-" rel="noopener noreferrer"&gt;https://support.plesk.com/hc/en-us/articles/12377482190999--How-to-install-the-sqlsrv-extension-for-the-Plesk-PHP-handlers-&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Generar datos de pruebas en un proyecto con Laravel 10</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Mon, 10 Apr 2023 07:34:00 +0000</pubDate>
      <link>https://dev.to/drodero/generar-datos-de-pruebas-en-un-proyecto-con-laravel-10-4dcf</link>
      <guid>https://dev.to/drodero/generar-datos-de-pruebas-en-un-proyecto-con-laravel-10-4dcf</guid>
      <description>&lt;p&gt;Había leído muchas veces sobre este tema, pero no me había puesto a generar datos de pruebas con Laravel 10. Al final lo he conseguido, y quiero compartirlo.&lt;/p&gt;

&lt;p&gt;Vamos a necesitar dos clases. Una clase de tipo &lt;strong&gt;Factory&lt;/strong&gt; y otra clase de tipo &lt;strong&gt;Seeder&lt;/strong&gt;. La primera nos servirá para definir cómo va a ser cada fila, y la segunda, creamos las filas que necesitemos.&lt;/p&gt;

&lt;p&gt;En el ejemplo que voy a usar, vamos a imaginar que vamos a crear revisores para las comunicaciones de un congreso.&lt;/p&gt;

&lt;h2&gt;
  
  
  Factory
&lt;/h2&gt;

&lt;p&gt;Lanzamos primero el comando para crear la clase Factory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan make:factory RevisorFactory -m Revisor
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ahora creamos la definición:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; public function definition()
    {
        return [
            'congreso' =&amp;gt; 'test',
            'user_id' =&amp;gt; 1,
            'email' =&amp;gt; $this-&amp;gt;faker-&amp;gt;unique()-&amp;gt;safeEmail,
            'genero' =&amp;gt; $this-&amp;gt;faker-&amp;gt;numberBetween(1, 2),   
            'nombre' =&amp;gt; $this-&amp;gt;faker-&amp;gt;firstName,
            'apellido1' =&amp;gt; $this-&amp;gt;faker-&amp;gt;lastName,
            'apellido2' =&amp;gt; $this-&amp;gt;faker-&amp;gt;lastName,
            'pais_trabajo_id' =&amp;gt; 'ES',
            'provincia_trabajo_id' =&amp;gt; $this-&amp;gt;faker-&amp;gt;numberBetween(1, 50),

        ];
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Seeder
&lt;/h2&gt;

&lt;p&gt;Creamos la clase Seeder:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan make:seeder RevisorSeeder
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Y creamos su definición para en este caso, generar 20 revisores:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public function run()
    {
        Revisor::factory()
            -&amp;gt;count(20)
            -&amp;gt;create();
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Creamos los datos de prueba
&lt;/h2&gt;

&lt;p&gt;A continuación, lanzamos este comando, y se generarán en la base de datos 20 revisores con la definición que hayamos especificado:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php artisan db:seed --class=RevisorSeeder
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Localización en español
&lt;/h2&gt;

&lt;p&gt;Si queremos localizar en español los datos, debemos especificar la clave siguiente en nuestro fichero &lt;strong&gt;.env&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;FAKER_LOCALE=es_ES
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Extra: Asociamos temas a los revisores
&lt;/h2&gt;

&lt;p&gt;Si queremos asociar temas a los revisores recién creados, una forma de hacerlo es modificando el Seeder:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public function run()
    {
        Revisor::factory()
            -&amp;gt;count(20)
            -&amp;gt;create();

        //Asociamos temas a los revisores
        $revisores = Revisor::whereCongreso('test')-&amp;gt;get();

        foreach ($revisores as $r) {
            //Selecciono un numero aleatorio de temas
            $num_temas = rand(1, 10);
            //Selecciono los temas
            $temas = Tema::inRandomOrder()-&amp;gt;take($num_temas)-&amp;gt;get();
            //Asocio los temas al revisor
            $r-&amp;gt;temas()-&amp;gt;attach($temas);
        }
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Espero que os sirva de ayuda. Un saludo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Set new number for autoincrement value in a MySQL table</title>
      <dc:creator>Diego</dc:creator>
      <pubDate>Fri, 31 Mar 2023 07:52:12 +0000</pubDate>
      <link>https://dev.to/drodero/set-new-number-for-autoincrement-value-in-a-mysql-table-46ma</link>
      <guid>https://dev.to/drodero/set-new-number-for-autoincrement-value-in-a-mysql-table-46ma</guid>
      <description>&lt;p&gt;If you want to reset the auto-increment number of a table to start it again with a new value, you have to launch this SQL:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ALTER TABLE my_table_name AUTO_INCREMENT=400;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this case, &lt;strong&gt;400&lt;/strong&gt; is the value you want to be the new start value.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
