Author Topic: Outputfilter Dashboard  (Read 952 times)

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Outputfilter Dashboard
« on: January 26, 2016, 01:18:57 AM »
Hi,

this was one of my larger projects during the last weeks/months:
I have modernized the outputfilter dashboard (OPF) module. The old one was heavily based on PMF ("practical module functions). I always had to install these two modules together, but no other module was based on that framework. So the main goal of this release was to get rid of pmf and use up to date infrastructure of current wb installations. The main changes were (see CHANGELOG):
        - removed dependencies from pmf
        - use phplib templates and usual language files instead of the solutions of PMF
        - removed cache functions which are disabled by default and for practical use anyway
        - switched from tokens to ftan support
        - update documentation (current patches and removed references to PMF from the documentation as well)

after this major re-engineering of the code it would be helpful if some of you could test this version. It does not require PMF anymore, and if you have used OPF in the past together with PMF, you should  be able to uninstall PMF after upgrading to this version.

Martin

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Outputfilter Dashboard
« Reply #1 on: January 26, 2016, 02:43:15 PM »
I should have mentioned that the Outputfilter Dashboard is a tool for managing filters, but if you want to have your filters take effect on the frontend, you have to patch the core files. A documentation what needs to be done is included with the module. However, if you just want to have a look you can safely install the module, play around and uninstall it again. There will be a message in the backend tool that reminds you to patch the core files as long as you have not done so, but that's just a warning that the output is currently not (or not correctly) filtered.

Offline jacobi22

  • Posts: 4959
  • Gender: Male
  • Support only via PM or EMail
    • Jacobi22
Re: Outputfilter Dashboard
« Reply #2 on: January 29, 2016, 10:29:39 PM »
see notice on the picture - message comes, when i try to open a plugin in the list of the admintool

Etwas ist nur unmöglich, wenn man glaubt, dass es das ist!

Offline jacobi22

  • Posts: 4959
  • Gender: Male
  • Support only via PM or EMail
    • Jacobi22
Re: Outputfilter Dashboard
« Reply #3 on: January 29, 2016, 11:20:10 PM »
many FTAN-Problems
you generate multiple FTAN's on one page (tool.php) once in the links and once one the page (tool.php), why not a IDKEY for and from every plugin-id, its very easy to handle and a unique token. it works together with the FTAN, so you can check the token for the tool.php and the IDKEY for your action

if i click on a link to edit on the overview (tool.php), it works the first time, but if i coming back to the overview after my edit, its not possible to use any function like change active-status or change the order (see last picture). so i've to reload the tool.php
Etwas ist nur unmöglich, wenn man glaubt, dass es das ist!

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Re: Outputfilter Dashboard
« Reply #4 on: January 30, 2016, 06:14:17 PM »
ok, thanks - I have to revise the FTAN part once more. The annoying thing is that I'm aware of several different FTAN implementations, which makes it really diffictult. But thanks for the hints - I'll  correct this part.

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Outputfilter Dashboard
« Reply #5 on: February 09, 2016, 09:53:25 PM »
Here is an update with lots of small updates and improvements. It also includes the example filters again (which were part of the 1.3 release).
I could reproduce the ftan problems and they are gone in my test environment now.
However, it is essential to activate javascript: it adds the submit action of the form containing the ftan to the links.
The documentation has been updated (content, as well as layout and advanced features like indexes etc.).
I have received a preview of the next service pack sp6 and it contains the necessary hooks so that no core patches will be needed anymore.
Thanks to all who have tested, given hints and provided their feedback and contributions!

Martin

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Outputfilter Dashboard
« Reply #6 on: February 18, 2016, 11:01:55 PM »
Here is an updated version of the outputfilter dashboard which now uses IDKEYs instead of FTANs in many places of the backend. This should avoid false alarms about security exceptions.

Offline jacobi22

  • Posts: 4959
  • Gender: Male
  • Support only via PM or EMail
    • Jacobi22
Re: Outputfilter Dashboard
« Reply #7 on: February 19, 2016, 01:08:33 PM »
error in description (ß) on the overview - not in the long description on the filter-edit page. use a single s instead of the ß in the german description (plugin_install.php from cachecontrol-filter)


Notice: Array to string conversion in F:\cms\wb_test_1611\include\phplib\template.inc on line 540
i'm not sure, but i think, it comes, if you read the original filters in output-filter-module

if i have the 7 original filters installed, it shows this Notice 7x, if i delete 4 filters and have only 3 left, it shows only 3 notices



P.S.: FTAN / IDKEY works now   (Y)
Etwas ist nur unmöglich, wenn man glaubt, dass es das ist!

Offline hgs

  • Betatester
  • **
  • Posts: 856
    • EFG MG
Re: Outputfilter Dashboard
« Reply #8 on: February 19, 2016, 01:10:21 PM »
Kann ich bestätigen
LG Harald

"Fange nie an, aufzuhören - höre nie auf, anzufangen." Marcus Tullius Cicero (106-43 v.Chr.)

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Re: Outputfilter Dashboard
« Reply #9 on: February 21, 2016, 12:39:00 AM »
Hallo,
ich hab die hier gemeldeten und ein paar andere Bugs behoben:

        - a couple of cosmetic bugfixes (correctly display Umlauts in filter list, replace German ss special char with ss in filter description, remove unused filter_id from template parsing, properly initialize TPL_EXTRA_FIELDS_BL OCK in edit_filter, fix for using global LANG inside method in WBCE)
        - security fix: check ftan for upload
        - several fixes for arrays as additional field (like in correct date example)
        - fix css edit for filters that provide css

Offline dbs

  • Betatester
  • **
  • Posts: 7411
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Outputfilter Dashboard
« Reply #10 on: February 21, 2016, 07:35:25 AM »
Hi,

PHP 5.5 (non strict), SP6

- the notices "array to string conversion" are still present
- some action-icons are missing. only delete and export are visible
- the field for Type is not changable
- upload filter works without problems

Maybe i have to modify first the 2 core-files?

Offline jacobi22

  • Posts: 4959
  • Gender: Male
  • Support only via PM or EMail
    • Jacobi22
Re: Outputfilter Dashboard
« Reply #11 on: February 21, 2016, 02:08:42 PM »
Quote from: dbs
Maybe i have to modify first the 2 core-files?
i use it without core changes

i upgrade the module and it works without problems for me, no missing icons etc, but i'll try a new install later
the notices, reported in my last post, are only show'n on the filter-add-dialog, not more on the filter-modify-dialog

Quote
the field for Type is not changable
it's a part of the filter setting - see allowedit in the module plugin_install.php
but i wondering, thats its not possible to set this in the filter-modify-dialog

@ Martin:
- in the database you use a number in the front of the type-field. Why?
- you use a absolute link for the files in the database. this makes trouble, if you move later from server A to Server B. it's better to use there only the file name or the path without the WB_URL and build the complete URL in the script

i use for a test a simple replace-filter from dietmar. its works, if i select one special page or all pages, but not, if i select only one or all modules. i didnt see any function for the module select, but maybe, i use it on the wrong way

i'm not sure about the field "Spracheinstellung:" in the filter "Correct Date Format"


Etwas ist nur unmöglich, wenn man glaubt, dass es das ist!

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Re: Outputfilter Dashboard
« Reply #12 on: February 21, 2016, 05:42:27 PM »
Hi,

thanks again for your feedback

Quote from: dbs
Maybe i have to modify first the 2 core-files?
i use it without core changes
that's correct. With the public SP6 you don't need the patch anymore. However, you have to activate OpF explicitly in the settings for Frontend Output Filter. If you were involved in the pre-alpha testing you might have to run a manual install of the classical outputfilter module (only do this if you don't see all options (Canonical, CssToHead, Droplets, Email, OpF, RelUrl, WbLink)

Quote
i upgrade the module and it works without problems for me, no missing icons etc, but i'll try a new install later
the notices, reported in my last post, are only show'n on the filter-add-dialog, not more on the filter-modify-dialog
the symptom looks the same, but it's a different bug, fixed in 1.4.8 now (see attachment)

Quote
Quote
the field for Type is not changable
it's a part of the filter setting - see allowedit in the module plugin_install.php
but i wondering, thats its not possible to set this in the filter-modify-dialog
It's currently only supported to set it in plugin- or module filters. The intention is that you develop filters as inline filters and when you are confident that it works, you create a plugin- or even a separate module out of it and then it makes sense to prevent other users from spoiling the filter - either in your own installation (if it's managed by several authors) or in other WB installations if you share the filter

Quote
@ Martin:
- in the database you use a number in the front of the type-field. Why?
modules is first applied, so it should be at the top of the list, then modules (last), then pages and finally pages (last).
Actually, the way this is implemented, has been like this in the previous versions (at least in the 1.03-series) and I didn't want to change much of the internal filter algorithms. The aim of the 1.4 series was mainly to disentangle the whole thing from PMF and use more core-features where possible. Of course one could start changing this now, but well... it's working and there were many more things to improve and to clean up, and there are still some new features on the agenda (see TODO file), which might be more urgent than this.

Quote
- you use a absolute link for the files in the database. this makes trouble, if you move later from server A to Server B. it's better to use there only the file name or the path without the WB_URL and build the complete URL in the script
Actually, Stefek has fixed this problem in 1.4.4 but we simply forgot to update the example plugins and the documentation. They are up to date now.
in order to take advantage of this feature, you have to delete the example filters (correct date format and cachecontrol) before upgrading
The examples are re-installed during upgrade. If you don't want to have them, just disable the filters or delete them again after the update.

Quote
i use for a test a simple replace-filter from dietmar. its works, if i select one special page or all pages, but not, if i select only one or all modules. i didnt see any function for the module select, but maybe, i use it on the wrong way
hmm... I don't quite understand "i didnt see any function for the module select" maybe we clarify this in German?
And maybe post the filter here and explain what you would expect.

Quote
i'm not sure about the field "Spracheinstellung:" in the filter "Correct Date Format"
see the filter-help: there you can set a different locale string in case the filter is not working correctly, but I must admit that I don't use that one actively, but I decided to keep it in the examples, because it shows how to use additional fields.

Martin

Offline dbs

  • Betatester
  • **
  • Posts: 7411
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Outputfilter Dashboard
« Reply #13 on: February 21, 2016, 06:26:10 PM »
Have your latest version new installed. No notices.
I understand the module maybe wrong at the moment.
The cache control filter should be the latest i think, but after upload a new filter, cache control is not the latest and i can't change the Type from Page to Page (latest). See image.
In Frontent Output Filter the Opf is checked.

img: http://prntscr.com/a66i8k

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Re: Outputfilter Dashboard
« Reply #14 on: February 21, 2016, 07:00:53 PM »
The cache control filter should be the latest i think, but after upload a new filter, cache control is not the latest and i can't change the Type from Page to Page (latest). See image. img: http://prntscr.com/a66i8k

all the filters in that screenshot are of a different type. You can't change the order across the borders between different types. The cachecontrol filter at some point in the past got the wrong type (or maybe always had?)
 
However, I have updated the type of that filter to be page(last). The updated filter is attached.
It will be included in the next releases of OpF, but you can update the filter by simply uploading the plugin.

Offline dbs

  • Betatester
  • **
  • Posts: 7411
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Outputfilter Dashboard
« Reply #15 on: February 21, 2016, 07:30:30 PM »
ok, now i can see up-down-arrows.  :-)

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Update: Outputfilter Dashboard
« Reply #16 on: March 23, 2016, 12:10:22 PM »
Now that SP6 is officially stable, I think it is a good time to come up with a new release of Outputfilter Dashboard (with SP6 no core files need to be patched anymore in order to use the filters).

The attached release contains the following changes:
- Already announced in this thread, I have changed the filter type of the Cachecontrol example filter to "Page(last)"
- I have realigned the code for better readability
- All features  work without javascript now - however there are no confirmation dialogs, of course
- The css edit feature for filters that supply css files was fixed
- added French and Italian language support - it might not be a perfect translation yet, and corrections by native speakers are welcome.

Offline Martin Hecht

  • Betatester
  • **
  • Posts: 532
  • Gender: Male
    • meine Homepage
Outputfilter Dashboard
« Reply #17 on: September 29, 2016, 10:12:59 PM »
I have an update for the outputfilter dashboard. Here the highlights of the changes:

- Drag&drop support for ordering the filters is available when Javascript is enabled (note that the filter type (module, module(last), page, page(last) has a larger influence on the position in the list - drag&drop ordering takes effect inside of each of these categories).
- By clicking on the icon which shows the type (inline- or plugin filter) you can convert between the two filter types. You can create an inline filter and easily, develop the filter function online, and when it is ready, you can simply convert it to the more performant plugin filter
- The php code in exported filters is much better human readable now.
- When installing the dashboard, it searches for pre-existing module-filters and includes them into the filter list.
- Install scripts of filters can now influence their target position in the list. Of course you can move them at will later on

for more details see the changelog which is included in the documentation.

Offline jacobi22

  • Posts: 4959
  • Gender: Male
  • Support only via PM or EMail
    • Jacobi22
Re: Outputfilter Dashboard
« Reply #18 on: September 30, 2016, 04:04:56 PM »
Etwas ist nur unmöglich, wenn man glaubt, dass es das ist!

 

postern-length