Skip to content

Commit

Permalink
feat: better bot prevention
Browse files Browse the repository at this point in the history
  • Loading branch information
Zillion01 committed Apr 10, 2024
1 parent b094b45 commit bed147e
Show file tree
Hide file tree
Showing 10 changed files with 86 additions and 34 deletions.
17 changes: 10 additions & 7 deletions Classes/Controller/CategorycommentController.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
use Jp\Jpfaq\Domain\Repository\CategorycommentRepository;
use Jp\Jpfaq\Domain\Repository\CategoryRepository;
use Jp\Jpfaq\Service\SendMailService;
use Jp\Jpfaq\Utility\IsBot;
use Jp\Jpfaq\Utility\TypoScript;
use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Core\Configuration\ExtensionConfiguration;
Expand Down Expand Up @@ -69,15 +70,17 @@ public function initializeAction(): void
*/
public function commentAction(array $catUids, int $pluginUid): ResponseInterface
{
$currentUid = $this->request->getAttribute('currentContentObject')->data['uid'];
if (!IsBot::isBot()) {
$currentUid = $this->request->getAttribute('currentContentObject')->data['uid'];

if ($currentUid == $pluginUid) {
$this->view->assignMultiple([
'catUids' => $catUids,
'currentUid' => $currentUid,
]);
if ($currentUid == $pluginUid) {
$this->view->assignMultiple([
'catUids' => $catUids,
'currentUid' => $currentUid,
]);

return $this->htmlResponse();
return $this->htmlResponse();
}
}

// Else do not render view
Expand Down
20 changes: 2 additions & 18 deletions Classes/Controller/QuestionController.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
use Jp\Jpfaq\Domain\Model\Question;
use Jp\Jpfaq\Domain\Repository\CategoryRepository;
use Jp\Jpfaq\Domain\Repository\QuestionRepository;
use Jp\Jpfaq\Utility\IsBot;
use Jp\Jpfaq\Utility\TypoScript;
use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Core\Utility\GeneralUtility;
Expand Down Expand Up @@ -125,7 +126,7 @@ public function listAction(): ResponseInterface
*/
public function helpfulnessAction(Question $question, bool $helpful, int $pluginUid): ResponseInterface|ForwardResponse
{
if (!$this->isBot()) {
if (!IsBot::isBot()) {
$currentUid = $this->request->getAttribute('currentContentObject')->data['uid'];

if ($currentUid == $pluginUid) {
Expand Down Expand Up @@ -194,21 +195,4 @@ private function updateHelpful(Question $question, bool $helpful): void
// Store user interaction on helpfulness in session
$GLOBALS['TSFE']->fe_user->setKey('ses', $questionUid, $helpful);
}

/**
* Check if browser is a well known bot
*
* @return bool
*/
private function isBot(): bool
{
$userAgent = $_SERVER['HTTP_USER_AGENT'];
$bots = $this->settings['bots'];
$bots = explode(',', $bots);

foreach ($bots as $bot) {
if (stripos($userAgent, htmlspecialchars($bot)) !== false) return true;
}
return false;
}
}
24 changes: 24 additions & 0 deletions Classes/Utility/IsBot.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?php

namespace Jp\Jpfaq\Utility;

class IsBot
{
/**
* Check if browser is a well known bot
*
* @return bool
*/
public static function isBot(): bool
{
$userAgent = $_SERVER['HTTP_USER_AGENT'];
$bots = Typo3Utility::getSettings('tx_jpfaq_faq')['bots'];
$bots = explode(',', $bots);

foreach ($bots as $bot) {
if (stripos($userAgent, htmlspecialchars($bot)) !== false) return true;
}

return false;
}
}
35 changes: 35 additions & 0 deletions Classes/Utility/Typo3Utility.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<?php

namespace Jp\Jpfaq\Utility;

use TYPO3\CMS\Core\TypoScript\TypoScriptService;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager;

/**
* Class: Typo3Utility
* Description: general utilities
*
* 2024 Jacco van der Post <jacco@typo3-webdesign.nl>
*/
class Typo3Utility
{
/**
* Get typoscript settings for a plugin
*
* @param string $plugin
*
* @return mixed
*/
public static function getSettings(string $plugin): mixed
{
$plugin = htmlspecialchars($plugin);
$configurationManager = GeneralUtility::makeInstance(BackendConfigurationManager::class);
$typoScriptSettings = $configurationManager->getTypoScriptSetup();

$typoScriptService = GeneralUtility::makeInstance(TypoScriptService::class);
$typoScriptSettingsWithoutDots = $typoScriptService->convertTypoScriptArrayToPlainArray($typoScriptSettings);

return $typoScriptSettingsWithoutDots['plugin'][$plugin]['settings'];
}
}
2 changes: 1 addition & 1 deletion Configuration/TypoScript/setup.typoscript
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ plugin.tx_jpfaq_faq {
includeJsAndCssInTemplate = {$plugin.tx_jpfaq_faq.settings.includeJsAndCssInTemplate}
setSchemaOrgOnHtmlTag = {$plugin.tx_jpfaq_faq.settings.setSchemaOrgOnHtmlTag}

bots = Googlebot,Baiduspider,ia_archiver,R6_FeedFetcher,NetcraftSurveyAgent,Sogou web spider,bingbot,Yahoo! Slurp,facebookexternalhit,PrintfulBot,msnbot,Twitterbot,UnwindFetchor,urlresolver,Butterfly,TweetmemeBot,PaperLiBot,MJ12bot,AhrefsBot,Exabot,Ezooms,YandexBot,SearchmetricsBot,picsearch,TweetedTimes Bot,QuerySeekerSpider,ShowyouBot,woriobot,merlinkbot,BazQuxBot,Kraken,SISTRIX Crawler,R6_CommentReader,magpie-crawler,GrapeshotCrawler,PercolateCrawler,MaxPointCrawler,R6_FeedFetcher,NetSeer crawler,grokkit-crawler,SMXCrawler,PulseCrawler,Y!J-BRW,80legs,Mediapartners-Google,Spinn3r,InAGist,Python-urllib,NING,TencentTraveler,Feedfetcher-Google,mon.itor.us,spbot,Feedly,bitlybot,ADmantX,Niki-Bot,Pinterest,python-requests,DotBot,HTTP_Request2,linkdexbot,A6-Indexer,Baiduspider,TwitterFeed,Microsoft Office,Pingdom,BTWebClient,KatBot,SiteCheck,proximic,Sleuth,Abonti,(BOT for JCE),Baidu,Tiny Tiny RSS,newsblur,updown_tester,linkdex,baidu,searchmetrics,genieo,majestic12,spinn3r,profound,domainappender,VegeBot,terrykyleseoagency.com,CommonCrawler Node,AdlesseBot,metauri.com,libwww-perl,rogerbot-crawler,MegaIndex.ru,ltx71,Qwantify,Traackr.com,Re-Animator Bot,Pcore-HTTP,BoardReader,omgili,okhttp,CCBot,Java/1.8,semrush.com,feedbot,CommonCrawler,AdlesseBot,MetaURI,ibwww-perl,rogerbot,MegaIndex,BLEXBot,FlipboardProxy,techinfo@ubermetrics-technologies.com,trendictionbot,Mediatoolkitbot,trendiction,ubermetrics,ScooperBot,TrendsmapResolver,Nuzzel,Go-http-client,Applebot,LivelapBot,GroupHigh,SemrushBot,ltx71,commoncrawl,istellabot,DomainCrawler,cs.daum.net,StormCrawler,GarlikCrawler,The Knowledge AI,getstream.io/winds,YisouSpider,archive.org_bot,semantic-visions.com,FemtosearchBot,360Spider,linkfluence.com,glutenfreepleasure.com,Gluten Free Crawler,YaK/1.0,Cliqzbot,app.hypefactors.com,axios,semantic-visions.com,webdatastats.com,schmorp.de,SEOkicks,DuckDuckBot,Barkrowler,ZoominfoBot,Linguee Bot,Mail.RU_Bot,OnalyticaBot,Linguee Bot,admantx-adform,Buck/2.2,Barkrowler,Zombiebot,Nutch,SemanticScholarBot,Jetslide,scalaj-http,XoviBot,sysomos.com,PocketParser,newspaper,serpstatbot,MetaJobBot,SeznamBot/3.2,Velen,PhxBot
bots = Googlebot,Baiduspider,ia_archiver,R6_FeedFetcher,NetcraftSurveyAgent,Sogouwebspider,bingbot,Yahoo!Slurp,facebookexternalhit,PrintfulBot,msnbot,Twitterbot,UnwindFetchor,urlresolver,Butterfly,TweetmemeBot,PaperLiBot,MJ12bot,AhrefsBot,Exabot,Ezooms,YandexBot,SearchmetricsBot,picsearch,TweetedTimesBot,QuerySeekerSpider,ShowyouBot,woriobot,merlinkbot,BazQuxBot,Kraken,SISTRIXCrawler,R6_CommentReader,magpie-crawler,GrapeshotCrawler,PercolateCrawler,MaxPointCrawler,NetSeercrawler,grokkit-crawler,SMXCrawler,PulseCrawler,Y!J-BRW,80legs,Mediapartners-Google,InAGist,Python-urllib,NING,TencentTraveler,Feedfetcher-Google,mon.itor.us,spbot,Feedly,bitlybot,ADmantX,Niki-Bot,Pinterest,python-requests,DotBot,HTTP_Request2,linkdexbot,A6-Indexer,TwitterFeed,MicrosoftOffice,Pingdom,BTWebClient,KatBot,SiteCheck,proximic,Sleuth,Abonti,(BOTforJCE),Baidu,TinyTinyRSS,newsblur,updown_tester,linkdex,baidu,searchmetrics,genieo,majestic12,spinn3r,profound,domainappender,VegeBot,terrykyleseoagency.com,CommonCrawlerNode,AdlesseBot,metauri.com,libwww-perl,rogerbot-crawler,ltx71,Qwantify,Traackr.com,Re-AnimatorBot,Pcore-HTTP,BoardReader,omgili,okhttp,CCBot,Java/1.8,semrush.com,feedbot,CommonCrawler,MetaURI,ibwww-perl,rogerbot,MegaIndex,BLEXBot,FlipboardProxy,techinfo@ubermetrics-technologies.com,trendictionbot,Mediatoolkitbot,trendiction,ubermetrics,ScooperBot,TrendsmapResolver,Nuzzel,Go-http-client,Applebot,LivelapBot,GroupHigh,SemrushBot,commoncrawl,istellabot,DomainCrawler,cs.daum.net,StormCrawler,GarlikCrawler,TheKnowledgeAI,getstream.io/winds,YisouSpider,archive.org_bot,semantic-visions.com,FemtosearchBot,360Spider,linkfluence.com,glutenfreepleasure.com,GlutenFreeCrawler,YaK/1.0,Cliqzbot,app.hypefactors.com,axios,webdatastats.com,schmorp.de,SEOkicks,DuckDuckBot,Barkrowler,ZoominfoBot,LingueeBot,Mail.RU_Bot,OnalyticaBot,admantx-adform,Zombiebot,Nutch,SemanticScholarBot,Jetslide,scalaj-http,XoviBot,sysomos.com,PocketParser,newspaper,serpstatbot,MetaJobBot,SeznamBot/3.2,VelenPublicWebCrawler/1.0,WordPress.commShots,adscanner,BacklinkCrawler,netEstateNECrawler,AstuteSRM,GigablastOpenSource/1.0,DomainStatsBot,Winds:OpenSourceRSS&Podcast,dlvr.it,BehloolBot,7Siters,AwarioSmartBot,Apache-HttpClient/5,SeekportCrawler,AHC/2.1,eCairn-Grabber,mediawordsbot,PHP-Curl-Class,Scrapy,curl/7,Blackboard,NetNewsWire,node-fetch,admantx,metadataparser,DomainsProject,SerendeputyBot,Moreover,DuckDuckGo,monitoring-plugins,Selfoss,Adsbot,acebookexternalhit,SpiderLing,Cocolyzebot,TTD-Content,superfeedr,Twingly,Google-Apps-Scrip,LinkpadBot,CensysInspect,Reeder,tweetedtimes,Amazonbot,MauiBot,SymfonyBrowserKit,DataForSeoBot,GoogleProducer,TinEye-bot-live,sindresorhus/got,CriteoBot,Down/5,YahooAdmonitoring,MetaInspector,PetalBot,MetadataScraper,CloudflareSpeedTest,aiohttp,AppEngine-Google,heritrix,sqlmap,Buck,wp_is_mobile,01h4x.com,404checker,404enemy,AIBOT,ALittleClient,ASPSeek,Aboundex,Acunetix,AfD-Verbotsverfahren,AiHitBot,Aipbot,Alexibot,AllSubmitter,Alligator,AlphaBot,Anarchie,Anarchy,Anarchy99,Ankit,Anthill,Apexoo,Aspiegel,Asterias,Atomseobot,Attach,AwarioRssBot,BBBike,BDCbot,BDFetch,BackDoorBot,BackStreet,BackWeb,Backlink-Ceck,Badass,Bandit,BatchFTP,BattleztarBazinga,BetaBot,Bigfoot,Bitacle,BlackWidow,BlackHole,Blow,BlowFish,Boardreader,Bolt,BotALot,Brandprotect,Brandwatch,Buddy,BuiltBotTough,BuiltWith,Bullseye,BunnySlippers,BuzzSumo,CATExplorador,CODE87,CSHttp,Calculon,CazoodleBot,Cegbfeieh,CheTeam,CheeseBot,CherryPicker,ChinaClaw,Chlooe,Citoid,Claritybot,Cloudmapping,Cogentbot,Collector,Copier,CopyRightCheck,Copyscape,Cosmos,Craftbot,CrawlingatHomeProject,CrazyWebCrawler,Crescent,CrunchBot,Curious,Custo,CyotekWebCopy,DBLBot,DIIbot,DSearch,DTSAgent,DataCha0s,DatabaseDriverMysqli,Demon,Deusu,Devil,Digincore,DigitalPebble,Dirbuster,Disco,Discobot,Discoverybot,Dispatch,DittoSpyder,DnBCrawler-Analytics,DnyzBot,DomCopBot,DomainAppender,DomainSigmaCrawler,Dotbot,DownloadWonder,Dragonfly,Drip,ECCP/1.0,EMailSiphon,EMailWolf,EasyDL,Ebingbong,Ecxi,EirGrabber,EroCrawler,Evil,ExpressWebPictures,ExtLinksBot,Extractor,ExtractorPro,ExtremePictureFinder,EyeNetIE,FDM,FHscan,Fimap,Firefox/7.0,FlashGet,Flunky,Foobot,Freeuploader,FrontPage,Fuzz,FyberSpider,Fyrebot,G-i-g-a-b-o-t,GT::WWW,GalaxyBot,Genieo,GermCrawler,GetRight,GetWeb,Getintent,Gigabot,Go!Zilla,Go-Ahead-Got-It,GoZilla,Gotit,GrabNet,Grabber,Grafula,GrapeFX,GridBot,HEADMasterSEO,HMView,HTMLparser,HTTP::Lite,HTTrack,Haansoft,HaosouSpider,Harvest,Havij,Hloader,HonoluluBot,Humanlinks,HybridBot,IDBTE4M,IDBot,IRLbot,Iblog,Id-search,IlseBot,ImageFetch,ImageSucker,IndeedBot,IndyLibrary,InfoNaviRobot,InfoTekies,Intelliseek,InterGET,InternetSeer,InternetNinja,Iria,Iskanie,IstellaBot,JOCWebSpider,JamesBOT,Jbrofuzz,JennyBot,JetCar,Jetty,JikeSpider,Joomla,Jorgee,JustView,Jyxobot,KenjinSpider,KeybotTranslation-Search-Machine,KeywordDensity,Kinza,Kozmosbot,LNSpiderguy,LWP::Simple,Lanshanbot,Larbin,Leap,LeechFTP,LeechGet,LexiBot,Lftp,LibWeb,Libwhisker,LieBaoFast,Lightspeedsystems,Likse,LinkScan,LinkWalker,Linkbot,LinkextractorPro,LinksManager,LinqiaMetadataDownloaderBot,LinqiaRSSBot,LinqiaScrapeBot,Lipperhey,LipperheySpider,Litemage_walker,Lmspider,MFC_Tear_Sample,MIDowntool,MIIxpc,MQQBrowser,MSFrontPage,MSIECrawler,MTRobot,Mag-Net,Magnet,Majestic-SEO,Majestic12,MajesticSEO,MarkMonitor,MarkWatch,MassDownloader,Masscan,MataHari,Mb2345Browser,MeanPathBot,Meanpathbot,Metauri,MicroMessenger,MicrosoftDataAccess,MicrosoftURLControl,Minefield,MisterPiX,MoblieSafari,Mojeek,Mojolicious,MolokaiBot,MorfeusFuckingScanner,Mozlila,Mr.4x3,Msrabot,Musobot,NICErsPRO,NPbot,NameIntelligence,Nameprotect,Navroad,NearSite,Needle,Nessus,NetAnts,NetLyzer,NetMechanic,NetSpider,NetZIP,NetVampire,Netcraft,Nettrack,Netvibes,NextGenSearchBot,Nibbler,Niki-bot,Nikto,NimbleCrawler,Nimbostratus,Ninja,Nmap,Not,Nuclei,Octopus,OfflineExplorer,OfflineNavigator,OnCrawl,OpenLinkProfiler,OpenVAS,Openfind,Openvas,OrangeBot,OrangeSpider,OutclicksBot,OutfoxBot,PECL::HTTP,PHPCrawl,POE-Component-Client-HTTP,PageAnalyzer,PageGrabber,PageScorer,PageThing.com,PageAnalyzer,Pandalytics,Panscient,PapaFoto,Pavuk,PeoplePal,Petalbot,Pi-Monster,Picscout,Picsearch,PictureFinder,Piepmatz,Pimonster,Pixray,PleaseCrawl,Pockey,ProPowerBot,ProWebWalker,Probethenet,Psbot,Pu_iN,Pump,PxBroker,PyCurl,QueryNMetasearch,Quick-Crawler,RSSingBot,RankActive,RankActiveLinkBot,RankFlex,RankingBot,RankingBot2,Rankivabot,RankurBot,Re-re,ReGet,RealDownload,Reaper,RebelMouse,Recorder,RedesScrapy,RepoMonkey,Ripper,RocketCrawler,Rogerbot,SBIder,SEOlyticsCrawler,SEOprofiler,SEOstats,SISTRIX,SMTBot,SalesIntelligent,ScanAlert,Scanbot,ScoutJet,Screaming,ScreenerBot,ScrepyBot,Searchestate,Seekport,SemanticJuice,Semrush,SentiBot,SeoSiteCheckup,SeobilityBot,Seomoz,Shodan,Siphon,SiteCheckerBotCrawler,SiteExplorer,SiteLockSpider,SiteSnagger,SiteSucker,SiteSucker,Sitebeam,Siteimprove,Sitevigil,SlySearch,SmartDownload,Snake,Snapbot,Snoopy,SocialRankIOBot,Sociscraper,Sosospider,Sottopop,SpaceBison,Spammen,SpankBot,Spanner,Spbot,SputnikBot,Sqlmap,Sqlworm,Sqworm,Steeler,Stripper,Sucker,Sucuri,SuperBot,SuperHTTP,Surfbot,SurveyBot,Suzuran,Swiftbot,Szukacz,T0PHackTeam,T8Abot,Teleport,TeleportPro,Telesoft,Telesphoreo,Telesphorep,TheNomad,TheIntraformant,Thumbor,TightTwatBot,Titan,Toata,Toweyabot,Tracemyfile,Trendiction,Trendictionbot,True_Robot,Turingos,Turnitin,TurnitinBot,TwengaBot,Twice,Typhoeus,URLy.Warning,URLyWarning,UnisterBot,Upflow,V-BOT,VBProject,VCI,Vacuum,Vagabondo,VelenPublicWebCrawler,VeriCiteCrawler,VidibleScraper,Virusdie,VoidEYE,Voil,Voltron,WASALive-Bot,WBSearchBot,WEBDAV,WISENutbot,WPScan,WWW-Collector-E,WWW-Mechanize,WWW::Mechanize,WWWOFFLE,Wallpapers,Wallpapers/3.0,WallpapersHD,WeSEE,WebAuto,WebBandit,WebCollage,WebCopier,WebEnhancer,WebFetch,WebFuck,WebGoIS,WebImageCollector,WebLeacher,WebPix,WebReaper,WebSauger,WebStripper,WebSucker,WebWhacker,WebZIP,WebAuto,WebCollage,WebEnhancer,WebFetch,WebFuck,WebPix,WebSauger,WebSucker,Webalta,WebmasterWorldForumBot,Webshag,WebsiteExtractor,WebsiteQuester,WebsiteQuester,Webster,Whack,Whacker,Whatweb,Who.isBot,Widow,WinHTTrack,WiseGuysRobot,Wonderbot,Woobot,Wotbox,Wprecon,XaldonWebSpider,Xaldon_WebSpider,Xenu,YoudaoBot,Zade,Zauba,Zermelo,Zeus,Zitebot,ZmEu,ZoomBot,ZumBot,ZyBorg,arquivo-web-crawler,arquivo.pt,autoemailspider,backlink-check,cah.io.community,check1.exe,clark-crawler,coccocbot,cognitiveseo,com.plumanalytics,crawl.sogou.com,crawler.feedback,crawler4j,dataforseo.com,demandbase-bot,domainsproject.org,eCatch,evc-batch,facebookscraper,gopher,instabid,internetVistamonitor,ips-agent,isitwp.com,iubenda-radar,lwp-request,lwp-trivial,meanpathbot,mediawords,muhstik-scan,oBot,pagescorer,pcBrowser,plumanalytics,polarisversion,probe-image-size,ripz,s1z.ru,satoristudio.net,scan.lol,seobility,seocompany.store,seoscanners,seostar,sexsearcher,sitechecker.pro,siteripz,sogouspider,sp_auditbot,spyfu,sysscan,tAkeOut,trendiction.com,trendiction.de,ubermetrics-technologies.com,voyagerx.com,webgains-bot,webmeup-crawler,webpros.com,webprosbot,x09Mozilla,x22Mozilla,xpymep1.exe,zauba.io,zgrab,petalsearch,protopage,Miniflux,Feeder,Semanticbot,ImageFetcher,Mastodon,Neevabot,Pleroma,Akkoma,koyu.space,Embedly,Mjukisbyxor,GiantRhubarb,GozleBot,Friendica,WhatsApp,XenForo,Yeti,MuckRack,PhxBot,Bytespider,GPTBot,SummalyBot,LinkedInBot,SpiderWeb,SpaceCowboys,LCC,Paqlebot
}
}

Expand Down
5 changes: 5 additions & 0 deletions Documentation/ChangeLog/Index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@

ChangeLog
=========
12.5.0
"""""
#. Use null coalescence for undefined array indices, for if not all settings are set. (Michiel Roos)
#. Improved bot detection for helpfullness and comment actions

12.4.2
"""""
#. Small bugfix in isBot function
Expand Down
6 changes: 3 additions & 3 deletions Documentation/Settings.cfg
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[general]
project = Frequently Asked Questions
release = 12.4.2
version = 12.4
copyright = 2023
release = 12.5.0
version = 12.5
copyright = 2024

[notify]
about_new_build = no
Expand Down
6 changes: 3 additions & 3 deletions Documentation/Settings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

---
conf.py:
copyright: 2023
copyright: 2024
project: jpFAQ
version: 12.4
release: 12.4.2
version: 12.5
release: 12.5.0
intersphinx_mapping:
t3tsref:
- http://docs.typo3.org/typo3cms/TyposcriptReference/
Expand Down
1 change: 1 addition & 0 deletions Documentation/User/Index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ Users Manual
#. If would like to track helpfulness of questions, which shows a comment form when visitors click 'not helpful', check 'Show a comment form under each question'
#. If the email and comment fields in the flexform are not filled in, the corresponding typoscript settings will be used.
#. You can also present a feedback form under each plugin. Check 'Show a (categories) comment form under this list of questions'.
#. On upgrade from older major version, make sure the plugin is saved again with the correct flexform values and recheck included typoscript settings.


.. _11.6:
Expand Down
4 changes: 2 additions & 2 deletions ext_emconf.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
'author' => 'Jacco van der Post',
'author_email' => 'jacco@id-webdesign.nl',
'state' => 'stable',
'version' => '12.4.2',
'version' => '12.5.0',
'constraints' =>
[
'depends' =>
[
'typo3' => '12.4.2-12.4.99',
'typo3' => '12.4.0-12.4.99',
],
'conflicts' =>
[],
Expand Down

0 comments on commit bed147e

Please sign in to comment.