Hi,
Please help!
I have updated to VM 3.0.6 and now I experience this problem. I have products with image custom fields:
http://www.responsive.vintagelab15.com/webshop/eetkamerstoelen/design-eames-dar-stoel-wit
I can complete the order, but when I go to VM order administration and set the order state to Confirmed (by vendor), I get this error:
TCPDF ERROR: [Image] Unable to get the size of the image: /images/stories/virtuemart/product/resized/_no-pillow_275x275.jpg (this is the image of the custom field)
this state is set as state for sending the invoice.
Please, do you have any idea how to fix it?
Hi everyone,
I have the same problem (same version: 3.0.6).
I've also reinstalled Virtuemart AIO, but no solution..
Please help us.
Thank you
Did you install com_tcpdf_1.0.0.zip - from http://dev.virtuemart.net/projects/virtuemart/files The aio component from VM3.0.6 onwards no longer contains the TCPDF extension.
Yes, I installed it all. But I think Max fixed it in 3.0.6.2
Hi,
thanks, I've checked better and I realized I already have VM 3.6.0.2 .
However, I installed TCPDF and AIO for VM 3.0.6.2 (from package here: http://dev.virtuemart.net/attachments/download/924/com_virtuemart.3.0.6.2_extract_first.zip ), but still get the same error.
What could I do?
Thank you
Hi
I'm also having the same issue.
Did you try 3.0.8?
Same problem.Using 3.08... This VM is a very poor product...
Bump!
It is free I understand, but getting to the point I would love to pay for support. Or may have to just go for one that I can pay so I can get support consistently. Or just a communication.
See http://forum.virtuemart.net/index.php?topic=104795.0
Support from the VM developers is available. See http://forum.virtuemart.net/index.php?topic=124355.0 and http://extensions.virtuemart.net/support
Best is supporter membership because that also supports the VM project: http://extensions.virtuemart.net/support/virtuemart-supporter-membership-detail
Some new infos
in any case it comes from a non accessible or not compatible image.
I just found, that if you remove the logo of the shipment/payment, it works, but when you store it again (without removing the option "default"), then it breaks again. The reason is that the "if empty" does not work there.
Short fix. Go to your shipment/payment and store it again, either with an accessible image, or without any option.
To prevent in future, go to vmpsplugin.php line 706 and add a if(!empty($logo)){ and corresponding closing }. It will be added next version.
Be aware that the wrong data is stored for any order again,... so it wont work for old orders, except changing the data on the db
Quote from: Milbo on May 13, 2015, 21:31:14 PM
To prevent in future, go to vmpsplugin.php line 706 and add a if(!empty($logo)){ and corresponding closing }. It will be added next version.
Be aware that the wrong data is stored for any order again,... so it wont work for old orders, except changing the data on the db
Same issue for me... strangely enough I get the same error with order status changing. BUT, only with one of them, which is used by default for sending the invoice.
What command line can I use as non-coder for temporaly solution until update?
Thanks.
QuoteShort fix. Go to your shipment/payment and store it again, either with an accessible image, or without any option.
Without any option reverts to default on save. So I think the only temporary solution is to use an image.
Hi!
I have such problems with two websites J! 3.4.1 and VM 3.0.9: on both, with no defined image (default) or a "blank.gif", some invoices can be printed, some others not, with TCPDF error for shipment or payment!
On one website there are two payment methods where the only difference is currency (CHF vs Euro) and country (Switzerland vs others): we can print invoices paid with CHF, we get an TCPDF error with Euro! I added if(!empty($logo)) and then te whole new file from SVN without solving this problem. :(
Hello,
I have the same problem, but only on payment by Paypal.
I made that comment in the vmpsplugin.php line 706 FIX:
if(!empty($logo)){
...
}
The error appears to be in the logo Shipping:
TCPDF ERROR: [Image] Unable to get the size of the image: http://www.misite.net/images/stories/virtuemart/shipment/
But I have not assigned any logo of shipping?
Any help?
/////////////////////////////////////////////////////////////
[SOLVED]
Hello,
I've solved the case. I saw that in the table #__virtuemart_shipment_plg_weight_countries empty image was kept, but with the route: <span class="vmCartPaymentLogo" ><img align="middle" src="http://www.misite.net/images/stories/virtuemart/shipment/" alt="" /></span>
For I have made this small fix to vmpsplugin.php line 706 checking before printing the logo if the image exists on the route to this end, with explode() I have determined if there PNG or JPG extension, if not, no prints image.
protected function displayLogos ($logo_list) {
$img = "";
if (!(empty($logo_list))) {
$url = JURI::root () . 'images/stories/virtuemart/' . $this->_psType . '/';
if (!is_array ($logo_list)) {
$logo_list = (array)$logo_list;
}
//print_r($logo_list);
foreach ($logo_list as $logo) {
$hay_logo = explode('.',$logo);
$hay_logo = end($hay_logo);
if(!empty($logo)and!empty($hay_logo)){
$alt_text = substr ($logo, 0, strpos ($logo, '.'));
$img .= '<span class="vmCartPaymentLogo" ><img align="middle" src="' . $url . $logo . '" alt="' . $alt_text . '" /></span> ';
}
}
}
return $img;
}
To me it has worked.
Greetings!
Thanks, but,... These fix is in the svn since weeks.
I applied the fix below to v3.0.9 and it solved the problem :D
thanks Tonimito for sharing
thanks for explaining what I meant with
Quote from: Milbo on May 13, 2015, 21:31:14 PM
To prevent in future, go to vmpsplugin.php line 706 and add a if(!empty($logo)){ and corresponding closing }. It will be added next version.
fix is now here http://dev.virtuemart.net/projects/virtuemart/files vm3.0.9.4
Virtuemart 3.0.9.4 , Joomla 3.4.1
No chance to finish the orders of my webshop - if I set the status to shipped, I get the following error:
TCPDF ERROR: [Image] Unable to get the size of the image:
I updated virtuemart to the actual version, there is a regular jpg-image in the folder images/stories/virtuemart/shipment and in the shipment, there is this image selected.
What can I do?
Regard OskarMaria
https://forum.virtuemart.net/index.php?topic=128538.msg447524#msg447524
Maybe the update failed? Or you are trying to confirm orders made before you updated?
@Max: somewhere further up in this thread you mention that one can fix the problem for existing orders by changing things in the DB. Could you explain what exactly needs to be changed?
Thanks and regards
Petra
There seems to be a number of things not working since I've upgraded my old VM setup to 3.0.9
I followed the instructions to update my J3.4.3 VM3.0.9 version to VM3.0.9.4 with no success.
I was still getting the same message virtuemart TCPDF ERROR: [Image] Unable to get the size of the image: http://www.ccfootball.com.au/images/stories/virtuemart/shipment/
ON the https://forum.virtuemart.net/index.php?topic=128538.msg447524#msg447524 thread you said:
"I just found, that if you remove the logo of the shipment/payment, it works, but when you store it again (without removing the option "default"), then it breaks again."
I tried that and set a blank.jpg image for new orders so I am no longer getting an error when I "view" orders, but for existing orders I still get the same message.
I would also like to know how to correct existing orders so that this error doesn't occur.
I am also getting the following reference to the itemid under each item in my invoices:
(http://www.ccfootball.com.au
/index.php?option=com_virtuemart&
view=productdetails&
virtuemart_category_id=2&
virtuemart_product_id=15&Itemid=226)
Additionally, I am not getting the Logo on my invoices or anything like the Preview available in the link within the invoice setup page.
OK, I found the tables in the DB where changes have to be made (at least for my setting) in order to print invoices for old orders:
1. <prefix>_virtuemart_shipment_plg_weight_countries - row shipment_name: here the old entries contain <img>tags. I removed everything before <span class="vmshipment_name">...
2. <prefix>_virtuemart_payment_plg_standard - row payment_name: again the old entries contain <img>tags. I removed everything before <span class="vmpayment_name">...
That worked for my old orders.
Hi did try all option but now also i am getting this error
I am getting an error when clicking on invoice button ---- TCPDF ERROR: [Image] Unable to get the size of the image: https://atacsportswear.com/mymakecustom/images/stories/virtuemart/shipment/
i think this error is because virtual mart unable to find some required files on the path mymakecustom/images/stories/virtuemart/shipment/ and because of the tcpdf component that is not install properly .This plugin is mainly to generate PDF Document and it unable to find some files so it is giving error. i would need help to fix this issue the
site is hosted on https://atacsportswear.com/mymakecustom
@gaurav3444 .. yes exactly
well ... TCPDF is
Quoteunable to find some required files on the path mymakecustom/images/stories/virtuemart/shipment/
because as you see form the path there is no file set..
Have you checked that there are entries for the image in the #__virtuemart_shipment_plg_xxxx tables?
You also don't mention your versions! This is fixed in later versions but as I understand it if there are old orders you still have to update the fields manually in the DB
In VirtueMart 3.2.1 with TCPDF 1.0.2 this error occurs if there is a space or special characters in the file name for any product image ...
I think that is a problem in the TcPDF library. There is now a new generation of TcPDF, when we change to the new mayor version, it maybe fixed.
I noticed they was coding a completely new version of TCPDF, but I'm not so sure the problem is there.
Have one store where the admin has used images with spaces and Norwegian letters all the time, and I never hear about any issues like this before VM 3.2.1, and TCPDF 1.0.2 has been used for quite some time (at least since VM 3.0.18).
With which version it worked? and how do your customer uploades the images? per FTP and then synchronize? or one by one?
When I use synchronize, I dont get correct filenames on windows already. When I upload it,... it works, but I dont get thumbs. But the name of the uploaded file in the windows directory is wrong. So it is not displayed, but fixing the filename in the windows file browser repairs it.
So, I have no clue how that ever worked, because both cases are not simply to debug. I also checked all 3 files, which could change the data, but none of them had a changed filter or similar, the last year. So I really wonder, when it worked the last time.
You're right Max, it's not caused by the VM3.2 update itself. Sorry for the confusion.
It seems like it's some template providers who have added image display in their override for invoice_items.php, in their VM3.2 templates, causing this. I just checked and it's no such code in the core update.
Good to hear and yes I assume the stuff works on a linux with utf8 filesystem
Same error to my site after update to last version of VM 3
My config:
VM 3.2.1
J 3.6.5
Php 7.0.4
5.5.5-MariaDB
So confirmation email has not been sent to the Customer and to vendor.
I read the last posts and contact the developer of template (spyros) in this thread (http://www.olympianthemes.com/forum/hera-template-support/703-no-order-email-confirmation-for-vendor-and-customer-error-tcpdf.html#3015), and
even after a couple of suggested changes emails is not sent.
-------------------------------EDIT----------
After disable invoice creation for order status in VM config email was corectly sent.
In the received email shipping logo and payment logo was missing
Other suggestions?
Regards
@tanolalano - you seems to have trouble with shipping images, while this was more about product images. Still it's probably related in some way, meaning TcPDF not being able to process the data from VM.
Note! Since the order data is saved in database, including image link I think, you need to test the new image on a new order (or edit the data in database).
Quote from: Rune Rasmussen on April 10, 2017, 13:33:03 PM
@tanolalano - you seems to have trouble with shipping images, while this was more about product images. Still it's probably related in some way, meaning TcPDF not being able to process the data from VM.
Note! Since the order data is saved in database, including image link I think, you need to test the new image on a new order (or edit the data in database).
I do some test order getting same result as for old image and for new .jpg .gif or .png :(
Also remember to re-save images with correct file format, don't just rename them - if that is what you did.
Oh, and also try just lower case letters (small), no spaces or special characters.
Quote from: Rune Rasmussen on April 10, 2017, 13:57:19 PM
Also remember to re-save images with correct file format, don't just rename them - if that is what you did.
Yes, Edit it in PS
I have noticed that even though the images of shipping / payment methods are broken in the customer confirmation email.
Maybe the problem is not with TCPDF.
neox2007 is right, there is a issue with shipping/payment logos in VM 3.2.1 mails.
I installed 3.0.18 and tested it successfully, but after updating to 3.2.1 only image name is displayed in the mail. There is no problem with the pdf generation though, there the shipping image displays fine. Tested using default Beez3 without any overrides, and also latest Hera template.
Spyros report the issue on VM 3.2.x
"..the image paths for shipment/payment methods are relative instead of absolute and so the images are always missing in the mail."
so Invoice cannot be created end return the TCPDF Error
Maybe fix in next release.
tanolalano - read what I wrote. The pdf generation works fine for me!
Post your image as you was asked to do.
Quote from: Rune Rasmussen on April 11, 2017, 08:22:24 AM
tanolalano - read what I wrote. The pdf generation works fine for me!
Post your image as you was asked to do.
Here the image
SO I see no problem using your png and jpg image (or any other) for shipping/payment in VM 3.2.1 with Hera 3.8.1 template.
PS! You forgot to mention you're using some custom third party cart ...
So seem it's related to OPC...... ???
Thanks Rune
Same problem for me.
the solution is maybe here: /www/administrator/components/com_virtuemart/plugins/vmpspluging.php
I tried to change the image path to an absolute path. I've got no more image but the invoice could be generated.
It can not be a good solution.
Thanks for your help.
Last joomla, last virtuemart3.2.1
/**
* displays the logos of a VirtueMart plugin
*
* @author Valerie Isaksen
* @author Max Milbers
* @param array $logo_list
* @return html with logos
*/
protected function displayLogos ($logo_list) {
$img = "";
if (!(empty($logo_list))) {
if(!class_exists('JFolder')){
require(VMPATH_LIBS.DS.'joomla'.DS.'filesystem'.DS.'folder.php');
}
$url ='/images/virtuemart/' . $this->_psType ;
if(!JFolder::exists( VMPATH_ROOT .$url)){
$url = '/images/stories/virtuemart/' . $this->_psType;
if(!JFolder::exists(VMPATH_ROOT .$url)){
return $img;
}
}
if (!is_array ($logo_list)) {
$logo_list = (array)$logo_list;
}
foreach ($logo_list as $logo) {
if(!empty($logo)){
$alt_text = substr ($logo, 0, strpos ($logo, '.'));
$img .= '<span class="vmCart' . ucfirst($this->_psType) . 'Logo" ><img align="middle" src="' . JUri::root(true).$url.'/'.$logo . '" alt="' . $alt_text . '" /></span> ';
}
}
}
return $img;
}
I take the previous version of this file i got on my backup website
It s seem to work now.
/**
* displays the logos of a VirtueMart plugin
*
* @author Valerie Isaksen
* @author Max Milbers
* @param array $logo_list
* @return html with logos
*/
protected function displayLogos ($logo_list) {
$img = "";
if (!(empty($logo_list))) {
$url = JURI::root () . '/images/stories/virtuemart/' . $this->_psType . '/';
if (!is_array ($logo_list)) {
$logo_list = (array)$logo_list;
}
foreach ($logo_list as $logo) {
if(!empty($logo)){
$alt_text = substr ($logo, 0, strpos ($logo, '.'));
$img .= '<span class="vmCart' . ucfirst($this->_psType) . 'Logo" ><img align="middle" src="' . $url . $logo . '" alt="' . $alt_text . '" /></span> ';
}
}
}
return $img;
}
Thank you zerilou! It worked for me as well!
I read a lot of posts about this error and one of the "most popular causes" was the jpg/png format, but I can confirm that png images do work.
This error seems negligible but it is actually dangerous because the order emails are not sent so the shopper is not aware of the order, unless he/she logs into the VM backend.
Anyway, I replaced the code as you suggested and yes now the emails are sent and the error went away.
Thanks
Luciano
Hello,
Is it normal that we must take "old files" (from old version of virtuemart) to have a fonctionnal shop ? this is surprising ?
Is there a new version or correction for this version
Thanks
Quote from: lveronese on May 03, 2017, 08:04:00 AM
one of the "most popular causes" was the jpg/png format, but I can confirm that png images do work.
It depends on the type of png. But even for me it is hard to determine which png will work and which not, so the general advice is to use jpg and have peace.
Quote from: zerilou on April 20, 2017, 17:22:44 PM
Same problem for me.
Zerilou,
why the heck you post the whole function, when only one line is the interesting.
Quote from: zerilou on April 20, 2017, 17:22:44 PM
the solution is maybe here: /www/administrator/components/com_virtuemart/plugins/vmpspluging.php
I tried to change the image path to an absolute path.
Which is wrong, it must be an absolute URL.
protected function displayLogos ($logo_list) {
...
$img .= '<span class="vmCart' . ucfirst($this->_psType) . 'Logo" ><img align="middle" src="' . JUri::root(true).$url.'/'.$logo . '" alt="' . $alt_text . '" /></span> ';
...
There here was just the Juri::root(true). Vm3.2.2 has now
$img .= '<span class="vmCart' . ucfirst($this->_psType) . 'Logo" ><img align="middle" src="' . JUri::root().$url.'/'.$logo . '" alt="' . $alt_text . '" /></span> ';
The rest of the function above just checks if an image is available.
I have the same issue after updating to 3.2.2
I notice that in my Paypal and Sagepay plugins the link to the default images doesnt work.
as in the dropdown for Default logo ( images/stories/virtuemart/payment) doesnt list the images that are definitely in that folder - so in my cart the images for these plugins used to show up and after the update they dont, and i get this error message.
Does this help fault find this bug perhaps ?
Maybe you have a folder " images/virtuemart/payment" without the stories? The system looks then there, because the stories folder got removed by joomla
yes that was actually the case, i had made the folder because of the error i was getting - initially the : TCPDF ERROR: [Image] Unable to get the size of the image: /images/stories/virtuemart/vendor/bft.jpg
and then when i looked in the paypal plugin i was getting:
Warning
JFolder: :files: Path is not a folder. Path: /home/domain/public_html/images/virtuemart/payment
and creating the folder fixed that but obviously lost me the sage logo as you explained.
I am still at square one though with the TCPDF error which is still happening in the sagepay payment process and the Paypal logo still isnt showing up even though i have removed the above folder.
There is a broken image in the Sagepay sequence, trying to view that gives me the attached error, is this possibly related ?
when i refresh after the error and try and view the image the url is :
https://www.bluefrogtoys.co.uk//images/stories/virtuemart/payment/sagepay.jpg (note the double //) the image does show up and it also shows up after a remove one of the slashes - that isnt right is it ?
thanks
I have found the issue and i can now use Sagepay without error.
it looks like possibly the update changed the image path of for the payment
from /images/stories/virtuemart/vendor/bft.jpg
to /images/stories/virtuemart/payment/bft.jpg
as soon as i copied the image to the payment folder it works.
Hope this helps someone else, i left the image in both folders now in case it changes back again in another update !!
Hello,
i have the same problem with the TCPDF ERRor and had found the solution in the database table virtuemart_vendors_de_de for Germany.
You must change the path in
vendor_letter_header_html varchar(8000)
<p><img src="images/banners/logo-topkoch.eu.jpg" alt="" /></p>
Right now has funcioned to create the invoice in pdf and the image was there and VM works.....
Greatings from germany
Joomla 3.7.0 with VM 3.2.2.
schenze
Schenze
Your fix works even better thanks for posting!