CaptchaRequest to merge CAPTCHA functionality and fix related code for retrieving QQ information in the comment section and unclickable image upload button. #320
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I added a common captcha to the comment section. The captcha generates a token on the front end, which is submitted along with the comment form. In ‘inc/theme_plus.php‘, the token’s validity is verified with the CAPTCHA server. The old QQ information API could no longer be used, so I replaced it with another available API. I also resolved the issue of the image upload button being unclickable.
![cloudflare](https://private-user-images.githubusercontent.com/47671569/303939002-51698e8a-eb52-4c0d-8124-0b9d9c41fb5b.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0MTgwNzMsIm5iZiI6MTczOTQxNzc3MywicGF0aCI6Ii80NzY3MTU2OS8zMDM5MzkwMDItNTE2OThlOGEtZWI1Mi00YzBkLTgxMjQtMGI5ZDljNDFmYjViLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDAzMzYxM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTFjMjJhODI4NzFmMTJhOTA0NmZiZDMwZjkwYzNiMjkwYWJiMmY5MzE2YzYxMGIyNGUyMzZjZDY4OTk4NGNmNjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.FqgrXf9ItQZzGzaXjVyxweHEqNPC-3geGcZGoAD0yUM)
![reCAPTCHAV2](https://private-user-images.githubusercontent.com/47671569/303939030-c129b28e-6cc1-47d3-ba44-80f2c25c009e.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0MTgwNzMsIm5iZiI6MTczOTQxNzc3MywicGF0aCI6Ii80NzY3MTU2OS8zMDM5MzkwMzAtYzEyOWIyOGUtNmNjMS00N2QzLWJhNDQtODBmMmMyNWMwMDllLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDAzMzYxM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRmNjcyYzE0ODdmYzlkMmNmMzE0YjNhNzlkZTllMzllOTAwYTc0ZWE4NDE5MTM5NDNjZGFlNGVjNGVkN2RmYTkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Bj1gLcMD2nKTheIu2oNH1-AHKZeYuPG4oc-oCKBR0UA)
![reCAPTCHAV3](https://private-user-images.githubusercontent.com/47671569/303939103-3fd7bb61-5da5-4ba2-9e07-ab27f8c0139f.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0MTgwNzMsIm5iZiI6MTczOTQxNzc3MywicGF0aCI6Ii80NzY3MTU2OS8zMDM5MzkxMDMtM2ZkN2JiNjEtNWRhNS00YmEyLTllMDctYWIyN2Y4YzAxMzlmLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDAzMzYxM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY2NmUwNmIyZDIxOGUzMjZlZTYyYTY0YTM2ZTVlNjEyOWJlNDQ3N2YxZTc3NmExNzYyYzgzMGE4ZDA0NzkwZTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.pzxhAoxVgviwmFkqMRKtJ8NGQvX8zI7aZschS0f8qvQ)
![mCAPTCHA](https://private-user-images.githubusercontent.com/47671569/303939227-5d31472d-5fb2-4940-8d4d-5f072354661b.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0MTgwNzMsIm5iZiI6MTczOTQxNzc3MywicGF0aCI6Ii80NzY3MTU2OS8zMDM5MzkyMjctNWQzMTQ3MmQtNWZiMi00OTQwLThkNGQtNWYwNzIzNTQ2NjFiLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDAzMzYxM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTQzZWRiZGIxYzk4ZGE5YmZmODdlMTc5YjI5NWFiNzk5ZTQzODVkMTgxMWE4NTVjMjJmNzMwZjJlMzUzYTAzM2MmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.CCuHZN3REhHS8ZqV3gyQZEocWNl4MaHdMC54QTM32Ps)
![Upload images](https://private-user-images.githubusercontent.com/47671569/306020672-d8de84aa-2199-4360-9ba8-90b3a1c69dc2.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0MTgwNzMsIm5iZiI6MTczOTQxNzc3MywicGF0aCI6Ii80NzY3MTU2OS8zMDYwMjA2NzItZDhkZTg0YWEtMjE5OS00MzYwLTliYTgtOTBiM2ExYzY5ZGMyLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDAzMzYxM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTQ2MmFiYmQ1NmE0OGE2ZjZlNjkyMWFkNjE4OTMzN2M5NDlhMGFhMGRmMjFjMGQ0MjVlMTM1MmUzOWI1N2FiZmMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.3x8504ySNACkJT2aDrNahdhC5RvTlqCjfrjOq6mPrEA)
Because I’m not proficient in JavaScript, I’m unsure if merging the JavaScript for reCAPTCHA-v2 invisible into sakura-app.js would cause other issues. Therefore, I have kept it in footer.php.