<commit_before><?php

namespace CursoBundle\Controller;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use CursoBundle\Entity\Curso;
use UserBundle\Entity\Usuario;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;
use CursoBundle\Form\BuscarType;

/**
 * AsignacionController.
 */
class AsignacionController extends Controller
{
    /**
     * Método para mostrar los cursos no asignados  de un usuario.
     * 
     * @Route("/{username}/asignar/cursos/", name="asignacion")
     * @ParamConverter("usuario", class="UserBundle:Usuario", options={"username"="username"})
     * @Template("CursoBundle:Asignacion:crearAsignacion.html.twig")
     */
    public function asignarAction(Request $request, Usuario $usuario)
    {
        $form = $this->createForm(new BuscarType());

        $em = $this->getDoctrine()->getManager();
        $cursos = $em->getRepository('CursoBundle:Curso')->findAll();

        $cursosAsignados = $usuario->getCursos();


        $repositoryCurso = $this->getDoctrine()->getRepository('CursoBundle:Curso');
        $cursosOrdenados = $repositoryCurso->createQueryBuilder('curso')
            ->select('curso')
            ->orderBy('curso.nombreCurso','ASC')
            ->getQuery()
            ->getResult();
        

        $returnData = $this->mostrarCursosAsignados($cursosOrdenados, $cursosAsignados);
        $error = 0;

        return
        [
            'cursos' => $returnData,
            'query' => [],
            'error' => $error,
            'buscarCurso' => $form->createView(),
        ];
    }
    /**
     * Método que verifica que solo los cursos no asignados de un usuario.
     *<commit_msg>ordenar cursos de forma ascendente<commit_after><?php

namespace CursoBundle\Controller;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use CursoBundle\Entity\Curso;
use UserBundle\Entity\Usuario;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;
use CursoBundle\Form\BuscarType;

/**
 * AsignacionController.
 */
class AsignacionController extends Controller
{
    /**
     * Método para mostrar los cursos no asignados  de un usuario.
     * 
     * @Route("/{username}/asignar/cursos/", name="asignacion")
     * @ParamConverter("usuario", class="UserBundle:Usuario", options={"username"="username"})
     * @Template("CursoBundle:Asignacion:crearAsignacion.html.twig")
     */
    public function asignarAction(Request $request, Usuario $usuario)
    {
        $form = $this->createForm(new BuscarType());

        $em = $this->getDoctrine()->getManager();
        $cursos = $em->getRepository('CursoBundle:Curso')->findAll();

        $cursosAsignados = $usuario->getCursos();

        $repositoryCurso = $this->getDoctrine()->getRepository('CursoBundle:Curso');
        $cursosOrdenados = $repositoryCurso->createQueryBuilder('curso')
            ->select('curso')
            ->orderBy('curso.nombreCurso', 'ASC')
            ->getQuery()
            ->getResult();

        $returnData = $this->mostrarCursosAsignados($cursosOrdenados, $cursosAsignados);
        $error = 0;

        return
        [
            'cursos' => $returnData,
            'query' => [],
            'error' => $error,
            'buscarCurso' => $form->createView(),
        ];
    }
    /**
     * Método que verifica que solo los cursos no asignados de un usuario.
     *
{'fraction_non_alphanumeric': 0.13754045307443366, 'fraction_numerical': 0.0005393743257820927, 'mean_word_length': 3.2340182648401825, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 41, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5623184', 'n_tokens_mistral': 1136, 'n_tokens_neox': 1129, 'n_words': 181}