Parse TYPO3 links in CommandController - typo3

I have saved TYPO3 text (bodytext) in database. It contains different links saved in t3 format:
<p>Link more text.</p>
The idea is create some script as CommandController, get this saved text and send it via email by cron. The problem is links will not be converted in proper html without frontend environment (it works fine, if I do the same inside frontend plugin).
I tried to render this text with fluid html view helper:
<f:format.html>{item.bodytext}</f:format.html>
Also tried to parse text with $contentObject->parseFunc directly inside my CommandController. But it will just cut off link.
Is any simple TYPO3 function to convert bodytext in real html?
Note: typo3 version 8.7.16

Okay, It seems links are not being parsed and I don't think it's an issue with CommandController. I had same issue and found several ways to fix this issue.
Issue with EXT: frontend_editing
After uninstalling every non-vital extension and clearing every
possible cache and a few hours of debugging we have found the problem:
the "frontend_editing" extension - only if the user is logged in into
the backend!
Issue at GitHub
Same issue discussed on Github, you can check it out here
#csba described detailed answer here!
Issue with EXR:fluid_styled_content
Another issue is with format viewhelper, #georg-ringer has explained solution for fixing issue and it works for me. Check it out here for more detail.
As per #georg-ringer answer, you can just change <f:format.html>{item.bodytext}</f:format.html> to <f:format.raw>{item.bodytext}</f:format.raw>. Probably this will fix your problem.
Extbase parse with link service.
// use TYPO3\CMS\Core\LinkHandling\LinkService;
$linkService = GeneralUtility::makeInstance(LinkService::class);
$linkDetails = $linkService->resolve($firstparameter);
You can parse link as shown above, you can find the reference below:
API documentation
Stackoverflow answer

Related

TYPO3 11.5.21 error: TypoScript settings missing Unable to find TypoScript settings for module

yes, it's me with a further, maybe stupid question. I'm very new in TYPO3, I just started working with it. I know some programming languages but no typoscript. Therefore I'm working with the bootstrap package first.
I made some forms with TYPO3 core and so far everything was fine but there wasn't any possibility to customize the email (to sender). Therefore I first installed "Form: Mailtexts via plugin" but afterwards the form was not working anymore and I deleted it and everything was fine again.
After some research I have found powermail for creating forms with loads of cool functions.
So, I read four different tutorials about making forms in powermail and it's not working at all.
As far as I can evaluate the problem, I would guess that the last step is the problem, placing the content on the page.
After loading the page with the powermail elements an error message is shown
"TypoScript settings are missing. Did you include the related static templates? No form to show"
Of course I googled this error message and found this post https://github.com/derhansen/sf_event_mgt/issues/432.
In this post they include "fluid content elements" and "Event management and registration" extension and so did I. A new icon in the backend popped up "Events". Selecting this icon a further error message is shown:
"TypoScript settings missing Unable to find TypoScript settings for module. Please make sure, you have included the static TypoScript for the extension."
The page with the powermail elements is empty now, i.e. no more error message but it's also not working at all.
Please, does anyone understand what's going on here? I'm devastated :-(
Many thanks in advance for your kind help!
Best,
expikx
I tried to solve the problem by internet research and experiments
The plugin of powermail just informed you, that basic configuration is missing. The configuration is given via TypoScript and of course powermail brings some default configuration with it.
You now have to include them. You can do it by opening your default TypoScript template, change to the tab "Includes" and select "Main Template (powermail)". Save your template and reload your frontend.

Indexed search and site management's slug cause issue with custom TYPO3 extensions

TYPO3 Environment
TYPO3 v9.5.3
EXT:news (7.0.8)
EXT:indexed_search (9.5.3)
Use Composer: No
The Problem
On EXT:indexed_search result listing page, Custom extension record's slug URL are not generating. The slug only contains TYPO3 page URL.
Example; The URL should be http://thedomain.com/news/detail/announce-first-news/, but it currently only generates http://thedomain.com/news/
As per our analysis, it seems TYPO3 v9 site management's slug feature cause issue, and there could be following possible issues.
Issue #1
The major issue is, After enabling site management's slug setup, No more indexing happening for a custom extension.
Issue #2
Indexing result will lose after the page will refresh or move to another page (After clear cache data will show again).
Issue #3
If we create new records for a custom extension, then the created new records will not be indexing.
Issue #4
If anyhow, we have done the indexing and search works well, then at search result listing page, The link redirect to the main action like Listing. Because cHash is missing to each record, That's a bit strange!
Does anyone have any idea/solution? Highly appreciate your any thoughts, Thanks a lot!
Cheers,
Team NITSAN
This has been fixed with release of 9.5.5, released 4.3.2019. Check out the release notes which you can find here: https://get.typo3.org/release-notes/9.5.5
The issue for the bug is https://forge.typo3.org/issues/86994
However there has been also a regression detected which is described at https://forge.typo3.org/issues/87855 but it has already been fixed as well. The bug occurs if MYSQL strict mode is used

Protractor - How to locate element by custom (non HTML) tags?

Recently I was using protractor to automate the Application developed using HTML 5 , angular 2 , java-script. I was able to automate it without any issues. But recently developers have changed the controls to DevExtreme HTML JS. After that the tags are changed (For example dx-text box , dx-tool-tip which are non HTML). So I am not able to automate now using protractor. I have tried all the possible combinations but it is not working.
So can anyone please help me out, whether protractor supports DevExtreme controls or is there is any alternative for that?
Below is the HTML for the new code :-
HTML code
Previously I was locating it with the id = inputUserName it was working fine but now it is throwing error. I have tried all the possible ways to locate it but no luck.
Can anyone please let me know whether anyone has used protractor before to automate the application that is using DevExtreme HTML JS controls ?
Technically it is still HTML. Your issue is the id you were using is no longer attached to the input element. You can now use element(by.css('#inputUserName input.dx-texteditor-input')); The xpath solution in the comment might work but if the password field also has the same class you will have multiple elements including the id from the parent element gives you some security.

Creating a new page template in Typo3

I'm using Typo3 for the first time and have been asked to update a site built on it.
Making changes to existing templates so far has been OK since they were mainly CSS changes or replacing images. Now though I need to create a couple of new page templates.
What's the easiest way to go about this? The existing site has a home.html and layout.hmlt in the fileadmin directory. Do I need to create a new html file there, if so how do I use this as a new template for some of my pages?
I'm coming from a mainly WordPress background in terms of CMS (I've nearly given in a recoded the site as a WordPress site since I think it would be quicker at this stage) but I'd really prefer to figure this out.
Any suggestions would be greatly appreciated as I'm pulling my hair out trying to read through the documentation and getting nowhere. The site is using Typo3 version 4.4.6
Thanks!
How you add a new template to your page depends on how templating is handled. Sadly TYPO3 has a poor templating out of the box, so there is most likely an extension that does the job on your site.
Probably one of these:
automaketemplate
templa_voila
flux & fluidpages
Check if one of these extension is installed and add a new page template according to the extensions manual or specify your question afterwards.
Edit:
If plain TYPO3 was used, you'll find something like
page = PAGE
page.10 = TEMPLATE
page.10 {
file = fileadmin/myTemplate.html
}
in your Typoscript. You can add tmplate files like the ones that are already there. To use a different template on a page, you have to replace the page.10.file with the template you want to use. This can be done with a new template record (crated in backend via the template module). But this is a rather anoying procedure to change the template, because you have to create each time you want to change the page template for a page and its children. That is why mostly extensions are used for this.
The out of the box situation gets better with newer TYPO3 versions but in 4.4.6 there are no Backend Layouts that could be uses for a template switch ot something like that.
In Addition to change the mere file you have to adjust the subparts or marker that are filled with the content. You'll find that configured in your TypoScript as well

How to integrate TinyMce with Zend Framework with Gzipping and Image managers?

I have done some research on this subject, and found out, that Gzipping and adding a new image manager through a plugin would not be as difficult. The only question is the Image manager.
I have seen some quite good ones, like the Image Manager for JCE, which is a Joomla wysiwyg editor, but none for TinyMce for itself.
Could someone show me a good image plugin?
P.S. SwampyFoot is out of question, as it's download links are broken, and PhP Letters Ajax image manager is quite hard to install.
Thanks!
EDIT: I just found Mad File Manager, which seems to work excelently except for a little glitch: An image can be uploaded, but cant be selected... Thats sad...
EDIT2: I've found KCFinder, which seems to be very promising, but I just can't get it to work properly. Somehow, the configuration is quite difficult.
Ok, So I have been able to answer my question myself. So here it goes:
Set up TinyMce with Sozfo solution. The important ting to remember here is, instead of extending your Forms from Zend_Form, you have to extend them from Sozfo_Form. As to the defining your own extendable controller, it didnt work for me, So I put the path defining helpers in my Bootstrap. And if the whole ordeal works, there is a textarea that should have TinyMCE controls, but there aren't any, try checking the comments at Sozfo, or checking if the page is cached or not. It took me a good hour, to find out, that the only reason why no JavaScript was pushed to the header was because of a very persistent cache.
Set up KCFinder. The main problems I faced here were due to wrong paths to corresponding files. When the paths were correct, the only thing to remember is to enable it. There is a boolean to change in configuration file.
The last issue was adding the KCFinder to my Tinymce, and what I ended up doing was, I added the function needed to call KCFinder in TinyMCE.php View helper. ( Due to some glitch I seem to be unable to post the code here). Once you have set up your paths correctly, everything should work splendidly.
All in all, it took me about 3 days to figure this whole thing out. Talk about steep learning curve...
Have you looked at MCImageManager - its not free but its an option if you're happy to pay for it
Not really a suggest as you've got it but swampy foot download does work
As you're already using zend framework, why not use dojo, set up the dojo form and call the editor element and integrate this http://docs.dojocampus.org/dijit/_editor/plugins/LinkDialog into it?