"如果"停止方法的语句

时间:2016-04-21 13:57:32

标签: php html symfony twig

我真的不明白。我一定是个愚蠢的错误,但不可能知道在哪里。

我的控制器中有这个方法:

public function saveVote($user, $restaurantId, $date)
{
    // Récupération du restaurant
    $restaurant = $this->restaurantsRepository->find($restaurantId);

    // Récupération du vote
    //$vote = $this->votesRepository->findOneBy(array('votDate' => $date, 'votUsrLogin' => $user, 'votRestId' => $restaurant));

    // Calcul du poid
    $userVotes = $this->getVotesByUserAndDate($user, $date);
    $nbUserVotes = count($userVotes) > 5 ? 5 : count($userVotes);

    $vote = new Votes();
    $vote->setVotDate($date);
    $time = idate("U");
//        $hour = idate("H");
//        $minute = idate("i");
//        $second = idate("s");
//        $vote->setVotHour($hour . $minute . $second);
    $vote->setVotHour($time);


    $vote->setVotRestId($restaurant);
    $vote->setVotUsrLogin($user);

    // Redéfinition du poid
    if($user->isBirthday()){
        $vote->setVotPoid(1 - ($nbUserVotes * 0.1 * 5));
    }else{
        $vote->setVotPoid(1 - ($nbUserVotes * 0.1));
    }

    $this->em->persist($vote);
    $this->em->flush();

    // Redéfinition du poid des restaurants déjà votés
    //$this->setVotesPoid($userVotes, $elements);
}

当我添加" if"在最后 - 我检查生日 - 表单没有做任何事情,但是当我删除它时它发送没有问题。

以下是表格:

{% extends "::base.html.twig" %}

{% block stylesheets %}
{{ parent() }}

{% stylesheets
'bundles/intranet/css/draggable.css'
filter='cssrewrite' %}
<link rel="stylesheet" href="{{ asset_url }}"/>
{% endstylesheets %}
{% endblock %}

{% block content %}
<div id="sf_admin_container">
    <div class="titreBleuFonce">Allons-manger</div>

    <div id="sf_admin_content">

        {% if is_granted('ROLE_ADMIN') %}

            <div><span id="clear-past-votes" onclick="return clickDeletePast(event);"><img
                            src="{{ asset('bundles/intranet/images/commun/delete.png') }}" alt="Trash"/>Vider l'historique des votes passés</span>
            </div>
        {% endif %}

        <div class="liste-restaurants-wrapper bandeau">
            <h4>Restaurants disponibles : </h4>

            <div id="liste-restaurants" class="liste-draggable" ondragover="return dragOver(event);"
                 ondrop="return drop(event);" ondragleave="return dragLeave(event)"
                 ondragenter="return dragEnter(event);">
                {% for restaurant in restaurants %}
                    <a draggable="true" id="{{ restaurant.restId }}" ondragstart="dragStart(event);" href="#">
                        <p>{{ restaurant.restLibelle }}</p>
                        <span>{% if not restaurant.restCategorie is null %}{{ restaurant.restCategorie.catRestLibelle }}{% endif %}</span>
                    </a>
                {% endfor %}
            </div>
        </div>
        <img class="dragndrop" src="{{ asset('bundles/intranet/images/commun/arrow-drag-n-drop.png') }}"
             style="float: left; "/>
        <div class="liste-votes-wrapper bandeau">
            <h4>
                Vote personnel : <img id="clear-votes" onclick=" return clickDelete(event);"
                                      {% if votes|length == 0 %}class="hidden"{% endif %}
                                      src="{{ asset('bundles/intranet/images/commun/delete.png') }}"
                                      title="Suppression des votes"/>
            </h4>

            <div id="liste-votes" class="liste-draggable" ondragover="return dragOver(event);"
                 ondrop="return drop(event);" ondragleave="return dragLeave(event)"
                 ondragenter="return dragEnter(event);">
                {% for vote in votes %}
                    <a draggable="true" id="{{ vote.votRestId.restId }}" ondragstart="dragStart(event);" href="#">
                        <p>{{ vote.votRestId.restLibelle }}</p>
                        <span>{{ vote.votRestId.restCategorie.catRestLibelle }}</span>
                    </a>
                {% endfor %}
            </div>
        </div>
        <div class="bandeau">
            Les restaurants de la semaine :
            <ul>
                {% for restaurant in historique %}
                <li>{{ restaurant.jour }} : {{ restaurant.nom }}</li>
                {% endfor %}
            </ul>
            <br>
            <button id="enregistrer_vote">Enregistrer</button>
        </div>
        {% if absents %}
        <div style="float:left;">
            <h4>
                Ils ne mangent pas ici ...
            </h4>

            <div>

                {% for absent in absents %}
                    <a style="text-align: center;
                                margin: 10px 0;
                                padding: 15px;
                                background-color: #ecf3fa;
                                border: 1px solid #d1d8e0;
                                display: block;
                                font-weight: bold;
                                text-decoration: none;
                    ">
                        <p>{{ absent['prenom'] ~' '~ absent['nomInitiale'] }}</p>
                    </a>

                {% endfor %}
            </div>
        </div>
        {% endif %}
        {% if vote_restaurants %}
            <div >
                <h4>
                    Restaurants votés : {{ vote_restaurants }}
                </h4>
            </div>
        {% endif %}
        {% if bureau %}
            <div style="display:inline-block">
                <h4>
                    Bureau : {{ bureau }}
                </h4>
            </div>
        {% endif %}


    </div>
</div>
{% endblock %}

{% block javascript %}
<script type="text/javascript">
    var votes = new Array();

    function dragStart(event) {
        event.dataTransfer.effectAllowed = 'move';
        event.dataTransfer.setData("Text", event.target.getAttribute('id'));
    }
    function dragOver(event) {

        if (event.preventDefault) event.preventDefault(); // allows us to drop
        $(event.target).addClass('over');
        return false;
    }

    // to get IE to work
    function dragEnter(event) {
        $(event.target).addClass('over');
        return false;
    }
    ;

    function dragLeave(event) {
        $(event.target).removeClass('over');
    }
    ;
    function checkPasIci() {
        var check = false;
        $("#liste-votes").each(function () {
            if ($(this).text().trim()=='Pas ici') {
                check = true;
            }
            ;
        });
        return check;

    }
    function drop(event) {

        if (event.target.id == "liste-restaurants" || event.target.id == "liste-votes") {

            var element = event.dataTransfer.getData("Text");

            if (((event.target.id == "liste-votes" ) && $("#liste-votes").children().length > 0 && $("#" + element + " p").text().trim() == 'Pas ici') ||
                    ((event.target.id == "liste-votes" ) && checkPasIci() )) {
                alert('Vous ne pouvez pas manger ici et Pas ici, désolé ... ');
                return false;
            };
            //if($('#'+element).text().trim()=='Pas ici'){pas_ici=true;}

            event.target.appendChild(document.getElementById(element));
            event.stopPropagation();

            var elements = $("#liste-votes").children("a");
            if (elements.length > 0)
                $("#clear-votes").removeClass("hidden");
            else
                $("#clear-votes").addClass("hidden");

            var indexToRem = functiontofindIndexByKeyValue(votes, '_restaurant_id', element);

            if (event.target.id == "liste-votes") {
                if (indexToRem != null)
                    votes.splice(indexToRem, 1);

                votes.push({_restaurant_id: element});
            }
            else {

                votes.splice(indexToRem, 1);

            }
            $(event.target).removeClass("over");

        }
        else {
            event.dataTransfer.effectAllowed = 'move';
        }
        return false;
    }

    $('#enregistrer_vote').click(function () {

        if (confirm("Pas de regret ? On valide ?...")) {

            $.post('{{ path('votes_update') }}', {votes: votes}, function (xml) {
                location.reload();
            });

        }


    });


    function functiontofindIndexByKeyValue(arraytosearch, key, valuetosearch) {

        for (var i = 0; i < arraytosearch.length; i++) {

            if (arraytosearch[i][key] == valuetosearch) {
                return i;
            }
        }
        return null;
    }
    function clickDelete(event) {


        var elements = $("#liste-votes").children("a");
        var to = $("#liste-restaurants");
        var from = $("#liste-votes");

        for (var i = 0; i < elements.length; i++) {
            to.append($("#" + elements[i].id));
        }
        votes.splice(0, votes.length);

    }



    function clickDeletePast(event) {


        $.post('{{ path('votes_delete_past') }}', {}, function (xml) {
            if (xml.error) {
                alert('Une erreur s\'est produite : ' + xml.msg);
            }
            else {

                $("#clear-past-votes").addClass("hidden");
                alert("L'historique des votes passés a été vidé avec succès.");
            }
        }, 'json');
    }
</script>
{% endblock %}

单击按钮后应该显示的表单(对#&34不做任何操作;如果&#34;):

{% extends "::base.html.twig" %}

{% block stylesheets %}
{{ parent() }}

{% stylesheets
'bundles/intranet/css/draggable.css'
filter='cssrewrite' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% endblock %}

{% block content %}
<div id="sf_admin_container">
    <div class="titreBleuFonce">Allons-manger</div>

    <div id="sf_admin_content">

        {% if is_granted('ROLE_ADMIN') %}

            <div><span id="clear-past-votes" onclick="return clickDeletePast(event);"><img
                            src="{{ asset('bundles/intranet/images/commun/delete.png') }}" alt="Trash"/>Vider l'historique des votes passés</span>
            </div>
            <br/>
            <br/>
        {% endif %}

        {% set idx = -1 %}
        {% for restId, recap in recapitulatif %}
            {% set idx = idx +1 %}
            {% set taille = 30 + (10 * (recap['poid'] * 2)) %}
            <div id="{{ restId }}" class="resultat-wrapper" style="height: {{ taille ~ 'px' }}">
                {%  if idx > 0 %}
                <div class="votes"><span class="libelle-restaurant">{{ recap['libelle'] }}</span><br/>{{ recap['poid'] }}</div>
                {%  else %}
                <div class="votes"><span class="libelle-restaurant" style="color:red ;">{{ recap['libelle'] }}</span><br/>{{ recap['poid'] }}</div>
                {% endif %}
                <div class='votants'>
                    {% for votant in recap['votants'] %}
                        {{ votant['prenom'] ~' '~ votant['nomInitiale']~' (' ~ votant['poid'] ~ ')' }}<br/>
                    {% endfor %}
                </div>
                <p style='clear: both;'></p>
            </div>
        {% else %}
            Il n'y a aucun vote pour le moment.
        {% endfor %}
    </div>
</div>
{% endblock %}

{% block javascript %}
<script type="text/javascript">


    function clickDeletePast(event) {
        $.post('{{ path('votes_delete_past') }}', {}, function (xml) {
            if (xml.error) {
                alert('Une erreur s\'est produite : ' + xml.msg);
            }
            else {
                $("#clear-past-votes").addClass("hidden");
                alert("L'historique des votes passés a été vidé avec succès.");
            }
        }, 'json');
    }
</script>
{% endblock %}

我只知道symfony2一周,如果这个问题很愚蠢,请原谅我:/

提前致谢

0 个答案:

没有答案