Joomla 1.7.3.
VM 2.0
On the checkout page, there is a checkbox for the Terms of Service and also saying "Please read and accept the terms of service."
But there is no link to a popup with the Terms of Service.
Is this a VM 2.0 bug, or a feature, I have to switch somewhere on?
The TOS is directly shown above. The 2.0.1 version has also a vendor view for the tos.
Please see screenshot: there is the checkbox with text "Please read and agree to the terms of service" but there is no link to the terms...
TOS are defined in the backend, I did it under "Shop / Seller / Terms of Service"
[attachment cleanup by admin]
I think this is your template
Following conditions:
Testsite at my webhoster: Joomla 1.7.3, VM 2.0.1:
Tested with template Beez, Atomic and Rockettheme Momentum;
Testsite locally on XAMPP: Joomla 2.5, VM 2.0.1:
Tested with template Beez, Atomic and Joomlashack Scenica;
RESULTS: under all conditions, link to TOS was not shown. So I don´t think its template related.
It must be something with VM?!?
I have the same problem.
Plus, in the admin should be a link to an article instead of writing it there.
Using unedited VM2.0.1 on a test site the TOS is shown on the checkout page. If your requirement is for a link you could edit the view, components/com_virtuemart/views/cart/tmpl/default.php (use template override).
The current code is <?php echo JText::_('COM_VIRTUEMART_CART_TOS'); ?>
[attachment cleanup by admin]
Quote from: jenkinhill on January 29, 2012, 13:37:42 PM
Using unedited VM2.0.1 on a test site the TOS is shown on the checkout page. If your requirement is for a link you could edit the view, components/com_virtuemart/views/cart/tmpl/default.php (use template override).
The current code is <?php echo JText::_('COM_VIRTUEMART_CART_TOS'); ?>
p
Thx for the hint Kelvin. Will go for that probably. But seems i am not the only one with that issue. So lets See what Can be found out furthermore. on both of my testsites i havent installed so much yet and also didnt change any code in VM css or php.
I made IT! (Note -> VM 2.0.1)
Here is my solution:
Insert the following code under the // vmdebug('cart',$this->cart); (line 24)
1.
$url = JRoute::_('index.php?option=com_virtuemart&view=vendor&layout=tos&virtuemart_vendor_id=' . $this->cart->vendor->virtuemart_vendor_id.'&tmpl=component');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
jQuery(document).ready(function($) {
$('a.tos').click( function(){
$.facebox({
iframe: '".$url."',
rev: 'iframe|550|550'
});
return false ;
});
});
");
2.
Replace this code <?php echo $this->cart->vendor->vendor_terms_of_service;?>
to <a class="tos" href="<?php echo $url ?>" ><?php echo JText::_('COM_VIRTUEMART_CART_TOS') ?></a>
You are finished :)
Now the TOS will open popup box like "ask a question". You can make some css style for the link and you get shomething like the attachment :)
[attachment cleanup by admin]
Nice, we also just add similar to the core :-)
I have do it so
JHTML::script('facebox.js', 'components/com_virtuemart/assets/js/', false);
JHTML::stylesheet('facebox.css', 'components/com_virtuemart/assets/css/', false);
JHtml::_('behavior.formvalidation');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
jQuery(document).ready(function($) {
$('div#full-tos').hide();
$('span.terms-of-service').click( function(){
//$.facebox({ span: '#full-tos' });
$.facebox( { div: '#full-tos' }, 'my-groovy-style');
});
});
");
$document->addStyleDeclaration('#facebox .content {display: block !important; height: 480px !important; overflow: auto; width: 560px !important; }');
and added
<div id="full-tos">
<h2><?php echo JText::_('COM_VIRTUEMART_CART_TOS'); ?></h2>
to have only the tos TEXT and TITLE in modal box
Joomla 2.5.1
VM 2.0.2
Hi to all,
as far as I understood, that was a bug in VM2.0.1 (as the Terms of Services were shown up in the previous VM1.x) and it will be added in the next stable version. So I waited for VM 2.0.2 stable, which was just released, but I still have the same issue: the text "agree to the Terms..." is shown, but not a link to the Terms of Services ot the TOS itself at all, so the customer would have to agree to something, which he couldn´t verify.
Before I am now integrating the extra code manually as described as above (thx again :) - am I really the only one, where the Terms are not shown, or is this really a general bug, which will be fixed in one of the next releases?
I want to avoid to add adding extra codes as much as possible - otherwise every upgrade of VM will get a pain in the neck, when I need to recap what/how/when I changed....
Thx!
We also dont have the Link to Terms & Conditions of Service in The Main/Principal Registration Page ....
You could see here that we dont have this here:
http://virtuemart.cloudaccess.net/my-account
And could be done something like this :
https://demo.cubecart.com/cc5/index.php?seo_path=register&PHPSESSID=39de577a71394939024d87451efcb0db
(but in a popup... or opening a slide down jquery area .. with the full text, dont you agree?)
Is it possible that it is somehow related to a Java conflict? Often it is related to the template, as Milbo said. But I already tested it with the standard Joomla template.
If I am right, than in order to localize the problem, I would have to deactivate every plugin and then reload the checkout page of VM - right? Which is not a funny job, as it will take some time to do it with all plugins... :(
Would there be any other way to check? Cheers.
Quote from: dnlvsci on January 31, 2012, 14:29:36 PM
I made IT! (Note -> VM 2.0.1)
Here is my solution:
Insert the following code under the // vmdebug('cart',$this->cart); (line 24)
1.
$url = JRoute::_('index.php?option=com_virtuemart&view=vendor&layout=tos&virtuemart_vendor_id=' . $this->cart->vendor->virtuemart_vendor_id.'&tmpl=component');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
jQuery(document).ready(function($) {
$('a.tos').click( function(){
$.facebox({
iframe: '".$url."',
rev: 'iframe|550|550'
});
return false ;
});
});
");
2.
Replace this code <?php echo $this->cart->vendor->vendor_terms_of_service;?>
to <a class="tos" href="<?php echo $url ?>" ><?php echo JText::_('COM_VIRTUEMART_CART_TOS') ?></a>
You are finished :)
Now the TOS will open popup box like "ask a question". You can make some css style for the link and you get shomething like the attachment :)
Hi,
I tried your solution now and added the code below line 37 (in VM2.0.2) and added the line. No change. I am really desperate now. The site is still not live and still some stuff to do, but I dont want launch it with the full TOS text shown on the checkout site (this works). It must be in a pop up window.
I am sure it works somehow, but dont know where else to look/search for... :(
I have the same problem :/ Did some one find solution yet? TOS is very important for my clients and i can't finnish my job without it :/ .
Quote from: Shaman_1 on March 16, 2012, 18:38:59 PM
I have the same problem :/ Did some one find solution yet? TOS is very important for my clients and i can't finnish my job without it :/ .
Are you using the latest version? 2.0.2 or 2.0.3?
Furthermore, I am using a 3rd party theme for VM, where the TOS Popup wasnt built in yet. It was then added with an update.
Both solved my problem.
Please, in some next release add this fix in user registration area
\components\com_virtuemart\views\user\tmpl\edit.php
http://www.2shared.com/file/wfCFN-TP/edit.html (http://www.2shared.com/file/wfCFN-TP/edit.html)
and in \components\com_virtuemart\views\user\tmpl\edit_shopper.php
http://www.2shared.com/file/CxpaBlM2/edit_shopper.html (http://www.2shared.com/file/CxpaBlM2/edit_shopper.html)
I dont know how to add a Link at side of the check box to users could read and accept "I agree to the Terms of Service"... (like in VM1) in some countries this is required by law law.. i've been searching and found this code:
<span class="terms-of-service" rel="facebox"><span class="vmicon vm2-termsofservice-icon"></span><?php echo JText::_('COM_VIRTUEMART_CART_TOS_READ_AND_ACCEPTED'); ?><span class="vm2-modallink"></span></span>
<div id="full-tos">
<h2><?php echo JText::_('COM_VIRTUEMART_CART_TOS'); ?></h2>
<?php echo $this->cart->vendor->vendor_terms_of_service;?>
</div>
but i dont know how to apply this ... If someone could help me we could do some quick fixes, this time in this user registration area ... and contribute to VM2 too!
Unfortunately while delaying this correction we have to add these changes every time there is a new VM update :(:(:( :'(
Best Regards..
Quote from: dnlvsci on January 31, 2012, 14:29:36 PM
I made IT! (Note -> VM 2.0.1)
Here is my solution:
Insert the following code under the // vmdebug('cart',$this->cart); (line 24)
1.
$url = JRoute::_('index.php?option=com_virtuemart&view=vendor&layout=tos&virtuemart_vendor_id=' . $this->cart->vendor->virtuemart_vendor_id.'&tmpl=component');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
jQuery(document).ready(function($) {
$('a.tos').click( function(){
$.facebox({
iframe: '".$url."',
rev: 'iframe|550|550'
});
return false ;
});
});
");
2.
Replace this code <?php echo $this->cart->vendor->vendor_terms_of_service;?>
to <a class="tos" href="<?php echo $url ?>" ><?php echo JText::_('COM_VIRTUEMART_CART_TOS') ?></a>
You are finished :)
Now the TOS will open popup box like "ask a question". You can make some css style for the link and you get shomething like the attachment :)
Plz check sir i have used your modification in my site but its only showing link to "Terms of service" see this ! "http://elifeshopping.com/index.php?option=com_virtuemart&view=cart"
rupesh: Did you fill the Terms of Service Text in your BE -> /administrator/index.php?option=com_virtuemart&view=user&task=editshop ?
I want to apply that in the Registration area ...
here: http://virtuemart.cloudaccess.net/my-account (where we have the link to "I agree to the Terms of Service")
In the Shopping Cart area TOS it's working with no code hack's ... you dont need to change nothing (2.0.6)
see the demo: http://virtuemart.cloudaccess.net/cart
Quote from: lipes on April 21, 2012, 15:41:58 PM
rupesh: Did you fill the Terms of Service Text in your BE -> /administrator/index.php?option=com_virtuemart&view=user&task=editshop ?
yes sir , i have added the terms and conditions but its getting when u click on "Terms of service" on popup actually i want it on pop up itself with product image and other info!
Thank you for your reply
maybe the answer that you want could be here: http://forum.virtuemart.net/index.php?topic=101633.0
Try to see (with firebug) if you've got something in CSS with hidden in that popup ...
http://www.w3schools.com/css/css_display_visibility.asp
UPDATE: But i saw that you got to do 2 links to see the terms of service ... maybe miss/change some php code..
Try to install again the Default tmpl code in you cart to see whats happen there.
i dont know what's the problem because in my cart with a normal instalation (2.0.6) the TOS is working fine on shopping cart...
in fact we only miss the link to TOS in the user registration area... :/
(http://img822.imageshack.us/img822/6678/1vs2d.jpg)
Yes! i solved it i have jus uploaded backup cart template files! and now it is showing all right!
Thank you
I am using VM 2.06 and the TOS link does NOT work. Is there a fix for this?
Thank you..
Imron: in cart works normal for me in a new instalation... but in user registration area / account management there's no solution yet.
hiii to all,
on Add/Edit billing address information there is checkbox for tos !
I want to make it required so that without checking that checkbox user cant checkout! Right now you can checkout even without checking it! i think there is problem in validation!
can you please help me?
see
http://www.elifeshopping.com/index.php/component/virtuemart/user/editaddresscartBT?Itemid=0
Thanks for consideration!
rupesh
:D
Hi guys,
I have been trying to find a solution for the past 3 hours.
But finally i thought about the most simple solutions.
Go to language/en-GB/en-GB.com_virtuemart.ini
And edit the following :
COM_VIRTUEMART_I_AGREE_TO_TOS="I agree to the Terms of Service"
Change it to :
COM_VIRTUEMART_I_AGREE_TO_TOS="I agree to the Terms of Service
<p></p>
(<a href=http://linktothetermsofservice.com" target="_new">Click here to read the Terms of Service</a>)"
And simply change the http://linktothetermsofservice.com with the link of your page with the TOS.
I hope this solution helps someone. It sure helped me.
Hi wehitch,
This worked for me. Thank you so much!!!
Hi there,
i have the some problem and nothing of the ways that are shown, doesn´t work. I use the german version of virtuemart. Does anyone have a other idea to solve the problem?
Quote from: novitas on June 11, 2012, 14:51:11 PM
Hi there,
i have the some problem and nothing of the ways that are shown, doesn´t work. I use the german version of virtuemart. Does anyone have a other idea to solve the problem?
try so
COM_VIRTUEMART_I_AGREE_TO_TOS="Ich stimme den Allgemeinen Geschäftsbedingungen zu<p></p>(<a href='https://www.xxxxxxxxxxxxxxx.html' target='_blank'>Lesen Sie unsere AGB's</a>)"
Same problem over here: No Link to Terms of Services.
No matter what template I am using.
I am already struggling with this for several VM&Joomla versions...
Strange that it does not work...
I think I am going for wehitch's solution...
Joomla! 2.5.6 & 2.0.10
Same here. I have J2.5 with VM2.0.14 and there is still no link.
I've got a solution. It works for me.
VM 2.0.14
Edit file /templates/your-template/html/com_virtuemart/user/edit_address.php
If you don't have one just copy and upload virtuemart's default
I added this to line 150 after:
<?php
if (!class_exists('VirtueMartCart'))
require(JPATH_VM_SITE . DS . 'helpers' . DS . 'cart.php');
if (count($this->userFields['functions']) > 0) {
echo '<script language="javascript">' . "\n";
echo join("\n", $this->userFields['functions']);
echo '</script>' . "\n";
}
echo $this->loadTemplate('userfields');
?>
<span class="terms-of-service" rel="facebox"><span class="vmicon vm2-termsofservice-icon"></span><a href="<?php JRoute::_ ('index.php?option=com_virtuemart&view=vendor&layout=tos&virtuemart_vendor_id=1') ?>" class="terms-of-service" id="terms-of-service" rel="facebox" target="_blank"><?php echo JText::_('COM_VIRTUEMART_CART_TOS_READ_AND_ACCEPTED'); ?></a><span class="vm2-modallink"></span></span>
<div id="full-tos">
<h2><?php echo JText::_('COM_VIRTUEMART_CART_TOS'); ?></h2>
<?php echo $this->cart->vendor->vendor_terms_of_service;?>
</div>
I wish I could say that it worked for me, but I still do not have a link and there's no sign of this is the source code.
wehitch and Coppo82's combined solution worked perfectly for me. The single quotes w/in the "a" tag is what did it.
I'll look back and see about giving those a whirl.
Quote from: dimi2013 on January 07, 2013, 16:34:59 PM
wehitch and Coppo82's combined solution worked perfectly for me. The single quotes w/in the "a" tag is what did it.
Hi Dimi
Pleeeeeease can you explain the full solution, I have been messing wehitch's solution but it doesnt seem to work for me, I am using vm2.014. Will really appreciate this. Thanks
Hi John,
Glad to do it. Bear in mind that I'm on 2.018a, though, I don't think it matters any. Here we go:
- Go to Content >> Article Manager and create a new article detailing the TOS and save it
- Create a new menu Menu Manager and choose your menu and create a new menu item. Choose Single article and then choose the article that has the TOS and hit Save. Note the link in the Link field and copy it.
- Go to Extensions >> Language Manager >> Overrides and click on New
- In the search field on the right put the following constant in, COM_VIRTUEMART_I_AGREE_TO_TOS , and make sure you check the Constant radio button
- Once you get the results in the Search Results area underneath, click on it and it'll automatically fill in the values on the left side where it says Edit this Override >> Language Constant and Text
- Then, put in your text and for the link use the link that you copied from the menu you created e.g. index.php?option=XXXXXX. Then save it and check your page and that's it.
It's ok if you delete the temporary menu you created for the TOS--all you needed was the link. Here's what I input into the Text area of the
Edit this Override >>
Text :
I agree to the Terms of Service *<br />(<a href="index.php?option=com_content&view=article&id=62" target="_blank">Terms of Service</a>)
If for some reason this doesn't work for you, look at coppo82's solution. He simply put single quotes in the link and target part. Hopefully this will help you. Post something once you're done.
Quote from: lipes on March 05, 2012, 00:12:29 AM
We also dont have the Link to Terms & Conditions of Service in The Main/Principal Registration Page ....
You could see here that we dont have this here:
http://virtuemart.cloudaccess.net/my-account
And could be done something like this :
https://demo.cubecart.com/cc5/index.php?seo_path=register&PHPSESSID=39de577a71394939024d87451efcb0db
(but in a popup... or opening a slide down jquery area .. with the full text, dont you agree?)
Hi, lipes!
Could you do registration form like this:
https://demo.cubecart.com/cc5/index.php?seo_path=register&PHPSESSID=39de577a71394939024d87451efcb0db on my site? I can pay for it.
Regards,
Chingiz.
Strange....
I thought this would be fixed on later version of VM, I'm currently using VM 2.0.20b, and this problem still EXIST!! how can i get the terms on condition to pop-up as a modal with VM 2.0.20b? I had my TOS content on VirtueMart/Shop-> Vendor settings...
I'm confuse which one to try? since those fix are for earlier version of VM..
Help, thanks in advance
Quote from: dimi2013 on January 31, 2013, 12:54:40 PM
Hi John,
Glad to do it. Bear in mind that I'm on 2.018a, though, I don't think it matters any. Here we go:
- Go to Content >> Article Manager and create a new article detailing the TOS and save it
- Create a new menu Menu Manager and choose your menu and create a new menu item. Choose Single article and then choose the article that has the TOS and hit Save. Note the link in the Link field and copy it.
- Go to Extensions >> Language Manager >> Overrides and click on New
- In the search field on the right put the following constant in, COM_VIRTUEMART_I_AGREE_TO_TOS , and make sure you check the Constant radio button
- Once you get the results in the Search Results area underneath, click on it and it'll automatically fill in the values on the left side where it says Edit this Override >> Language Constant and Text
- Then, put in your text and for the link use the link that you copied from the menu you created e.g. index.php?option=XXXXXX. Then save it and check your page and that's it.
It's ok if you delete the temporary menu you created for the TOS--all you needed was the link. Here's what I input into the Text area of the Edit this Override >> Text :
I agree to the Terms of Service *<br />(<a href="index.php?option=com_content&view=article&id=62" target="_blank">Terms of Service</a>)
If for some reason this doesn't work for you, look at coppo82's solution. He simply put single quotes in the link and target part. Hopefully this will help you. Post something once you're done.
I tried your solution and it doesn't work. The value has been written in COM_VIRTUEMART_I_AGREE_TO_TOS of the language manager, but do not show anything in the website. I am using joomla 2.5.6 vm 2.0.22a. However, thanks for your detailed explaination. I really appreciate. :)
I guess because we have different location of terms of services, so some solution does not work. my one is in account maintenance. At the bottom of page, said I agree to terms of services. I have tried different ways in forum. It just not working. I wonder if any pro can help me :(.
[attachment cleanup by admin]
Hi alvinwang21,
I'm sorry the solution doesn't work for you, I know how frustrating this is. I'm on the very last version of VM, 2.0.22a, and it's working fine for me. Have a look here: http://lindaontiveros.com/index.php/cart.html (http://lindaontiveros.com/index.php/cart.html)
I've had some really big issues w/VM when I was developing the site; However, as new releases were coming out, and after much, much, trolling on the forums, I was able to fix all the problems I had--the VM community's great. I wish you much success and sincerely hope you can figure out how to fix it. Would you post something once you figure it out so as to help others?
Thanks
Hi Demi2013,
Thanks for replying me. I have tried all of the method above. Just dont't know why this is not working properly. You are right, this place is awesome for us to learn and modify our website. I will keep working on it and I will put the solution on the forum to benifit for people who face the same problem.
Quote from: lipes on April 21, 2012, 16:16:09 PM
maybe the answer that you want could be here: http://forum.virtuemart.net/index.php?topic=101633.0
Try to see (with firebug) if you've got something in CSS with hidden in that popup ...
http://www.w3schools.com/css/css_display_visibility.asp
UPDATE: But i saw that you got to do 2 links to see the terms of service ... maybe miss/change some php code..
Try to install again the Default tmpl code in you cart to see whats happen there.
i dont know what's the problem because in my cart with a normal instalation (2.0.6) the TOS is working fine on shopping cart...
in fact we only miss the link to TOS in the user registration area... :/
(http://img822.imageshack.us/img822/6678/1vs2d.jpg)
1.5 years later... is there an official fix for the user registration area?
It has been working for everybody for a long, long time. Unless not supported in their template overrides.
Thank you for the quick reply... I'll assume my template override is killing it then, can you possibly point me towards the code that needs to be modified/not overwritten?
Compare your override code with that in components/com_virtuemart/views/cart/tmpl/default.php - from <?php // Terms Of Service Checkbox onwards
Thank you, will do
So I compared everything and there's nothing different in my override for that section...
To clarify, the TOS link works fine from domain.com/shop/cart... it's on the shop/user/editaddresscheckoutBT page of Checkout where you can tick the TOS box but there's no link/popup for the TOS itself... My previous Quote from lipes was likely confusing...
Mee-too.
I have searched high and low for an answer to this, as so many others, but none of the tips have worked.
After hearing from several customers that they were "unable to purchase" I finally wrote "(You have to check the box to be able to buy. Bug...)" in the override for
COM_VIRTUEMART_CART_TOS_READ_AND_ACCEPTED
Not in COM_VIRTUEMART_I_AGREE_TO_TOS!
I ended up just hardcoding the tick box to be ticked...