Quantcast
Channel: Grafikart | Derniers Sujets du forum
Viewing all 13822 articles
Browse latest View live

[Slim/Twig/Jquery] un bouton check ALL

$
0
0

Bonjour,

Je sais que je ne sui pas tout à fait au bon endroit mais le framework Slim est un symfony light. Alors j'espère que les solutions sont proches ...
J'ai trouvé diverses choses avec des problématiques approchantes sur le web (openclassrooms, stackoverflow), mais rien de fonctionne.

Ce que je fais

Alors mon fichier twig actuel

{# LA PARTIE DU FORMULAIRE #}

<div class="col m7 ">
                                    <p class="form-text offset-m1 col m11">Opérateurs</p>
                                    <div class="input-field col m3">
                                        <input id="select-all-operators" name="select-all-operators" type="checkbox">
                                        <label for="select-all-operators">Tous</label>
                                    </div>

                                    <div class="input-field col m9" id="selectionOperators">
                                        <select multiple class="input-field" id="operator" name="operator[]">
                                            <span class="listeDeroulante">
                                                <option value="" disabled selected>----</option>
                                                {% for operator in operators %}

                                                    {#{% if selectAllOperators is checked %}#}
                                                        <option name="{{ operator.DENOMINATION_1 }} value="{{ operator.DENOMINATION_1 }}">{{ operator.DENOMINATION_1 }}</option>
                                                    {#{% else %}#}
                                                        {#<option name="{{ operator.DENOMINATION_1 }} value="{{ operator.DENOMINATION_1 }}" selected>{{ operator.DENOMINATION_1 }}</option>#}
                                                    {#{% endif %}#}
                                                {% endfor %}

                                            </span>
                                        </select>
                                        <label class="input-field">Ou choisir un opérateur</label>
                                    </div>


                                </div>



{# LE BLOC SCRIPT  EN FIN DE PAGE#}

{% block script %}
        {#Pour l'affichage de l'input select#}
        <script>
            $(document).ready(function() {
                $('select').material_select();
            });
        </script>

        {#Pour le tableau#}
        <script src="{{ base_url() }}/js/sortable.js"></script>

        {#Pour le bouton checkbox : Tous#}
        <script src="{{ base_url() }}/js/selectAll-None.js"></script>

        {#Activation des fonctions au lancement de la page#}
        <script>
            window.onload = function() {
                sauvegardeCheck();
                typeCheck();
                eventListenerSelect();
            }
        </script>
    {% endblock %}

le fichier selectAll-None.js

function eventListenerSelect() {
    //Ne cocher aucun robot
    $('#select-none').click(function() {
        if($(this).is(':checked')) {
            $("#selectionOrdis").find('input[type=checkbox]').each(function () {
                this.checked = false; //on décoche tous les ordis
            });

            $('select#ordi option').removeAttr("selected");  //on retire l'attribut 'selected'

            document.getElementById("select-all").checked = false;
        }
    });

    //Cocher tous les robots
    $('#select-all').click(function() {
        if($(this).is(':checked')) {
            $("#selectionOrdis").find('input[type=checkbox]').each(function () {
                this.checked = true; //on coche tous les ordis
            });

            $('select#ordi option').prop("selected", "selected"); //on applique l'attribut 'selected'

            document.getElementById("select-none").checked = false;
        }
    });

    //Cocher tous les opérateurs
    $('#select-all-operators').click(function() {
        if($(this).is(':checked')) {
            $("#selectionOperators").find('input[type=checkbox]').each(function () {
                this.checked = true; //on coche tous les opérateurs
            });

            //on applique l'attribut 'selected' à l'élément html
            $("select#operator option").prop("selected", "selected");

        }
    });
}

Ce que je veux

Alors voilà le topo :

j'ai une checkbox (appelons la checkAll) et un select dans mon formulaire.
Je voudrais que quand on coche checkAll, cela coche toutes les checkboxs de mon select.

Et quand cela sera ok, j'aimerai que si une des checkboxs contenuent dans le select n'est pas cochée, cela décoche automatiquement checkAll.

Ce que j'obtiens

Le code ne fonctionne pas du tout, pourtant je me suis appuyée sur de l'existant qui fonctionne. Les fonctions select-All et select None fonctionnent, mais elles sont utilisées dans un autre twig.


reaction discord

$
0
0

Bonjours alors voila j'ai fais se code

const Discord = require('discord.js');

module.exports.run = (client, message, args) => {
    message.channel.send({embed})
    .then(message => {
        message.react(white_check_mark)
          bot.on('messageReactionAdd', (reaction, user) => {
            if (reaction.emoji.name === white_check_mark && user.id !== bot.user.id) {
                var role = "Membre" 
                user.addRole(role)
            }
          })
        })
}

mais cela me marque une erreur

TypeError: Cannot read property 'name' of undefined
    at c:\Users\Firumz\Desktop\Bot\menu.js:14:47
    at Array.forEach (<anonymous>)
    at c:\Users\Firumz\Desktop\Bot\menu.js:11:19
    at FSReqCallback.oncomplete (fs.js:146:23)

je voudrais que le bot donne le role membre quand je fais la reaction white_check_mark . je voudrais que se soit un message spésifique
Voila merci

Requête avec toutes les FK automatiquement

$
0
0

Bonjour,

Dans l'idée de faire des exports de données pour un projet perso, j'ai fait quelques requêtes qui me ressortent des données, avec les valeurs des clés étrangères si nécessaires mais du coup ça me demande une requête pour chaque table que je souhaite exporter ou presque.

D'où ma question à laquelle je n'ai pas trouvé de réponse pour le moment (et donc peut-être que ça n'est pas possible): existe-t-il un élément de requête qui permet en gros de faire un SELECT * de ma table, en allant aussi chercher toutes les valeurs des clés étrangères si nécessaires... et sans que je n'ai à faire de join ou autre, bref, que la requête se débrouille seule et que j'en ai au final qu'une seule et unique.

Par avance merci! :)

Problème d'un site ecommerce

$
0
0

Salut a tous, en se moment je boss sur un site de vente, du coup j'ai suivis tout les tutos de Grafikart, espace membre, et le gestion de panier, quand j'essaie de m'inscrire, les donnés ne s'enregistre pas sur ma base des donnés, et le bouton deconnecté ne s'affiche pas. Pour le coté panier, quand j'essaie de mettre un produits dans le panier, la page qui suit s'affiche aucune produits n'a été séléctionné. Je suis bloquer, j'arrive pas avancer, je suis nouveaux dans le php, svp quelqu'un peut m'aider svp. Merci d'avance

Utlisation knpSnappy

$
0
0

Bonjour,

Mon objectif est de générer un fichier pdf contenant une liste de candidats.
Je bloque depuis quelques jours et je voudrais donc un coup de main.

j'ai installé le package via composer require knplabs/knp-snappy-bundle

Décrivez ici votre code ou ce que vous cherchez à faire

Voici comment se presente mon fichier app/config/package/knp_snappy.yaml
knp_snappy:
pdf:
enabled: true
binary: "\"C:\\wkhtmltopdf\\bin\\wkhtmltopdf.exe\""
options:
## set default settings
no-outline: true
page-size: LETTER
# recommend to set utf-8 as default encoding
encoding: UTF-8
image:
enabled: true
binary: "\"C:\\wkhtmltopdf\\bin\\wkhtmltoimage.exe\""
options: []
`
le contenu du Controller

<?php
namespace App\Controller;
use App\Entity\Candidat;
use App\Form\CandidatType;
use App\Form\TuteurType;
use App\Repository\CandidatRepository;
use Doctrine\Common\Persistence\ObjectManager;
//use Doctrine\Common\Persistence\ManagerInterface;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\File\Exception\FileException;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Knp\Bundle\SnappyBundle\Snappy\Response\PdfResponse;
use Knp\Bundle\SnappyBundle\Snappy;
use Knp\Snappy\Pdf;
use Knp\Bundle\SnappyBundle\DependencyInjection;
class VanController extends AbstractController
{
/**

  • @Route("/listCandidats", name="van_list", methods={"GET"})
  • */

    public function listCandidats(Request $request)
    {
    $repo = $this->getDoctrine()->getRepository(Candidat::class);

    $candidat = $repo->findAll();
    $snappy = $this->get("knp_snappy.pdf");
    //$snappy->setOption("encoding", "UTF-8");

      $html = $this->renderView('van/list.html.twig', [
           'candidats'=> $candidat,
           'title' => "Welcome to our PDF Test"
        ]);
      $filename = "myfirst_pdf_with_snappy";
      //$websiteurl = "ourcodeworld.com";
      //$snappy->get('knp_snappy.pdf')->generate('http://www.google.fr', '/path/to/the/file.pdf');
      return new Response(
          $snappy->getOutputFromHtml($html),
          200,
          array(
              'Content-Type' => 'application/pdf',
              'Content-Disposition' => 'inline; filename="'.$filename.'.pdf"'
          )
      );
    

    }

}
`

Là l'erreur d'exécution que je reçois.

ServiceNotFoundException
HTTP 500 Internal Server Error
Service "knp_snappy.pdf" not found: even though it exists in the app's container, the container inside "App\Controller\VanController" is a smaller service locator that only knows about the "doctrine", "form.factory", "http_kernel", "parameter_bag", "request_stack", "router", "security.authorization_checker", "security.csrf.token_manager", "security.token_storage", "serializer", "session" and "twig" services. Try using dependency injection instead.

Modifier contenu texte site multilingue via l'admin du site

$
0
0

Bonjour,

Je suis débutant avec Symfony est je suis actuellement la "formation Symfony par l'exemple" (qui est très bien faite au passage !), et j'aimerais créer une administration sur mon site multilingue, où je peux modifier le texte présent sur chaque page et dans les différentes langues disponible, et non pas via la toolbar du mode dev de Symfony.
Je n'ai pas encore commencé le développement du site, mais je me pose les questions en amont pour savoir s'il serait préférable de passer par Symfony ou Wordpress pour ce détail par exemple.

Donc je m'en remets à vos connaissances ! Connaissez-vous des tutos ou avez-vous des idées qui permettrait de créer une admin dans ce genre avec Symfony 4 ?

Merci d'avance pour vos réponses !

OSX - Dump Mysql et Cron...

$
0
0

Bonjour tout le monde...

Je me bats avec un script bash qui aurait pour but de fonctionner de faire des dump de mes db via Cron...

Le script n'est pas de moi, mais il ressemble à ceci =>

# Optional variables for a backup script
DATE=`date +%Y-%m-%d_%H-%M`
BACKUP_DIR="/Users/Fabe-Air/Mes_Scripts/dumps/$DATE";
 test -d "$BACKUP_DIR" || mkdir -p "$BACKUP_DIR"
 # Get the database list, exclude information_schema
 for db in $(mysql --defaults-extra-file="/usr/local/etc/my.cnf"  -B -s  -e 'show databases' | grep -v information_schema)
 do
   # dump each database in a separate file
 #  mysqldump -u $MYSQL_USER --password=$MYSQL_PASS "$db"  > "$BACKUP_DIR/$db.sql"
         mysqldump --defaults-extra-file="/usr/local/etc/my.cnf" --skip-lock-tables "$db" > "$BACKUP_DIR/$db.sql"
 done

Le script fonctionne nickel si je le lance ainsi : sh backupMysql.sh

Mais, une fois que je le pousses dans Cron:

10 16 * * * sh ~/Mes_Scripts/backupMysql.sh
Ou même
10 16 * * * sh /Users/Fabe-Air/Mes_Scripts/backupMysql.sh
Ou encore
10 16 * * * /bin/sh /Users/Fabe-Air/Mes_Scripts/backupMysql.sh

il crée bien le dossier à la date du jour mais il reste vide...

Je crois avoir fait tellement de tests que j'ai du programmer une infinité de cron depuis ce matin...
Si quelqu'un à une idée..

Merci :)

Symfony 5 : Column 'image_name' cannot be null

$
0
0

Bonjour,

Je ne comprends pas d'où vient cette erreur alors je m'adresse à vous.

J'ai suivi la doc de Vich Uploader comme il se doit et j'ai ce message d'erreur lors de l'upload d'image :

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'image_name' cannot be null

Le nom de l'image n'est pas sauvegardé, et je ne comprends pas pourquoi !

Voici mon code :

vich_uploader.yaml

vich_uploader:
    db_driver: orm

    mappings:
       news_image:
           uri_prefix: /img/uploads/news
           upload_destination: '%kernel.project_dir%/public/img/uploads/news'
           namer: Vich\UploaderBundle\Naming\SmartUniqueNamer

           delete_on_update: true
           delete_on_remove: true

News.php :

<?php

namespace App\Entity;

use DateTime;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\HttpFoundation\File\File;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use Vich\UploaderBundle\Mapping\Annotation as Vich;

/**
 * @ORM\Entity(repositoryClass="App\Repository\NewsRepository")
 * @Vich\Uploadable
 */
class News
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=255)
     */
    private $title;

    /**
     * @ORM\Column(type="text")
     */
    private $content;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="news")
     * @ORM\JoinColumn(nullable=false)
     */
    private $author;

    /**
     * @ORM\Column(type="string")
     */
    private $imageName;

    /**
     * @Vich\UploadableField(mapping="news_image", fileNameProperty="imageName")
     */
    private $imageFile;

    /**
     * @ORM\Column(type="string", length=255)
     */
    private $featured;

    /**
     * @ORM\Column(type="datetime")
     */
    private $createdAt;

    /**
     * @ORM\Column(type="datetime", nullable=true)
     */
    private $updatedAt;

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getTitle(): ?string
    {
        return $this->title;
    }

    public function setTitle(string $title): self
    {
        $this->title = $title;

        return $this;
    }

    public function getContent(): ?string
    {
        return $this->content;
    }

    public function setContent(string $content): self
    {
        $this->content = $content;

        return $this;
    }

    public function getAuthor(): ?User
    {
        return $this->author;
    }

    public function setAuthor(?User $author): self
    {
        $this->author = $author;

        return $this;
    }

    public function setImageName(?string $imageName): void
    {
        $this->imageName = $imageName;
    }

    public function getImageName(): ?string
    {
        return $this->imageName;
    }

    public function getImageFile(): ?File
    {
        return $this->imageFile;
    }

    public function setImageFile(?File $imageFile = null): self
    {
        $this->imageFile = $imageFile;

        if ($this->imageFile instanceof UploadedFile) {
            $this->updatedAt = new DateTime('now');
        }

        return $this;
    }

    public function getFeatured(): ?string
    {
        return $this->featured;
    }

    public function setFeatured(string $featured): self
    {
        $this->featured = $featured;

        return $this;
    }

    public function getCreatedAt(): ?\DateTimeInterface
    {
        return $this->createdAt;
    }

    public function setCreatedAt(\DateTimeInterface $createdAt): self
    {
        $this->createdAt = $createdAt;

        return $this;
    }

    public function getUpdatedAt(): ?\DateTimeInterface
    {
        return $this->updatedAt;
    }

    public function setUpdatedAt(?\DateTimeInterface $updatedAt): self
    {
        $this->updatedAt = $updatedAt;

        return $this;
    }
}

NewsType.php :

<?php

namespace App\Form;

use App\Entity\News;
use Symfony\Component\Form\AbstractType;
use FOS\CKEditorBundle\Form\Type\CKEditorType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\FileType;

class NewsType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('title', TextType::class, [
                'label' => 'Titre *',
            ])
            ->add('content', CKEditorType::class, [
                'label' => 'Contenu *',
                'attr' => ['rows' => '8'],
            ])
            ->add('imageFile', FileType::class, [
                'label' => 'Ajouter une image *',
                'attr' => ['lang' => 'fr'],
                'required' => true
            ])
            ->add('featured', ChoiceType::class, [
                'label' => 'A la Une *',
                'choices' => ['Oui' => 'oui', 'Non' => 'non'],
            ])
        ;
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'data_class' => News::class,
        ]);
    }
}

AdminNewsController.php :

/**
     * @Route("/admin/news/create", name="create_news")
     */
    public function create(Request $request, EntityManagerInterface $em)
    {
        $news = new News();
        $form = $this->createForm(NewsType::class, $news);
        $form->handleRequest($request);

        if ($form->isSubmitted() && $form->isValid()) {
            $news->setAuthor($this->getUser());
            $news->setCreatedAt(new DateTime('now'));
            $em->persist($news);
            $em->flush();

            return $this->redirectToRoute('admin_news');
        }

        return $this->render('admin_news/create.html.twig', [
            'form' => $form->createView()

create.html.twig :

{% block body %}
    {{ form_start(form) }}
        {{ form_widget(form) }}
        <input class="btn btn-primary text-uppercase" type="submit" value="Ajouter">
    {{ form_end(form) }}
{% endblock %}

Merci pour votre aide !


API-Platform Opération personnalisée

$
0
0

Bonjour !

J'utilise API Platform depuis quelques jours maintenant (moins d'un mois). Et je veux savoir comment l'on peut créer une opération personnalisée comme à l'ancienne avec Symfony :

Utilisation de la méthode Object.keys( ) en typeScript

$
0
0

Bonjour,

Voila je rencontre un petit problème avec mon code.
Je n'arrive pas à récupérer la valeur de mon objet

Ce que je fais

const object1 = {
 "id": "458"
};


 for (let id in Object.keys(object1)) {
  console.log(`${id}: ${Object.keys(object1)} `);
}

Ce que je veux

Je cherche à récupérer la valeur du champ id.

Ce que j'obtiens

Décrivez ici vos erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

API-Platform Groupe de sérialisation ne fonctionne pas correctement

$
0
0

Bonjour,

J'ai une API faite avec Symfony 5 et je m'aide avec API Platform pour aller plus vite. Je rencontre cependant un problème très étrange. Lorque j'ajoute des groupes de sérialisation ou de désérialisation à mes ressources et que je tente de récupérer une collection ou même une item, tous les champs ne remontent pas

Ma ressource

<?php

namespace App\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use ApiPlatform\Core\Annotation\ApiResource;
use Symfony\Component\Serializer\Annotation\Groups;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * @ApiResource(
 *  attributes={"security"="is_granted('ROLE_USER')"},
 *  normalizationContext={
 *      "groups"={"pelerins_read"}
 *  },
 *  collectionOperations={
 *      "get"={"security"="is_granted('ROLE_INSCRIPTION') or is_granted('ROLE_ENCADREUR')", "security_message"="Vous n'êtes autorisés à consulter cette ressource"},
 *      "post"={"security"="is_granted('ROLE_INSCRIPTION')", "security_message"="Vous n'êtes autorisés à consulter cette ressource"}
 *  },
 *  itemOperations={
 *      "get"={"security"="is_granted('ROLE_INSCRIPTION') or is_granted('ROLE_ENCADREUR')"},
 *      "put"={"security"="is_granted('ROLE_INSCRIPTION')"}
 *  }
 * )
 * @ORM\Entity(repositoryClass="App\Repository\PelerinRepository")
 */
class Pelerin
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     * @Groups({"pelerins_read", "pelerins_read", "etat_sante_read"})
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=255)
     * @Assert\NotBlank(message="Le nom de famille du pèlerin est recquis.")
     * @Groups({"pelerins_read", "pelerins_read", "etat_sante_read"})
     */
    private $nom;

    /**
     * @ORM\Column(type="string", length=255)
     * @Assert\NotBlank(message="Le prénom du pèlerin est recquis.")
     * @Groups({"pelerins_read", "pelerins_read", "etat_sante_read"})
     */
    private $prenom;

    /**
     * @ORM\Column(type="string", length=255)
     * @Assert\NotBlank(message="Le sexe du pèlerin est recquis.")
     * @Assert\Choice(choices={"M", "F"}, message="Le sexe doit un caractère entre M et F")
     * @Groups({"pelerins_read"})
     */
    private $sexe;

    /**
     * @ORM\Column(type="datetime")
     * @Assert\NotBlank(message="La date de naissance du pèlerin est recquise.")
     * @Groups({"pelerins_read"})
     */
    private $date_naissance;

    /**
     * @ORM\Column(type="string", length=255)
     * @Assert\NotBlank(message="Le lieu de naissance du pèlerin est recquis.")
     * @Groups({"pelerins_read"})
     */
    private $lieu_naissance;

    /**
     * @ORM\Column(type="string", length=255)
     * @Assert\NotBlank(message="La résidence du pèlerin est recquise.")
     * @Groups({"pelerins_read"})
     */
    private $residence;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $numero_telephone;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Assert\Email(message="Le format de l'adresse email saisie n'est pas correct")
     * @Groups({"pelerins_read"})
     */
    private $email;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $numero_whatsapp;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Assert\NotBlank(message="Le numéro du passeport du pèlerin est recquis")
     * @Groups({"pelerins_read"})
     */
    private $numero_passeport;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Assert\NotBlank(message="La nature du passeport du pèlerin est recquis")
     * @Groups({"pelerins_read"})
     */
    private $nature_passeport;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\Formule", inversedBy="pelerins")
     * @ORM\JoinColumn(nullable=false)
     * @Groups({"pelerins_read"})
     * @Assert\NotBlank(message="Formule de voyage recquise pour continuer l'opération")
     */
    private $formule;

    /**
     * @ORM\Column(type="datetime")
     * @Groups({"pelerins_read"})
     * @Assert\NotBlank(message="La date d'inscription est requise")
     */
    private $date_inscription;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $inscrit_par;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $numero_inscrit_par;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $en_cas_urgence;

    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $numero_en_cas_urgence;

    /**
     * @ORM\Column(type="string", length=500, nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $commentaire;

    /**
     * @ORM\Column(type="datetime")
     * @Groups({"pelerins_read"})
     */
    private $created_at;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\User")
     * @ORM\JoinColumn(nullable=false)
     * @Groups({"pelerins_read"})
     */
    private $created_by;

    /**
     * @ORM\Column(type="datetime", nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $updated_at;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\User")
     * @Groups({"pelerins_read"})
     */
    private $updated_by;

    /**
     * @ORM\Column(type="boolean")
     * @Groups({"pelerins_read"})
     */
    private $is_deleted;

    /**
     * @ORM\Column(type="datetime", nullable=true)
     * @Groups({"pelerins_read"})
     */
    private $deleted_at;

Ce que j'obtiens

Et l'opération POST de création de ressource me propose :

{
  "nom": "string",
  "prenom": "string",
  "sexe": "string",
  "residence": "string",
  "email": "string",
  "formule": "string",
  "commentaire": "string"
}

Et lorsque je veux récuperer des ressources, j'obtiens

 {
            "@id": "/api/pelerins/7",
            "@type": "Pelerin",
            "id": 7,
            "nom": "Knox",
            "prenom": "Tamara",
            "sexe": "M",
            "residence": "Chagai",
            "email": "nunc.id@esttempor.ca",
            "formule": "/api/formules/1",
            "commentaire": null
    }

Je ne comprends pas pourquoi les autres champs n'apparaissent pas. Et ce n'est pas avec cette ressource seulement que je rencontre ce problème.

Recherche infographiste 3D pour jeu vidéo PC

$
0
0

Le poste

Bonjour,

Nous sommes une petite équipe indépendante à la recherche d’un infographiste 3D expérimenté pour venir nous épauler sur la création d’un jeu vidéo pour PC.

Le jeu, de type FPS, est développé sur la base du moteur Source et sa réalisation est déjà très avancée dans plusieurs domaines. Le jeu s’annonce excitant et prometteur.

Nous recherchons un auto-entrepreneur ou le dirigeant d’une entreprise individuelle pour du télétravail.

Vous serez en charge de la création des modèles 3D low poly du jeu (par exemple : un train, un kiosque à journaux, un cerisier, une voiture, une bouteille de vin…).

La rémunération s’élève à plus de 17000€ (après campagne Kickstarter) et vous recevrez également un pourcentage sur le montant des ventes TTC du jeu vidéo « STEAM » réalisé lors de la première année de commercialisation du jeu.

Vous travaillez idéalement sur Blender, Maya ou 3Ds Max.

Vous comprenez l’anglais (la documentation technique est principalement en anglais).

Vous trouverez ci-dessous un petit aperçu des maps du jeu :

https://www.zupimages.net/viewer.php?id=19/20/rgzk.jpg
https://www.zupimages.net/viewer.php?id=19/20/bdo2.jpg
https://www.zupimages.net/viewer.php?id=19/20/1qxl.jpg

A très vite !

Nous contacter

Si vous êtes intéressé, je vous remercierai de me communiquer votre portfolio à l’adresse mail freeman15975348621397[at]gmail[point]com.

Mettre un fond de particules à la navbar

$
0
0

Bonjour,

Voila je rencontre un petit problème avec mon code.

J'aimerais pouvoir mettre un fond de particules à ma navbar comme sur ce site : https://www.celestiam.fr/forum
le problème c'est que je ne sais pas comment faire, j'ai fait de nombreuses recherches, posté sur de nombreux forums autant en français qu'en anglais et même rejoint des serveurs discords dédiés à l'entreaide mais sans succès..
Voici mon code html :

<!DOCTYPE html>
<html>

<!-- head -->
<head>
    <meta charset="utf-8">
    <title>My portfolio</title>

    <!-- CSS-->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.8.0/css/bulma.min.css">
    <link rel="stylesheet" href="src/css/main.css">
    <!-- CSS-->

    <!-- FONT -->
    <link href="https://fonts.googleapis.com/css?family=Montserrat:700&display=swap" rel="stylesheet"> 
    <script src="https://kit.fontawesome.com/35ec9e22f4.js" crossorigin="anonymous"></script>
    <!-- FONT -->
</head>
<!-- head -->

<!-- body -->
<body>
    <!-- header -->
    <div class="block">
        <header class="header">
        <div id="particles-js" class="particles-js"></div>
            <a href="#" class="header-logo">My portfolio</a>
            <nav class="header-menu">
                <a href="#"><i class="fas fa-home"></i> Home</a>
                <a href="#"><i class="far fa-question-circle"></i> About</a>
                <a href="#"><i class="fas fa-align-justify"></i> Work</a>
                <a href="#"><i class="fas fa-envelope"></i> Contact</a>
            </nav>
        </header>
    </div>

    <!-- header -->

    <!-- Particles -->
        <script src="src/part/particles.js"></script>
        <script src="src/part/app.js"></script>
        <script src="src/part/particles.min.js"></script>
    <!-- Particles -->

        <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
        <script src="src/js/main.js"></script>
</body>
<!-- body -->
</html>

et voici mon code css :

/*
HEADER
*/
.header {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    height: 90px;
    line-height: 90px;
    background-color: #333333 ;
    position: fixed;
    top: 0;
}

.header .header-logo {
    color: #ffffff;
    font-family: 'Roboto Mono', monospace;
    float: left;
    margin-left: 30px;
    font-size: 20px;
}

.header .header-menu {
    float: right;
    margin-right: 30px;
}

.header .header-menu a {
    margin-right: 25px;
    color: #ffffff;
    font-family: 'Roboto Mono', monospace;
}

.header .header-menu a:hover {
    color: rgb(164, 176, 190);
}

j'attend vos réponses.. :D

Modifier l'opacité d'une image avec hover / CSS

$
0
0

Bonjour,

Voila je rencontre un petit problème avec mon code CSS.

Ce que je fais

Décrivez ici votre code ou ce que vous cherchez à faire
Je souhaite qu'une image change d'opacité lorsque la souris passe dessus en prenant une couleur bleue de l'arrière-plan.

Entourez votre code pour bien le mettre en forme
J'indique la couleur d'arrière-plan de l'image :
.wp-image-81 {
background-color:#56c7d1
}

et puis le changement d'opacité quand la souris passe dessus :
.wp-image-81:hover {
  opacity: 0.5;
  filter: alpha(opacity=50);
}



### Ce que je veux

Une image qui devient transparente et bleutée. 

### Ce que j'obtiens

Apparemment, je n'arrive pas à indiquer correctement la couleur de l'arrière-plan de l'image, car le navigateur ne le prend pas en compte.
Deuxième problème, lorsque j'applique uniquement le code pour changer la transparence avec hover, il y a une ligne noire qui s'affiche au milieu de l'image...

Merci par avance pour votre aide. 

Pas possible de sauvegarder un élément provenant d'un code Ajax

$
0
0

Bonjour,

J'utilise CakePHP 3.8. J'ai une view qui permet à un utilisateur d'ajouter un élément dans une table sans recharcher une page, d'où le Ajax.

Voici ce que j'ai dans mon contrôleur:

    public function addsynonyms()
    {
        // Add a trace in the table Traces
        $this->tracesController->add($this->shopId, 'Dico', 'addsynonyms', '');

        if ($this->request->is('get')) {
            $this->request->allowMethod('ajax');

            $keyword = strtolower(trim($this->request->query['keyword']));
            $synonym = strtolower(trim($this->request->query['synonym']));

            $this->log('keyword : ' . $keyword);
            $this->log('synonym : ' . $synonym);

            // Add the element
            if ($this->Auth->user('id') > 0){
                $dico = $this->Dico->newEntity();
                $dico['userid']             = $this->Auth->user('id');
                $dico['lang']               = "FR";
                $dico['word']               = $keyword;
                $dico['synonym']            = $synonym;
                $dico['type']               = "";
                $dico['genre']              = "";
                $dico['singularPlurial']    = "";
                $dico['used']               = 0;
                $dico['created']            = date("Y-m-d H:i:s");

                $this->log('TRACE2 : ' . json_encode($dico));

                if (!$this->Dico->save($dico)) {
                    $x = $dico->errors();
                    if ($x) {
                        $this->log(json_encode($this->Dico));
                        $this->log(json_encode($x));
                    }
                }
                $this->log('keyword : ' . $keyword . ' synonym : ' . $synonym . ' NOTADDED');

Ce que j'ai dans ma objet table:

   public function validationDefault(Validator $validator)
    {
        $validator
            ->integer('id')
            ->allowEmptyString('id', null, 'create');

        $validator
            ->integer('userid')
            ->requirePresence('userid', 'create')
            ->notEmptyString('userid');

        $validator
            ->scalar('lang')
            ->maxLength('lang', 10)
            ->requirePresence('lang', 'create')
            ->notEmptyString('lang');

        $validator
            ->scalar('word')
            ->maxLength('word', 250)
            ->requirePresence('word', 'create')
            ->notEmptyString('word');

        $validator
            ->scalar('synonym')
            ->maxLength('synonym', 250)
            ->allowEmptyString('synonym');

        $validator
            ->scalar('type')
            ->maxLength('type', 100)
            ->allowEmptyString('type');

        $validator
            ->scalar('genre')
            ->maxLength('genre', 1)
            ->allowEmptyString('genre');

        $validator
            ->scalar('singularPlurial')
            ->maxLength('singularPlurial', 1)
            ->allowEmptyString('singularPlurial');

        $validator
            ->integer('used')
            ->allowEmptyString('used');

        return $validator;
    }
}

Voici les traces que j'ai dans mon log:

2020-02-09 18:52:41 Error: TRACE2 : {"userid":1,"lang":"FR","word":"voiture","synonym":"tata","type":"","genre":"","singularPlurial":"","used":0,"created":"2020-02-09 18:52:41"}
2020-02-09 18:52:41 Error: [PDOException] SQLSTATE[HY000]: General error: 1364 Field 'userid' doesn't have a default value
#0 cakephp\src\Database\Statement\MysqlStatement.php(38): PDOStatement->execute(NULL)
#1 cakephp\src\Database\Statement\StatementDecorator.php(173): Cake\Database\Statement\MysqlStatement->execute(NULL)
#2 cakephp\src\Database\Log\LoggingStatement.php(55): Cake\Database\Statement\StatementDecorator->execute(NULL)
#3 cakephp\src\Database\Connection.php(333): Cake\Database\Log\LoggingStatement->execute()
#4 cakephp\src\Core\Retry\CommandRetry.php(67): Cake\Database\Connection->Cake\Database\{closure}()
#5 cakephp\src\Database\Connection.php(336): Cake\Core\Retry\CommandRetry->run(Object(Closure))
#6 cakephp\src\Database\Query.php(218): Cake\Database\Connection->run(Object(Cake\ORM\Query))
#7 cakephp\src\ORM\Table.php(2128): Cake\Database\Query->execute()
#8 cakephp\src\ORM\Table.php(2020): Cake\ORM\Table->_insert(Object(App\Model\Entity\Dico), Array)
#9 cakephp\src\ORM\Table.php(1933): Cake\ORM\Table->_processSave(Object(App\Model\Entity\Dico), Object(ArrayObject))
#10 cakephp\src\ORM\Table.php(1638): Cake\ORM\Table->Cake\ORM\{closure}()
#11 cakephp\src\Database\Connection.php(737): Cake\ORM\Table->Cake\ORM\{closure}(Object(Cake\Database\Connection))
#12 cakephp\src\ORM\Table.php(1639): Cake\Database\Connection->transactional(Object(Closure))
#13 cakephp\src\ORM\Table.php(1934): Cake\ORM\Table->_executeTransaction(Object(Closure), true)
#14 \src\Controller\DicoController.php(200): Cake\ORM\Table->save(Object(App\Model\Entity\Dico))
#15 cakephp\src\Controller\Controller.php(609): App\Controller\DicoController->addsynonyms()
#16 cakephp\src\Http\ActionDispatcher.php(120): Cake\Controller\Controller->invokeAction()
#17 cakephp\src\Http\ActionDispatcher.php(94): Cake\Http\ActionDispatcher->_invoke(Object(App\Controller\DicoController))
#18 cakephp\src\Http\BaseApplication.php(234): Cake\Http\ActionDispatcher->dispatch(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#19 cakephp\src\Http\Runner.php(65): Cake\Http\BaseApplication->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#20 cakephp\src\Http\Runner.php(65): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#21 cakephp\src\Http\Middleware\CsrfProtectionMiddleware.php(123): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#22 cakephp\src\Http\Runner.php(65): Cake\Http\Middleware\CsrfProtectionMiddleware->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#23 cakephp\src\Http\Runner.php(51): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#24 cakephp\src\Routing\Middleware\RoutingMiddleware.php(168): Cake\Http\Runner->run(Object(Cake\Http\MiddlewareQueue), Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#25 cakephp\src\Http\Runner.php(65): Cake\Routing\Middleware\RoutingMiddleware->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#26 cakephp\src\Routing\Middleware\AssetMiddleware.php(88): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#27 cakephp\src\Http\Runner.php(65): Cake\Routing\Middleware\AssetMiddleware->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#28 cakephp\src\Error\Middleware\ErrorHandlerMiddleware.php(96): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#29 cakephp\src\Http\Runner.php(65): Cake\Error\Middleware\ErrorHandlerMiddleware->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#30 debug_kit\src\Middleware\DebugKitMiddleware.php(53): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#31 cakephp\src\Http\Runner.php(65): DebugKit\Middleware\DebugKitMiddleware->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response), Object(Cake\Http\Runner))
#32 cakephp\src\Http\Runner.php(51): Cake\Http\Runner->__invoke(Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#33 cakephp\src\Http\Server.php(97): Cake\Http\Runner->run(Object(Cake\Http\MiddlewareQueue), Object(Cake\Http\ServerRequest), Object(Cake\Http\Response))
#34 \webroot\index.php(40): Cake\Http\Server->run()

Si je mets une valeur par défault "NULL" à la colonne "userid" et aussi à la colonne "lang", et bien je n'ai plus ce message d'erreur mais les colonnes sont mise à null. Sans prise en compte de mes données.

Je vous remercie par avance de votre aide.


Increase WiFi Range | Linksys WiFi Extender

$
0
0

With Linksys range extender setup, you can increase both the range and accessibility of your WiFi network to all dead zones. extender.linksys.com is the default web address to access the Linksys Extender Login page. In case, you need any sort of help with how to setup Linksys WiFi range extender, you can always consult technicians online.

un tout petit Problème

$
0
0

Bonjour,
comme le titre l'indique, j'ai un petit probéleme concernant lien, quand je reécrit URL en poitant vers le dossier public, j'arrive plus a afficher mes images disponible dans un dossier a la racine de mon site, merci pour votre aide.

un tout petit Problème

$
0
0

Bonjour,
comme le titre l'indique, j'ai un petit probéleme concernant lien, quand je reécrit URL en poitant vers le dossier public, j'arrive plus a afficher mes images disponible dans un dossier a la racine de mon site, merci pour votre aide.

Senior PHP Developer

$
0
0

Tropezia Development est une jeune société informatique qui s'occupe principalement de développement et de conception de sites web. À part cela, notre équipe de développeurs a déjà réalisé quelques projets réussis pour des clients étrangers dans le domaine des systèmes CRM et de l'administration. Notre projet principal est maintenant la plate-forme de jeu []https://tropeziapalacecasino.org/()
Nous sommes à la recherche d'un développeur backend/full-stack très motivé et très qualifié, avec un focus sur le PHP. Nous offrons une grande opportunité de développer un projet à partir de zéro dans une petite équipe mais de développeurs très expérimentés et qualifiés.
Si vous admirez prendre des responsabilités et être le propriétaire de votre flux de travail - envoyez-nous votre candidature ! En fait, il s'agit d'un poste à distance à temps plein.
Responsabilités :
Faire partie d'une équipe complète du produit, qui est positionnée comme une partie indépendante de la plate-forme ;
Développer de toutes nouvelles fonctionnalités avec une équipe distribuée et être proactif en termes d'introduction de nouvelles idées ;
Développer un système à partir de zéro ;
Développer en amont de nouvelles fonctionnalités ;
Révision du code et de l'architecture ;
Position proactive dans le développement de solutions, amélioration des processus ;
Fournir la feuille de route du produit et planifier l'avenir ;
Gérer les problèmes complexes qui pourraient survenir pendant le développement de la solution et fournir un soutien sur le terrain avec des solutions créatives et rapides ;
Veiller à ce que les normes de codage les plus élevées soient respectées et écrire un code hautement testable, automatisable et performant sur l'ensemble du SDLC.
Compétences personnelles :
Capacité à établir des relations positives avec un large éventail de personnes et à s'engager avec elles ;
Forte motivation, fiabilité et flexibilité dans le travail d'équipe. Grande attention aux détails ;
Cherche toujours à améliorer les processus et à proposer des solutions alternatives plus efficaces.
Exigences :
Plus de 5 ans d'expérience en PHP (5,7), solides connaissances des spécificités linguistiques ;
Connaissance approfondie des principes OOP, OOD (SOLID, GRASP), expérience dans leur application - est un MUST ;
Expérience dans le développement de solutions prêtes à la production ;
Expérience dans le développement de l'API REST ;
Plus de 5 ans d'expérience avec MySQL ;
3+ ans d'expérience avec les frameworks Symfony >=2 ou Zend Framework >= 2 (de préférence Zend Framework) ;
Excellentes connaissances en informatique, théorie des bases de données, pratiques de test de code ;
Compréhension des interactions et des protocoles de réseau, des conventions ;
Dépannage et débogage d'applications PHP.
Souhaitable :
Compréhension de l'orchestration et de la virtualisation (Docker) ;
Expérience des solutions de cloud computing (par exemple AWS, Google Cloud, Azure) ;
Connaissance des systèmes de courtage de messages (par exemple RabbitMQ) ;
Expérience avec JavaScript (ES6), TypeScript, Node.js ;
Expérience avec les frameworks JavaScript ;
Compréhension de la sécurité des applications, des normes et des meilleures pratiques du secteur.
Vous pouvez consulter notre exemple de travail à l'adresse suivante
Nous offrons :
Un travail intéressant dans l'industrie du jeu ;
Un bureau confortable au centre ville, équipé de tout ce qui permet à nos employés de se sentir à l'aise au travail ;
possibilité de travailler à domicile ;
Une excellente équipe.
Vous pouvez nous contacter via le chat du service clientèle à l'adresse []https://tropeziapalacecasino.org/() ou envoyer votre CV à notre responsable du recrutement buffy.lamon@yandex.com

Probleme d'affichage CSS dans navigateur

$
0
0

Bonjour,

Voila je rencontre un petit problème avec mon code.

<!DOCTYPE html>




Wild Circus


Je pense avoir correctement relier mon css à mon htm.
parcontre lorsque je glisse l'html dans mon navigateur il ne lis pas mon css

CSS :

.header-scroll {

text-decoration : none;}

#header-scrollone {

list-style: none;}

ul li {

list-style: none;
display: table-cell;}

span {

list-style: none;}

h2 {
font-family: 'Amatic SC', cursive;}
nav {

font-family: 'Amatic SC', cursive;}

h3 {
font-family: 'Amatic SC', cursive;}
{}

td,
th {
border: 1px solid rgb(190, 190, 190);
padding: 10px;
}

        td {
            text-align: center;
        }

        tr:nth-child(even) {
            background-color: #eee;
        }

        th[scope="col"] {
            background-color: #696969;
            color: #fff;
        }

        th[scope="row"] {
            background-color: #d7d9f2;
        }

        caption {
            padding: 10px;
            caption-side: bottom;
        }

        table {
            border-collapse: collapse;
            border: 2px solid rgb(200, 200, 200);
            letter-spacing: 1px;
            font-family: sans-serif;
            font-size: .8rem;
        }
Viewing all 13822 articles
Browse latest View live