Direct Mail Salutation based on tt_address Contact Form FAQ - Frequently Asked Questions Frontend news submitter Responsive Images"Page not found" handler+AOE Linkhandler Configurator1-Click-Login360 degrees shots360° image rotation4-3-feature-example404 Handler404 Page not found handling404 sponsoringA Better Tag CloudA Google Maps GLayerA Google Maps GPolygonA Google Maps GPolylineA-Z Keyword ListAccessibility Glossaryad: Adaptive Imagesad: Google Mapsad: Google Maps Plugin Addressesad: Google Maps Plugin Frontend Usersad: Google Maps Plugin KML-Layerad: Google Maps Plugin Poly-Layerad: LESSad: Social Share Privacyad: Templavoila Cyclead: Templavoila Tabsad: Twitter BootstrapAdaptive ProfilesAdditional attributes for tx_formAdditional TCA FormsAdditional Templavoila SysfolderAddons to tt_productsAddress list for cal eventsAddress List MultilangAddress ManagementAddress visualization with Google Maps and tt_addressaddressgroupsAddThis Social SharingAdmin messageAdmineradON Base DistributionAdv. cal partner integration Advanced Address-List Advanced Banner ManagementAdvanced Caching APIAdvanced FORM objectAdvanced Frontend EditingAdvanced sitemapsAdvanced Template EngineAdvent calendarAgency RegistrationAgency Registration for tt_addressagoraajado inline galleryAjax ChatAjax FE loginAjax mail subscriptionAjax MapAJAX Search EngineAjax Sitemap (kn_sitemap)Ajax Tabbed Google SearchAJAX user loginAjaxifier for TYPO3Akismet for CommentsAkismet for TIMTABAlias for tt_contentalohaAlpha sitemapAlternate selector (Tag Pack)Alumni ListAmazing LESSAmazon S3 FAL Driveramazon_affiliateAND ShadowboxAOE advanced realurl pathAOE Advanced TYPO3 TablesAOE IPauthAOE linkhandlerApache Nutch for TYPO3Apache Solr for TYPO3 CMSApache Solr MediaWiki IndexerApache Solr Redmine IndexerApache Tika for TYPO3Appointment SchedulerARM Google MapARM ShopAsdisAST FlashAtom Feed PublisherAuth Against TYPO3AuthenticatorAuto GroupAuto grouping sitemap and menuAuto-generated baseUrlAutocomplete for indexed_searchautomaketemplateAutomatic base urlAutomatic Country-To-Language Mapping (GeoIP)aux_newsmailer_split_catAwareness FrameworkAwStatsBack-link content elementBackend ACLsBackend Cache using Zend Data CacheBackend Changelog barBackend CookiesBackend demonstrationBackend login captchaBackend SimplifierBackend User AdministrationBackend user rolesBadges for FE usersBallroom Dancing ExampleBanner-ManagementBannercodesBarcode GeneratorBarschedulerbase BAT-Berlinbase HfS-BerlinBasic site setupBasic Template for Job Marketbasketball-bund.net - import 2Batch MailerBB Language SelectBe groupsBE User Password ResetbeautyOfCode SyntaxHighlighterBeNewsbetatext text commentingBetter ContactBetter Downloads for tt_newsBetter FlexformsBetter TabsBFV widgetbgm hreflangbibBibTex publication listBibTex PublicationsBin TS-TemplatesbinumohanbitsGallerybitsofficeBlogBlogsBMI CalculatorBMI CalculatorBook ReviewBooklets - Brochure OrderingBootstrap for TYPO3 (bootstrap_core)Bootstrap Integration for FSCBootstrap Kickstart PackageBootstrap responsive imagesBootstrap Styled ContentBridge LibBridge XML RenderingBridgle Lib Ext Js GuiBrowser: TYPO3 without PHPbrute force protection for feloginbxSlidercab language linkCache CleanerCache ExpireCache Expires for tt_contentCache Management ExtensioncacheinfoCaddy - TYPO3 Shopping Cartcal base day descriptioncal base location grid viewcal fe ajax interfaceCalDAVCalendar BaseCalendar Base +BrowserCalendar Base Introduction PackageCalendar DisplayCalendar using extbaseCalendarizeCall for PapersCamaligaCapshop3Captcha View HelperCaretakerCaretaker Password CrackerCartCartPaypalCAS ReservationCatalogue RaisonnéCategoriescategories_importipsvCategorizationcb_indexedsearch_autocompleteccco_shoutboxCCDebugccfcdnfilescenoshopce_gallerycHash ToolsChecklistsChristof HagedornChristoph FuchsChrome Extension: Clear CachesChrome Extension: Fast TYPO3 Backend switchCinemacivservClean /typo3temp directoryCleanerClear cache clickmenu itemsClear cache recursiveClear Cache RequestClear Processed ImagesClear TYPO3-cacheCli CleanercliinstallClosure CompilerCloudFlare ClientCMISCMP3 - Cross Media Publishing for TYPO3CMP3 DemoCOA_GOcObj CacheCode highlight for tt_newsCode SnippetsComicGalerieCommenting system (comments)Comments Backend ModuleComments PlusComments: fe_user connectorComments: individual closingComments: IP blockingComments: jQuery codeComments: report bad commentcommerceCommerce add articles to basketCommerce advanced productsCommerce CouponsCommerce DAM connectorCommerce first categoryCommerce ImporterCommerce minimum order quantity for articlesCommerce SearchCommerce SEO fieldsCommerce Translation StatusCommerce_EXTcommonTSCommunityCommunity Flexible Layoutcondition notusergroup Config, Metatag & SEO FeaturesConfigure WebsiteConnector ServicesConnector Services - CSVConnector Services - JSONConnector Services - SQLConnector Services - XML/RSS FeedContactsContacts listcontaggedcontainerContent AccessContent Access Per UserContent DesignerContent elements overviewContent ParserContent ReplacerContent SlidingContent StagingContent TableContent with PageBrowser Context ManagerContrast SwitchCookie ControlCookie ManagercooluriCoolURI Page URLs BE ModulecoolURI: Clear cacheCore APICoreUpdateCoverFlow for contentcrawlerCreate Page Tree WizardCrop and Square ThumbnailsCross Google AdsenseCrowdCrowd AuthCSS styled FilelinksCSS to inline convertercss_styled_imgtextCSV DisplaycurlcontentCustom login skincwt_communityCyberPeaceDAM Amazon S3 uploadDAM AssetsetsDAM Download PluginDAM LightboxDAM SchedulerDAM Templavoila ConnectorDam tt_newsdam_crondam_demoDance-ClubDashboardDAT User Management by SOAPData Display EngineData FilterDatabase SequencerDataViewer ExtensionDate Selector LibraryDatec BlogDatec LosungenDB IntegrationDeactivate opcode cache checkDeal! And TYPO3 can ebay and immobilienscout24.deDeal! ebay values for marketplace Germany/77Deal! ebay values for marketplace US/0Decos Publisherdelete_staticfile_by_3partyDeploymentDeprecation Helperdev/null address and mapsdev/null Eventsdev/null jQuery countdowndev/null robots.txtdev/null webmastersDeveloper Garden Conference Call ExtensionDeveloper Garden Send SMS ExtensionDeveloper libraryDeveloper logDeveloper toolsDeveloper's Logdf_tabsDIGITAGE | SlideshowDigital Asset Management (DAM)Direct MailDirect Mail CompanionDirect Mail HTML viewDirect Mail SalutationDirect Mail SubscriptionDirect RequestDirectoryDisplay ControllerDisplay Controller DebuggerDisqus Commentsdkd_staticuploaddkd_staticupload_scpdkd_staticupload_winscpdkd_toolsdkd_xmlimportdns_managerDoctrineDocumentsDomain checkDomain ManagementDomain Model ExtenderDomain Models for ExtbaseDonationsDownload CenterDownload Explorer (download_explorer)DR Wiki - TYPO3 WikiDragdropDRC News CommentDRC Product Advertisementdreipunktnull glossaryDropbox APIDropbox FAL driverDutydynaflexDynamic Column displayDynamic Content Elements (DCE)Dynamic CSSDynamic email target for formhandlerDynamic Google SitemapDynamic MetadataDynCSS compassEasy route plannerEasylogin with OpenID, OAuth, etc.eBook with turn.jsEcommentsECSSteamEfA Font SizeeGov APIEmail Address Subscriptionemail2powermailEmbed Content in tt_newsEmogrifierEnhanced Media ElementEntree AuthenticationEnvironment BannerEPiServer to TYPO3ESAPI for TYPO3Essential Dots DAM category sortEssential Dots DAM galleryEtherpad Content ElementEvent browserEvent CalenderEventsevo_nginx_boostExiftoolExport ke_statsExport to WordExport tt_products to MagentoExpressions sandboxEXT:webdav based on SabreDavExtbase DAM accessExtbase HijaxExtbase PagerExtbase Persistence ReworkExtbase Solr Storage BackendExtbase Static Info TablesExtbase Validation with TypoScriptExtbase WebservicesextdevevalExtended LinksExtended TCEMAIN.clearCacheCmdExtended webdav extension (gsoc 2011)extensible sitemapExtension BuilderExtension GeneratorExtension Integrity CheckExtension ToolsExtension zu EZB und DBISExternal ImportExternal Import TutorialExternal Providers for Direct Mailextjsextracacheextrepextrep_mgmFacebook Comments for newsFacebook ConnectFacebook OpenGraphFacebook pluginFacebook Social PluginsFacebook: Social PluginsFacebookConnect - The Amazing WayFaceted SearchFAL Amazon S3 DriverFAL AWS CF SupportFAL AWS S3 DriverFAL CIFS driverFAL Dropbox DriverFAL FTP DriverFAL GalleryFAL IndexingFAL Local XT DriverFAL Rackspace Cloud FilesFAL Remote ProcessingFAL sftp Driver (DEPRECATED)FAL test driverFAL WebDAV DriverFancybox 2.0 - The Amazing Wayfdfx_2colsfdfx_3colsfdfx_beimagefdfx_svnFE Address editFE Edit for multicolumnFE IP-AuthenticationFE IP-AutologinFE Login DebuggerFE User ManagementFeature Flags for TYPO3Feed ImporterFeed ReaderFeedbackFeedback / Comments / GuestbookFeedForwardFeManager - TYPO3 Frontend User RegistrationFEUser - BELoginFeuserloginsystemfeusermanagementfile based DataStructuresFile ExplorerFile Explorer CheckFile handlingFile ListFile ListFile ManagerFile PageFile search toolFilelinks DAM usagefire debugfire devlogFire Fighter ManagerfkuwebsliceFlash Ajax Video PlayerFlash Player IntegrationFlexFlexform based IFrameFlexible content elementFlexible content elementsFlickr Imagesflickr SetFlip it!Flip it! - ResourcesFluid - ViewHelperFluid Debugging ViewHelpersFluid layoutFluid mailerFluid MicrositeFluid PaginateFluid PDF viewFluid pibaseFluid RecommendationFluid-based Data DisplayFluid-Template-Manager (FTM)Fluid: Website TemplateFLV Player 2Font sizerForce 404 languageForce Realurls 2format TYPO3 ToolsFormhandlerFormhandler BackendFormhandler on FluidFormhandler PaymentFormhandlerGuiFormidableFORMidable DB m:m data handlerformsFoundation 5FPDFFramed YouTubeFre!freeCap CAPTCHAfreecap_readFreesh EventsFront End User RegistrationFrontend change passwordFrontend DashboardFrontend FilemanagerFrontend MediaFrontend NewsFrontend Shibboleth ProtectionFrontend TreeviewFrontend UploadFrontend user autologinFrontend user master loginFrontend User Profile & RegistrationFrontend User Registrationfrontendformslibfr_portfolioFSC Layout WrapFSC Responsive MediaFULLTEXT for indexed_searchGabrielGalleriaGalleria Plugin for TYPO3Gallery2geckoboardGeko Typo3 FrameworkGeneral data displayGeneric Domain ModelsGeneric expression parserGeneric GalleryGeneric Layar Service ProviderGeneric MailerGeolocateGeotargeted BannerGerman Bank Identifier CodesGerman date format: feuser_regGestion de membresGestion des publicationsGestion des thèsesGet values from FlexFormsGetCachesgForumGH AccordionGH Change Font SizeGH Disclaimer RedirectGH List SubscribeGH Multi TagGH Random ContentGimme Five!gkh RSS ImportGliderGlobal Weather WSGlossar der UB KaiserslauternGMap 3Golb - Blog The Page WayGoogle AnalyticsGoogle AnalyticsGoogle Analytics IntegrationGoogle CalendarGoogle MapsGoogle Maps APIGoogle Maps API ExtbaseGoogle Material Design LiteGoogle PagespeedGoogle plusGoogle Plus One for tt_newsGoogle Query Data ProviderGoogle Site SearchGoogle Site SearchGoogle sitemapGoogle Store LocatorGoogle Tag Manager Gorillary Gallerygov_masterconfiggraytreeGrid Elements (former official tracker) - now moved to Gitlab!Grids for Bootstrapgroupdelegationgruene-autos.orgGS Favicon for Bootstrap PackageGSA Admin (pt_gsaadmin)GSA Article ListGSA CategoriesGSA Dunning (pt_gsadunning)GSA Shop (pt_gsashop)GSA Socket (pt_gsasocket)GSA Standalone DatabaseGSA Stock (pt_gsastock)GSA User RegistrationGuest BookguestbookGuidepostHappy Feet Footnotesheads listHernnhuter LosungHigh Performance Plugin SystemHipChatHomehookerhr_vbulletin_connectHTML ImportHTML to PDFHTML-based Data ConsumerHTML5 BoilerplateHTML5 Media fallbackHTML5 Media tagsHTML5 Video Playerhtml5videoHTTP 301 Redirect For DummieshubicHut-ManagerHWT ResubmissionHybridAuthHypeHype BaseHype DirectoryHype ErrorHype GridHype HTML5Hype StoreHyphenator for TYPO3Hyves FeedICE PackIcon fontICS AWStatsID: SalesforceIgbinaryImage Flow GalleryImage galleryImage GalleryImage Lightbox v2Image OptimizerImage Processing via ImagickImage ResizerImage with Multimediaimage-text editviewImagemap WizardImmowelt Extbase APIImport ManagerImportrImproved FE login securityImproved overlaysin2facebookin2rssin2snippetsIncident Handling SystemIndexed Search mmforum hookIndexedSearch crawler for tt_newsIndexedSearch crawler for tt_news incl rendered contentInfinite Scroll GalleryInfoBlockInsert Link Addon for Bootstrap Internal note tooltipIntroduction PlusInventoryIP-range for Admins/Be-useriPhone Routingirfaq - Modern FAQIRRE element for tt_newsIRRE Tutorialissuu.com Flip PDFsITAW GigdisplayerITS pdf GeneratorIVW PixelIVW TagsIwImmo JasmineJavascript and CSS Optimizer Javascript Language LabelsJavascript Localization JavaScript-Testerjb_realurl_regenerationJCC Appointment ModuleJettsJH Captchajk_pollJob FairJob MarketJokers Mobilejoliprint buttonjpCarouseljpFaqjQuery autocompletejQuery ColorboxjQuery Content ToolsjQuery LightboxJQuery Mobile fluid templatesjQuery.popeyejQueryMobilejsr170repo_demojsr170supportjulle_eventsJW PlayerJW Player as media elementK23 Image CropKaltura Video PlatformKarussell: a jQuery galleryKB PackmanKB Page Icon kb_configkb_displaykb_imageeditkb_kickstarterkb_shopKDE vfske DomPDFKerio Mailserver Integrationkeyword menuke_contactske_forumke_forum_notificationske_questionnaire (RE-BAKE)ke_UserregisterkickstarterkickstartermvcKIWI Gig ListerKIWI PopupKlicktrieb Frontend FilemanagerKSS Responsive Gumby TemplateKurz FieldsL10N ServerLanguage File EditorLanguage SelectionLanguage selectorLanguage SuggestionLanguage switchLanguagevisibilityLanguagevisibility support for extensionsLDAP / SSO AuthenticationLDAP Authentication ServiceLDAP Core LibraryleafletLibrary (based on extbase)Library for FE-Plugins (Div)Library for Frontend PluginslibunzippedLiga64LightcaseLinkcheckerLinkedin LinklayoutLinklistLinkvalidator for TemplaVoila!List CalendarList Categorized PagesList generator (pt_list)list reloadedListmodule AdvancedllxmltranslateLO BackendhelperLO T3Blog template-basedLoadbalanced Downloadslocal company search and viewLocal filesystem FAL driver CDNLocalization Manager (l10nmgr)Locking AdminLog Backend ModuleLog ExampleLogical FormLogin AsLogin limitloginusertracklogitLogWriter for E-MailLogWriter for FirePHPlonewsaddressLorem IpsumLotus Notes BasisLotus Notes NewsLotus Notes SearchLowlevel tasksLucene Workshop ExtensionLumoNet Google MapsLumoNet ImmoScout ExposeLumoNet PHP IncludeLunch Menu SystemMagazine Style ImagesMagentoMagento Auto SignonMagento category menuMagnific PopupMagnific Popup - Hook ExamplesMail encryption for TYPO3 form handlersmail2newsMailChimp SubscribeMailformMailform new generationMailformplus MVCmaillisttofaqMaintenanceMantis ConnectorMap of User Profile ImagesMarch 8: The worker's women framework for TV!MarketplaceMarkets/Countries inside TYPO3Maskmask_exportMathGuardMB :: Frontend User LoginMB Image Gallerymbi_products_categoriesMedia CenterMedia ManagementMedia TeamMediaboxMediaElementsMediaViewHelper for kt_fefmMember InfosheetsMemcached DiagnosisMemoListmenuMenu BalancerMerge plugin flexformMessage QueueMeta Fe EditMetadata and content analysis serviceMetadata in TSMetaSEO - TYPO3 SEO Enhancementsmfc_authormfc_canonicalmh_branchenbuchmh_simplegalleryMicrosoft Web AppMigrationsminiCRMMinifier for TYPO3MinifymininewsMK A/B TestingMK DAM2FALMK FormsMK LibMK LogMK MailerMK PHPIDSMK SanitizedparametersMK Toolsmklv_communitymksearchml_dbsyncMM BirthdaygreetingMM Clean filelinkMM DAM ChangeInfoMM DAM FileListMM ECL - ExtensionClassLibraryMM Property ManagerMM ReferenceListMM-tables Providermmforeignmm_forummm_forum 2.0mm_forum Import modulemm_forum Messenger v2mm_forum post anonymizermm_forum_blogmm_forum_commentsmm_forum_newsmnoGoSearch Full-Text SearchmnoGoSearch: URL ParametersMobile App FactoryMobile BackendMobile DetectorMobile devices detectionMobile HelperMobile RedirectMOC Varnishmoc_filemanagermodernpackageMoneylibMonoslideshowMooFlow V0.2 integrationMooslide - a mootools tickerMootools image sliderMOOX Bootstrap ResponsiveMOOX MailerMOOX News & Blog SystemMost popuplar news with maxAgeMouse Over Effects for ImagesMOVED TO https://github.com/georgringer/newsMovie DatabaseMovie Database (tmd_movie)MP3 Audio Player APIMS Ajax Content LoaderMT System Szablon [MT Tempalte System]Multi Server WorkflowMulti-channel contextsMulticolumn for the page moduleMultidomain PublishingMultimedia DAM usageMultimedia gallery based on adgalleryMultimedia w/FallbackMultiple Action FormsMultishopmusicviewMVC + ExtJSMVC + ExtJS samplesMVC BaseMVC News ExampleMW Imagemapmw ShellmwcsvMy quiz and pollMy TYPO3MySQL ProfilerNAViTiA Librarync_cu3erNested Content ElementsNetBrothers DownloaderNetresearch Content Delivery Network HelperNetresearch Easy WorkspacenewloginboxNews 2 Direct MailNews 404News eventNews EventsNews FalNews RSS ImporterNews to eventsNews to Facebook IntegrationNews- Blogsystemnews2forumNewscalendarNewsletterNewsletter SubscriptionNewsletter SubscriptionNewsletter via news (tt_news)news_packNexusnh_shared_ceNITSAN HelloBar, <br> An API Plugin of HelloBar.comNittygrittyNivo SliderNN AddressNNTP-ReaderNova ShadowboxnsvpingbacksNumber as Usernamenwt_replacerNxExtbasePdfoblady debugODS commerce deliveryOfficial Twitter tweet buttonOLC FlightsOne-time FE AccountOnline ProcessesOnline Vital StatisticsOpen Graph ObjectOpen Graph protocolOpendataOpenStreetMapOperationsOrg +npz.ch - bookingOrganiser +ReferencesOrganiser +RepertoireOrganiser +WorkshopsOrganiser - responsive TYPO3 for the lobbies and the organisersOrganiser - TemplateOrganiser Installer - TYPO3 for the lobbies and the organisersOverlay-BoxPAE Media LibraryPage BookmarkPage CommentsPage module CSSPage pathPage Teaser (with Fluid)Page tree toolsPagebrowserPagecollectorPagehits: HistoryPages categorizationPages Tree iconsPagewizardPaginatePartner ManagementParty Information FrameworkPAS3Password Expiry and ResetPassword Managerpasswords for mm_forum threadsPatenschaftenPayment Transactor APIpaymentlibPaymentlib for commercePaymentlib for CommercePayPal seminars integrationpaypal2commercepbimagegraphpbsurveyexportpbsurveystatisticspChart charting library integrationPDF ArchivPDF Controller 3PDF Viewerpdf viewerpdf_generator2pear mailPedanticPeimic's RealURL ConfigurationPerfect LightboxPerformance graphs for TYPO3Person ManagerPersonalize contentPersonalized Direct Mail SubscriptionPetitionPhamlpPhonegapphoto galleryphotocompetitionPHP Quick ProfilerPHP-based Data DisplayPHPIDS nextGen PHPlot IntegrationphpMyAdminphptalPHPUnit CLI interfacePicasaweb IntegratorPITS Google CSEPits Site Statisticspit_googlemapsPiwikPiwikintegration in TYPO3Placement ServicePlaintext LibraryPlugin cache analyzerPlugin cache enginePlUploadPlupload for FEPluploader Frontendpm Todo PMK "I hate IE"PMK AutokeywordsPMK Cat2MenuPMK Forced DownloadPMK GlossaryPMK Index Search AutocompleterPMK MP3 Player PMK News TwitterPMK ShadowboxPMK SlimboxPMK TSVoilaPongbackPopular pagesPositionerPostFinance E-PaymentPostfixpowermailPowermail ajax submitPowermail div classPowermail JqueryPowermail LimitPowermail PDFPowermail Salesforce integrationPowermail-Limit 2powermail_condpowermail_frontendpowermail_mulpowermail_optinpowermail_sendpostPresentation MenuPrivacy GuardPrize drawProduct CatalogProject ReferencesProject SummaryprotocolCreatorPS3 Trophyspt_extlistpt_jqueryuipt_objectstoragept_xml2pdfPublication databasepunkt.de Tools (pt_tools)punycodepurgepush2rss_3dspwComments captchapwComments pluginpw_commentsQm BackendLayoutQR-CodesQuestionaireQueue frameworkQuick Shop InstallerQuick Shop StockQuick Shop TemplateQuick Shop – responsive E-Commerce with TYPO3QuickyQype ListRabbitMQRadial Search (Umkreissuche)Random bannersRandom Files SortingRating AXRatingsReadSpeakerReadspeaker for TYPO3Realty managementRealURL Manag. module-add ex.RealURL ManagementRealURL PatchRealURL: Clear cachereCAPTCHARecaptchareCAPTCHA for EXT:commentsRecaptcha for formrecentcontentRecord LinkRecord list previewRecord tree for TCARecords management in a BE moduleRedirectRedirect and logRedirect FE-User at LoginRedirect LinkhandlingRedirect URLRedirect via TyposcriptRedirectorRegisterregister4calRelational Link ElementsRelax!Remote ServerRemote Survey ProjectReset backend passwordReset CSSResize images automaticallyResponsive PreviewResponsive previewResponsive TemplateResponsive TYPO3REST clientREST client UIreturn mail analysisrgnewscerg_smoothgalleryRijksoverheidrlmp_tvnotesRobotsRole Based Access ControllRoles 2RoundCornersRouteRPX LoginRS | Advanded TYPO3 LockingRS | Extbase (tt_)AddressRSS DisplayRSS News Feedrssmanager rteRTE anchorsrtp_smartySafe Record EditingSalted pw for sr_feuser_reg.Salted user password hashesSASS CompilersatsumasSAV Library KickstarterSAV Library MvcSAV Library PlusSB DownloaderSB FAQSB FolderdownloadSB PartnerSB PortfolioSB Portfolio 2Scheduler via HTTPScoop.ItscriptaculousscriptmergerScriptmerger BlessscriptsSDU ConnectSearch engine (mnogosearch)Search Engine OptimizationSearchmetrics Content ComposerSecure DownloadSecure DownloadsSecure DownloadsSecure Downloads for FALSecured files using mod_rewriteSecurity CheckSeitwert StatisticsSelf TestSemantic TemplatesSeminar managementseminars ke_yac connectorseminars/cal redirectSend-A-CardSEO BasicsSEO BuddySEO Dynamic Tag 3SEO Pack for tt_newsSERP PreviewsessionplanerSet default author/emailSet FE timezoneSet tt_news archive date automaticallySevenpackSexy bookmarks for tt_newsSF MailsubscriptionSF SVG APIsfpipauthsharethisShibboleth authenticationShipping costs depend on weightShop SystemShop system by Nikitin S.M.Shop3oxShopping Cart for TYPO3 - Order HandlerShopping Cart for TYPO3 - PayPalShopping Cart for TYPO3 - PDF GeneratorShopping Cart for TYPO3 - ProductsShopr* Entertainment ShoppingShopware Integration for TYPO3Show commerce article attributes in basketShow Item Extended InfoSimple AJAX ShoutboxSimple BlogSimple booking extensionSimple DownloadcenterSimple FAQSimple Provider (Tesseract)Simple QuizSimple SliderSimple YouTubeSimple YoutubeSimpleaddressSimpleCalendarSimplegridssimpliRobotsSimulate BE user on FE loginSingle-SignOnsitecatsSitemanagerSitemap GeneratorSitepackageSitewards Flash FilterSJR OffersSkype status buttonsk_calendarsk_simplegallerySlick - responsive Carousel SliderSLUB EventsSM - Google CalendarSmalladssmartysmarty_demoSmilie APISmilie ViewhelperSMSKAUFEN GatewaySnippets (pastecode)Snippets (t3o_snippets, OBSOLETE)Snow FlurrysnowbabelSnowstormSOAP echo webserviceSocial BookmarksSocial Login to TYPO3Social Media StreamsSocial Media WidgetsSocial Network - Recommend linkSocial Network share tt_newsSocial PublisherSocials for tt_newsSocialshareprivacy for newssocialshareprivacy for tt_newsSokobanSolr AdministrationSolr BoutiqueSolrPanelSorting NewsSource OptimizationSpamshield for FormhandlerSpamshield for TYPO3speakingurisSphinx Documentation Viewer PluginSphinx Python Documentation GeneratorSpotifySpriteSprite icon overviewSpritesSQL-based Data ProviderSR GD Crop & ResizeSRA LibrarySSL HelperStart TYPO3 ResponsiveStart TYPO3 Responsive CustomerStatic CitiesStatic Info TablesStatic Info Tables (de)Static info tables (French)Static Info Tables (pl)Static Info Tables for ExtbaseStatic Info Tables ManagerStatic PublishStatic redirectsStatic SexStatic Template for Websitesstaticpubstaticpub page-exportstaticuploadrsyncstatic_info_tables_czStatisticsStop Duplicate ContentStop wordsStop words for RealURLStore FinderStore Powermail form in databaseStore URLStreamio.comStructured Data Rendering for TYPO3Student-OfficeSubsitewizardsubversion support for TYPO3Supersized - full screen background slideshowSupport ChatSurveysvo_tvplaintextSWFObjectSWFTOOLS for LinuxSWFTOOLS for Windowsswfupload for ceSwigmore InstituteSynchronize fe_users with XINGSyntaxhighlightSystem Infosys_messagessys_notepadsys_todossys_workflowsT3 Admin communityT3 fancyboxT3 jQueryT3 MonkeyT3 MootoolsT3 SocialsT3 Web WidgetsT3BLOGt3blog uses jQueryT3BLOG Widget Demot3ddy - Super cute tabs and accordionst3deployt3feblogt3filelistT3Flext3flextoolkitt3mt3quotes - Quotes databaset3s_jslidernewst3templeT3UsersT3X CSS styled content imp.T3X direct_mail header-patchT3X SpamassassinT3X ToolTipT3X TYPO3 skinTabbed ContentTable CleanerTable for Connector service SQLTag PackTag Pack Data ProviderTagcloud ExtensionTags for pagestail frontendtail – a generic REST clientTC DirectmailTCA/TCE Tutorials and UnitTestsTCAobjectstcemainhookstc_beuserTD CalendarTeam developer helpersTemplate builderTemplate for YAML and TemplavoilaTemplate SelectorTemplaVoilaTemplaVoila Content SlideTemplavoila drag'n dropTemplaVoila FrameworkTemplaVoila tools for file based ds and mappingTEND flickrTEND YouTubeTEND YouTube to tt_newsTEQneers SEO Enhancements (dead -> please use MetaSEO)TEQneers SlideshowTER AnnouncerTER Docs Solr IndexerTER Update Task (obsolete)The Bridge to FLOW3The Tesseract ProjectThemes a theme selector, like known from wordpressTidioChatTidy or HtmLawed easy configTimekeepingtimtabtimtawTiny SourcetinyMCETinyMCE RTETinyMCE v4 as TYPO3 RTETip a friendTip-A-FriendTitle Tag ConfigurationTM GalleryTM PasteBinTocToc Comments - AJAX Social Network ComponentsTocToc Index Reloadedtollwerk Google Analyticstollwerk Lucene searchToolbox UTF8Tour Extensiontox | Google AJAX Librariestrade ecommerceTranslation helpertravelguidetree or list message boardtreesTroubleticketsTruncate Job Trusted Hosts Patterntsctslib_feTCE backportts_extbaselinkstt_guesttt_newstt_news Cache Clear by Tagtt_news Cache Clearlikett_news cache expirestt_news Cache Managementtt_news integration for YAGtt_news select configurationtt_news select configurationTurnjsTW RSS FeedsTweet and Like button tt_newsTweet ThistwitterTwitter bootstrapTwitter pluginTwitter Search (twittersearch)Two column text with imageTypo3 / CakePHPTYPO3 adapted xaJaxTYPO3 agenciesTYPO3 API compatibility libraryTYPO3 build toolsTYPO3 CiviCRMTypo3 ClusterTYPO3 CMS Compatibility LayerTYPO3 CMS in the cloudTYPO3 ConfigViewerTYPO3 Design KitTYPO3 Developer APITYPO3 Drivercore Content ElementTYPO3 Facebook extensionTYPO3 FeedTYPO3 Foundation FrameworkTYPO3 HyphenatorTYPO3 jQuery interfaceTYPO3 Media GalleryTYPO3 more scalableTypo3 PHPIDSTYPO3 profilerTYPO3 QuixplorerTYPO3 RegistrationTYPO3 ToGoTYPO3 Update CheckTYPO3 WrapperTYPO3Mindtypo3orgtyposcripttypo3rtlTypoGentotypogorum - DMS/ECM - agorumTyposcript BlogTyposcript CETypoScript CheckTypoScript FilesTypoScript LiveEditorTyposcript Service for Calendar Basetyposcript2contentelementUnit tests for tt_newsUniversal page browserUniversal PageteaserUniversal SearchbarUniversity Seminar-Calendarupate refindex of Typo3Update page on news updateUpload to TERUploadcareURL ToolsUseful informations in reports moduleUseful tasks in scheduler moduleUsers OnlineUTF-8 ConverterUTOPIAVanilla Single Sign OnVarnish Cache ControlVarnish ConnectorVehiclesVFSVibéoVideo Content ElementVidi (List Component)View Helper CollectionVimeo VideoViral Tweet GeneratorVR-ePay ePaymentWarpstock Europe EventswatchwordsWeb Application FirewallWeb>List Actionswebcon: Accessible browse results for indexed searchwebconsulting FTP transferWebKit PDFWebservices for TYPO3WEC MapWheelchairWishlistWordPress grabberWordpress IntegrationworkshopsWorkspace PreviewWorkspace Preview AdviceworldcupWOW - Character DisplayWOW - Item DisplayWOW - Raid ManagementWRSws_statswt_calculating_captchawt_carmarketwt_cart for tt_newswt_commerce_previewwt_contentchangewt_csstooltipwt_directorywt_dynamictargetwt_email4downloadwt_gallerywt_gallery_descriptionwt_individualshippingcostwt_lightwindowwt_socialbookmarkswt_spamshieldwt_twitterxajaxxajax libraryxajax_tutorXING ButtonXLF EditorXLIFFXML Flash Tag CloudXML RSS-Feed ImportXML templating for JpGraphXML to Front EndXML Tools for ExtbaseXML xPath ParserXML-Sitemap for pages and mediaXPATH Content ObjectXSLT Content ObjectxtcmodifiedYAC - Yet another CalendarYAG - Theme SimpleviewerYAG - Yet Another GalleryYAML for TemplaVoilaYAML for TYPO3Yellowpay for TYPO3 commerceYet Another Feed ImporterYet another GalleryYet another Google searchYIID it! like/dislike buttonYoutube APIYoutube Data V3YouTube Fancy PlaylistYubiKey two-factor OTP authenticationZend FrameworkZend Framework extensions[clickstorm] SEO[DEPRECATED] Please refer to Quick Shop!Разработка на Extbase

4608.diff

Patchfile - Marcus Krause, 2009-09-13 14:59

Download (9.54 KB)

View differences:

pi1/lib/pingback.php (working copy)
4 4
require_once('../../lib/xmlrpc-2.2/lib/xmlrpcs.inc');
5 5

  
6 6
/**
7
 * Starts pingback-process 
7
 * Starts pingback-process
8 8
 *
9 9
 * @param 	object	$m
10 10
 * @return 	string	Confirmation or error message
11 11
*/
12 12
function pbprocess($m) {
13
        global $xmlrpcerruser;
13
		global $xmlrpcerruser;
14 14

  
15
        $x1 		= $m->getParam(0);
16
        $x2 		= $m->getParam(1);
17
        $source 	= $x1->scalarval(); # their article
18
        $dest 		= $x2->scalarval(); # your article
15
		$x1 		= $m->getParam(0);
16
		$x2 		= $m->getParam(1);
17
		$source 	= $x1->scalarval(); # their article
18
		$dest 		= $x2->scalarval(); # your article
19 19

  
20 20

  
21
        //USE CLI MODE?
22
        global $TYPO3_CONF_VARS;
23
		error_reporting (E_ALL ^ E_NOTICE);
21
			//USE CLI MODE?
22
		global $TYPO3_CONF_VARS;
23

  
24 24
		if ($_SERVER['PHP_SELF']) {
25 25
			if (!defined('PATH_thisScript')) define('PATH_thisScript',str_replace('//','/', str_replace('\\','/', $_SERVER['PHP_SELF'])));
26 26
		} else {
27 27
			if (!defined('PATH_thisScript')) define('PATH_thisScript',str_replace('//','/', str_replace('\\','/', $_ENV['_'])));
28 28
		}
29
		
29

  
30 30
		if (!defined('PATH_site')) define('PATH_site', dirname(dirname(dirname(dirname(dirname(dirname(PATH_thisScript)))))).'/');
31 31
		if (!defined('PATH_t3lib')) if (!defined('PATH_t3lib')) define('PATH_t3lib', PATH_site.'t3lib/');
32
		
32

  
33 33
		define('PATH_typo3conf', PATH_site.'typo3conf/');
34 34
		define('TYPO3_mainDir', 'typo3/');
35
		
35

  
36 36
		if (!defined('PATH_typo3')) define('PATH_typo3', PATH_site.TYPO3_mainDir);
37 37
		if (!defined('PATH_tslib')) {
38 38
			if (@is_dir(PATH_site.'typo3/sysext/cms/tslib/')) {
......
41 41
				define('PATH_tslib', PATH_site.'tslib/');
42 42
			}
43 43
		}
44
		
44

  
45 45
		define('TYPO3_OS', stristr(PHP_OS,'win')&&!stristr(PHP_OS,'darwin')?'WIN':'');
46 46
		define('TYPO3_MODE', 'BE');
47
		
47

  
48 48
		require_once(PATH_t3lib.'class.t3lib_div.php');
49 49
		require_once(PATH_t3lib.'class.t3lib_extmgm.php');
50 50
		require_once(PATH_t3lib.'config_default.php');
51 51
		require_once(PATH_typo3conf.'localconf.php');
52
		
52

  
53 53
		require_once(PATH_t3lib.'class.t3lib_userauth.php');
54 54
		require_once(PATH_t3lib.'class.t3lib_userauthgroup.php');
55 55
		require_once(PATH_t3lib.'class.t3lib_beuserauth.php');
56 56
		require_once(PATH_t3lib.'class.t3lib_htmlmail.php');
57
		
57

  
58 58
		// Connect to the database
59 59
		require_once(PATH_t3lib.'class.t3lib_db.php');
60 60
		$TYPO3_DB 	= t3lib_div::makeInstance('t3lib_DB');
61 61
		$result 	= $TYPO3_DB->sql_pconnect(TYPO3_db_host, TYPO3_db_username, TYPO3_db_password);
62
		$nodb 		= false; 
62
		$nodb 		= false;
63 63
		if(!$result){
64 64
			$nodb = true ; //die("oh shi, no connection".TYPO3_db_host);
65 65
		}
66
		
67
		
68
		$TYPO3_DB->sql_select_db(TYPO3_db);		 
69
		
70
        if (url_exists($source)) { # source uri does not exist
71
	        return new xmlrpcresp(0, 16, "Source uri does not exist");
72
        }
73
        if (url_got_link($source,$dest)) { # source uri does not have a link to target uri
66

  
67

  
68
		$TYPO3_DB->sql_select_db(TYPO3_db);
69

  
70
				if (url_exists($source)) { # source uri does not exist
71
					return new xmlrpcresp(0, 16, "Source uri does not exist");
72
				}
73
				if (url_got_link($source,$dest)) { # source uri does not have a link to target uri
74 74
			return new xmlrpcresp(0, 17, "Source uri does have link to target uri");
75 75
		}
76 76

  
77
        if (url_exists($dest)) { # target uri does not exist
77
				if (url_exists($dest)) { # target uri does not exist
78 78
			return new xmlrpcresp(0, 32, "Target uri does not exist");
79 79
		}
80
		
80

  
81 81
		/*
82 82
		check with allow_pings
83
		        if (..) { # target uri cannot be used as target
84
		        	return new xmlrpcresp(0, 33, "Target uri cannot be used as target");
83
						if (..) { # target uri cannot be used as target
84
							return new xmlrpcresp(0, 33, "Target uri cannot be used as target");
85 85
				}
86
		*/	
87
		
86
		*/
87

  
88 88
		$res_exits = $TYPO3_DB->exec_SELECTquery(
89 89
			'uid',
90 90
			'tx_t3blog_pingback',
91 91
			'url == '.$source.'  AND deleted = 0 AND hidden = 0' //for testing, sends it now
92 92
		);
93
		
94
        if ($GLOBALS['TYPO3_DB']->sql_fetch_assoc($res_exits)) { # Pingback already registered
93

  
94
				if ($GLOBALS['TYPO3_DB']->sql_fetch_assoc($res_exits)) { # Pingback already registered
95 95
			return new xmlrpcresp(0, 48, "Target uri cannot be used as target");
96 96
		}
97 97

  
98
        if (1==2) { # Access denied
99
	        return new xmlrpcresp(0, 49, "Access denied");
98
				if (1==2) { # Access denied
99
					return new xmlrpcresp(0, 49, "Access denied");
100 100
		}
101 101

  
102
        if (1==2) { # Could not communicate with upstream server or got error
103
        	return new xmlrpcresp(0, 50, "Problem with upstream server");
102
				if (1==2) { # Could not communicate with upstream server or got error
103
					return new xmlrpcresp(0, 50, "Problem with upstream server");
104 104
		}
105 105

  
106
        if ($nodb) { # Generic fault code if not applicable to above
107
        	return new xmlrpcresp(0, 50, "Unkown error");
106
				if ($nodb) { # Generic fault code if not applicable to above
107
					return new xmlrpcresp(0, 50, "Unkown error");
108 108
		}
109
		
109

  
110 110
		$title = getTitleByUrl($source);
111
				
111

  
112 112
		$GLOBALS['TYPO3_DB']->exec_INSERTquery(
113 113
			'tx_t3blog_pingback',	//TABLE
114 114
			array(
......
120 120
				'url'=>$source,
121 121
				'text'=>$text, //TODO -> write the url
122 122
				'date'=>time()
123
			)	//values array			
123
			)	//values array
124 124
		);
125 125

  
126
        return new xmlrpcresp(new xmlrpcval("Pingback registered. Have a nice Day.", "string"));
126
				return new xmlrpcresp(new xmlrpcval("Pingback registered. Have a nice Day.", "string"));
127 127
}
128 128

  
129 129

  
......
133 133
 * @param 	string 	$strURL: url-address
134 134
 * @return 	boolean	true if existing
135 135
*/
136
function url_exists($strURL) { 
137
    $resURL = curl_init(); 
138
    curl_setopt($resURL, CURLOPT_URL, $strURL); 
139
    curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1); 
140
    curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback'); 
141
    curl_setopt($resURL, CURLOPT_FAILONERROR, 1); 
136
function url_exists($strURL) {
137
		$resURL = curl_init();
138
		curl_setopt($resURL, CURLOPT_URL, $strURL);
139
		curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
140
		curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
141
		curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
142 142

  
143
    curl_exec ($resURL); 
143
		curl_exec ($resURL);
144 144

  
145
    $intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE); 
146
    curl_close ($resURL); 
145
		$intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE);
146
		curl_close ($resURL);
147 147

  
148
    if ($intReturnCode != 200 && $intReturnCode != 302 && $intReturnCode != 304) { 
149
       return false; 
150
    }Else{ 
151
        return true ; 
152
    } 
148
		if ($intReturnCode != 200 && $intReturnCode != 302 && $intReturnCode != 304) {
149
			return false;
150
		}Else{
151
				return true ;
152
		}
153 153
}
154 154

  
155 155
/**
......
159 159
 * @param	string	$dest: your article
160 160
 * @return 	boolean	true if valid
161 161
*/
162
function url_got_link($strURL,$dest) { 
163
    $resURL = curl_init(); 
164
    curl_setopt($resURL, CURLOPT_URL, $strURL); 
165
    curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1); 
166
    curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback'); 
167
    curl_setopt($resURL, CURLOPT_FAILONERROR, 1); 
162
function url_got_link($strURL,$dest) {
163
		$resURL = curl_init();
164
		curl_setopt($resURL, CURLOPT_URL, $strURL);
165
		curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
166
		curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
167
		curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
168 168

  
169
    $content = curl_exec ($resURL); 
169
		$content = curl_exec ($resURL);
170 170

  
171
    curl_close ($resURL); 
171
		curl_close ($resURL);
172 172

  
173
    if(stripos($content,$dest)){
174
    	return true;	
175
    }else{
176
    	return false; 
177
    }     
173
		if(stripos($content,$dest)){
174
			return true;
175
		}else{
176
			return false;
177
		}
178 178
}
179 179

  
180 180

  
......
186 186
*/
187 187
function getTitleByUrl($sURL) {
188 188
	$clSession = curl_init();
189
	$iTimeout = 30; 
190
	
191
	curl_setopt ($clSession, CURLOPT_URL, $sURL); 
189
	$iTimeout = 30;
190

  
191
	curl_setopt ($clSession, CURLOPT_URL, $sURL);
192 192
	curl_setopt ($clSession, CURLOPT_RETURNTRANSFER, 1);
193 193
	curl_setopt ($clSession, CURLOPT_CONNECTTIMEOUT, $iTimeout);
194 194
	curl_setopt ($clSession, CURLOPT_FOLLOWLOCATION, TRUE);
195 195
	curl_setopt ($clSession, CURLOPT_HEADER, TRUE);
196 196
	curl_setopt ($clSession, CURLOPT_NOBODY, TRUE);
197
	
197

  
198 198
	$sScrape = curl_exec($clSession);
199 199
	curl_close($clSession);
200
	
200

  
201 201
	$sPingbackAddress = trim(TextBetween("<title>", "</title>", $sScrape));
202
	
202

  
203 203
	return $sPingbackAddress;
204 204
}
205 205

  
......
212 212
*/
213 213
function GetXPingback($sURL) {
214 214
	$clSession = curl_init();
215
	$iTimeout = 30; 
216
	
217
	curl_setopt ($clSession, CURLOPT_URL, $sURL); 
215
	$iTimeout = 30;
216

  
217
	curl_setopt ($clSession, CURLOPT_URL, $sURL);
218 218
	curl_setopt ($clSession, CURLOPT_RETURNTRANSFER, 1);
219 219
	curl_setopt ($clSession, CURLOPT_CONNECTTIMEOUT, $iTimeout);
220 220
	curl_setopt ($clSession, CURLOPT_FOLLOWLOCATION, TRUE);
221 221
	curl_setopt ($clSession, CURLOPT_HEADER, TRUE);
222 222
	curl_setopt ($clSession, CURLOPT_NOBODY, TRUE);
223
	
223

  
224 224
	$sScrape = curl_exec($clSession);
225 225
	curl_close($clSession);
226
	
226

  
227 227
	$sPingbackAddress = trim(TextBetween("X-Pingback: ", "n", $sScrape));
228
	
228

  
229 229
	return $sPingbackAddress;
230 230
}
231 231

  
......
237 237
 * @param 	string 	$s2
238 238
 * @param 	string 	$s3
239 239
 * @return 	string	text
240
*/	
240
*/
241 241
function TextBetween($s1,$s2,$s){
242 242
	$s1 = mb_strtolower($s1);
243 243
	$s2 = mb_strtolower($s2);
......
250 250
	}
251 251
	if($pos1 !== false){
252 252
		if($s2 == '') return substr($s,$pos1+$L1);
253
		
253

  
254 254
		$pos2 = strpos(substr($scheck,$pos1+$L1),$s2);
255 255
		if($pos2!==false) return substr($s,$pos1+$L1,$pos2);
256 256
	}
257 257
	return '';
258 258
}
259
        
260
        
261 259

  
260

  
261

  
262 262
$a = array( "pingback.ping" => array( "function" => "pbprocess" ));
263 263
$s = new xmlrpc_server($a, false);
264 264
$s->service();