darrenultra Posted March 7, 2014 Share Posted March 7, 2014 Hey, I'm trying to make my orders.php page beep when the status of an order is successfuly updated. if ($order_updated == true) { // Start my beep code ?> <audio autoplay="autoplay" style="display:none" src="tada.wav" controls preload="auto" autobuffer></audio> <?php // End my beep code $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success'); } else { $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning'); } Unfortunately my page will not beep. In fact no code that I place below if ($order_updated == true) { seems to get executed. For example if I try 'echo "insert beep here";' this text will not display next to the text which notifies me that my order has been successfuly updated. Can anyone explain what I might be doing wrong and offer a solution? Link to comment Share on other sites More sharing options...
♥GLWalker Posted March 7, 2014 Share Posted March 7, 2014 I think theres just not enough time for your beep to even load. Once you hit the update button, your took back to the orders table instantly. What you probably would need to do is register a session variable, and if its set, play the beep. Follow the community build: BS3 to osCommerce Responsive from the Get Go! Check out the new construction: Admin Gone to Total BS! Link to comment Share on other sites More sharing options...
darrenultra Posted March 7, 2014 Author Share Posted March 7, 2014 Hey, Thanks for your help. Just to clarify, any code inserted in this position does not get executed. For example if I do the following: if ($order_updated == true) { // Start my beep code echo "beep text"; // End my beep code $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success'); } else { $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning'); } then the words 'beep text' do not get displayed next to the messagestack text. I don't suppose you can give me any pointers to help me save the beep noise to a session variable? Thanks Link to comment Share on other sites More sharing options...
MrPhil Posted March 7, 2014 Share Posted March 7, 2014 I'm not sure a simple echo is going to show up in the message stack. You could tell for sure by putting it ahead of the "if" test and see if it's then visible. Is $order_updated visible in your function, and does it have a value? You might have to do a globals $order_updated; at the top of the function to have its value available, if it's defined outside the function. Are you sure that it ever goes 'true'? BTW, "if ($order_updated == true)" can be simplified to "if ($order_updated)". Link to comment Share on other sites More sharing options...
oscMarket Posted March 7, 2014 Share Posted March 7, 2014 define('SUCCESS_ORDER_UPDATED_BEEP', 'Success: beep text.'); $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success'); $messageStack->add_session(SUCCESS_ORDER_UPDATED_BEEP, 'success'); } else { $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning'); } Link to comment Share on other sites More sharing options...
oscMarket Posted March 7, 2014 Share Posted March 7, 2014 you can also run a javascript to check if your current page contains the class="messageStackSuccess" If the page find this AFTER it is loaded ... run a javascript function that autoplay your beep. $(document).ready(function() { var MyBeep = $( "body" ).find( ".messageStackSuccess" ); if (MyBeep.length > 0) { alert('beep'); }else{ alert('NO beep'); } }); Link to comment Share on other sites More sharing options...
oscMarket Posted March 12, 2014 Share Posted March 12, 2014 how is it beeping? Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.