Ajouter un if après un premier if très différent

Nouveau WRInaute
Bonjour,

J'ai un formulaire où l'on ne peut pas passer commande si on n'a pas assez de crédits sachant que le crédit minimum d'achat est 5.

Et je souhaiterais ajouter un if pour dire que si le service est fermé on ne peut pas commander dans ce formulaire "Commande impossible, le service est fermé".

Voici le script avec mon dernier if tout en bas du code suivant :
Code:
<script>
    jQuery(document).ready(function($){
        $('pre').hide();
        $('.h-landmark').click(function(){
            $('pre').toggle();
        });
        /*$('input[type=checkbox]').each(function(){
            var key = $(this).val();
            if ($('input[name='+key+']').val() > 1) {
                $(this).parent().append(' ( ' + $('input[name='+key+']').val() + ' crédits )');
            }
            else if ($('input[name='+key+']').val() > 0) {
                $(this).parent().append(' ( ' + $('input[name='+key+']').val() + ' crédit )');
            }
            else{
                $(this).parent().remove();
            }
        });*/
        $('input[type=checkbox]').change(function(){
            var base = parseInt($('#prix').data('base'));
            var total = base;
            $('.acf-field.acf-field-checkbox input[type=checkbox]').each(function(){
                
                if($(this).is(':checked')){
                    text = $(this).parent().text();
                    credit = parseInt(text.substring( (text.length - 9)));
                    console.log($(this));
                    total = total + credit;
                    
                    $("#prix").val(total);
                }
            });
            $('.total').text(total);
            if(total > parseInt($('.solde').text()))
                $('.acf-form-submit').slideUp();
            else
                $('.acf-form-submit').slideDown();
        });

    });
</script>
Et voici mon code dans un autre fichier qui permet d'indiquer sur le site que le service est fermé ou ouvert suivant le temps indiqué, sachant que l'on peut aussi dire que le service est fermé jusqu'à une date donnée.
Code:
<div class="greenfarm-rightcontent-inner">

<?php if( date('D') != "Sun" && strtotime(date('H:i:s')) > strtotime(get_option('opening_time')) && strtotime(date('H:i:s')) < strtotime(get_option('closing_time')) && get_option('force_close_open') != "close" || get_option('force_close_open') == "open") :  ?>

<div class="open">SERVICE : OUVERT | DELAIS DE TRAITEMENT : 2 HEURES </div>

<?php else :  ?>

<div class="close">SERVICE : FERME | PROCHAINE LIVRAISON : <?php echo $next = in_array(date('D') ,["Sun","Sat"]) && get_option('force_close_open') != "close" ? "LUNDI " : ""; ?> <?php echo $next_delivery = get_option('force_close_open') == "close" ? get_option('next_delivery') : get_option('opening_time') ; ?>
</div>

<?php endif; ?>
</div>
Je ne sais pas comment ajouter dans le script, un code à la suite du dernier if pour dire que les commandes sont impossibles tant que le service est fermé.
Je ne suis pas développeur :( avez-vous une solution s'il vous plait ?
 
Nouveau WRInaute
Slt,

Bahhhh

"SERVICE : FERME - COMMANDES IMPOSSIBLE | PROCHAINE LIVRAISON :"

Comprend pas le soucis...
 
Nouveau WRInaute
Bonjour Ehplodor, merci pour ton retour.
Sur le site via le backoffice on peut cocher que le service est fermé pour les commandes et ajouter une date pour afficher quand les commandes seront possible ce qui correspond à "Prochaine livraison : jour/mois/année, on peu aussi ajouter l'heure d'ouverture et l'heure de fermeture pour afficher que le site est ouvert.
Et le problème est que quand le site est affiché fermé, les commandes sont quand même possible, alors qu'il ne faut pas. C'est pour cette raison que je vous ajouter un code qui permettrait de ne pas pouvoir passer commande.
service-ouvert.png service-ferme.png

Donc j'ai un premier code pour les commandes, qui fait que si le client n'a pas assez de crédit il ne peut pas commander, et je voudrais ajouter à la suite de ce code, un if pour dire aussi que si le service est fermé il ne peut pas commander.
Voici mon premier code pour les commandes :
Code:
<script>
    jQuery(document).ready(function($){
        $('pre').hide();
        $('.h-landmark').click(function(){
            $('pre').toggle();
        });
        /*$('input[type=checkbox]').each(function(){
            var key = $(this).val();
            if ($('input[name='+key+']').val() > 1) {
                $(this).parent().append(' ( ' + $('input[name='+key+']').val() + ' crédits )');
            }
            else if ($('input[name='+key+']').val() > 0) {
                $(this).parent().append(' ( ' + $('input[name='+key+']').val() + ' crédit )');
            }
            else{
                $(this).parent().remove();
            }
        });*/
        $('input[type=checkbox]').change(function(){
            var base = parseInt($('#prix').data('base'));
            var total = base;
            $('.acf-field.acf-field-checkbox input[type=checkbox]').each(function(){
                
                if($(this).is(':checked')){
                    text = $(this).parent().text();
                    credit = parseInt(text.substring( (text.length - 9)));
                    console.log($(this));
                    total = total + credit;
                    
                    $("#prix").val(total);
                }
            });
            $('.total').text(total);
            if(total > parseInt($('.solde').text()))
                $('.acf-form-submit').slideUp();
            else
                $('.acf-form-submit').slideDown();
        });

    });
</script>

Et voici le code que j'ai sur le service fermé ou ouvert :
Code:
<div class="greenfarm-rightcontent-inner">

<?php if( date('D') != "Sun" && strtotime(date('H:i:s')) > strtotime(get_option('opening_time')) && strtotime(date('H:i:s')) < strtotime(get_option('closing_time')) && get_option('force_close_open') != "close" || get_option('force_close_open') == "open") :  ?>

<div class="open">SERVICE : OUVERT | DELAIS DE TRAITEMENT : 2 HEURES </div>

<?php else :  ?>

<div class="close">SERVICE : FERME | PROCHAINE LIVRAISON : <?php echo $next = in_array(date('D') ,["Sun","Sat"]) && get_option('force_close_open') != "close" ? "LUNDI " : ""; ?> <?php echo $next_delivery = get_option('force_close_open') == "close" ? get_option('next_delivery') : get_option('opening_time') ; ?>
</div>

<?php endif; ?>
</div>

Est-ce qu'il est possible d'ajouter un if sur le script de mon premier code qui ferait que les commandes sont impossible quand le service est fermé ?

Merci pour vos réponses
 
Nouveau WRInaute
Re,

Complexe à dire comme cela.

Là, faut avoir la main sur le code (front et back)

Il faudrait mettre en place un module qui désactive l'ensemble des boutons de commande/achat, verrouille d'éventuels formulaires accessible depuis l'espace client, ...
Et ne pas le faire uniquement en js, car certains n'ont pas de js activé et se retrouveraient à pouvoir passer des commandes.
 
Discussions similaires
Haut