Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot generate PDF Certifcate #5910

Open
Arricdev opened this issue Nov 6, 2024 · 4 comments
Open

Cannot generate PDF Certifcate #5910

Arricdev opened this issue Nov 6, 2024 · 4 comments

Comments

@Arricdev
Copy link

Arricdev commented Nov 6, 2024

Describe
A clear and concise description of what the bug is.

After migrating to 1.11.28
When I try to download a certificate in PDF i Get an error 500

generating html certificate is OK

Was working in 1.11.26

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'https://yourwebsite/certificates/index.php?id=XXX&user_id=XXX&action=export
  2. See error

logs

Wed Nov 06 11:51:30.968799 2024] [proxy_fcgi:error] [pid 3934032] [client 127.0.0.1:52186] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught LogicException: To filter with a CSS selector, install the CssSelector component ("composer require symfony/css-selector"). Or use filterXpath instead. in path-to-chamilo/vendor/symfony/dom-crawler/Crawler.php:1296\nStack trace:\n#0 path-to-chamilo/vendor/symfony/dom-crawler/Crawler.php(791): Symfony\Component\DomCrawler\Crawler->createCssSelectorConverter()\n#1 path-to-chamilo/main/inc/lib/pdf.lib.php(345): Symfony\Component\DomCrawler\Crawler->filter()\n#2 path-to-chamilo/certificates/index.php(84): PDF->html_to_pdf()\n#3 {main}\n thrown in path-to-chamilo/vendor/symfony/dom-crawler/Crawler.php on line 1296', referer: https://yourwebsite/certificates/index.php?id=xxx&user_id=xxxxx&action=export

Expected behavior
A clear and concise description of what you expected to happen.

PDF Download

@Kaneda-1
Copy link

Kaneda-1 commented Nov 6, 2024

Similar a #3774
download the /vendor folder from the url https://github.com/chamilo/chamilo-lms/releases/download/v1.11.28/chamilo-1.11.28.zip
and replaces the contents of the /vendor folder locally

The error you're seeing indicates that the CssSelector component from Symfony is missing, which is necessary for filtering with a CSS selector. Here's how to fix it:

Install the CssSelector component: Open a terminal in your project directory and run the following command to install the component
rm composer.lock
rm -rf web/ vendor/
composer clear-cache
composer update

@Arricdev
Copy link
Author

Arricdev commented Nov 6, 2024

Thanks for your answer,

I already got the vendor/ dir when I migrated but the component seems to be missing.

Does that work if I install the component with composer on a QA server and then copy vendor/ dir ? This would generate less downtime

@Arricdev
Copy link
Author

Arricdev commented Nov 6, 2024

Ok, it worked , thank you.
Maybe it would be great to update the release ?

@ywarnier
Copy link
Member

ywarnier commented Nov 6, 2024

Yes, we are working on a new release for within a few days.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants