How to load custom "tools" index.php/tools/required/mytool.php

Permalink
How to load custom "tools"?
Not blocks, packages, single pages etc.
Tools. Like how on the dashboard the statistics flash thing is shown. I want to add my custom flashy thing and the only way I get it to work in placing it directly in the tools directory in the "core" concrete directory.

How to request it like this: index.php/tools/required/mytool
(or a similar url)
and have it place in this
concreteroot/tools/mytool.php
and not in
concreteroot/concrete/tools/mytool.php

I'm sure someone knows and if I get this too work I will be one step closer to making a sharable BASIC statistics thingy.

Maynar
 
Maynar replied on at Permalink Reply
Maynar
Bumpy bump!
I really like to know how, as the documentation doesn't help me.
TravisN replied on at Permalink Reply
TravisN
I believe your after the definition DIR_FILES_TOOLS, it'll return
concreteroot/tools

you then add /mytool.php

If your talking about website statistics. I have already developed a package that uses BBClone. It's just waiting for the core team to approve it for the marketplace. It'll be a free package.
Maynar replied on at Permalink Reply
Maynar
No solution. I get a unix path which it, then returns nothing that works.

What I mean is this:
For build in tools C5 uses this constant: REL_DIR_FILES_TOOLS_REQUIRED = /concrete/index.php/tools/required/basicstats/chart_handler.php

So I thought... well mabye I need this one:
REL_DIR_FILES_TOOLS = /concrete/index.php/tools/basicstats/chart_handler.php

But.. nooo....

so.. it's not the required/ thing, but what then? Why is it not loading that tool from the root/tools/basicstats/ directory?
Tony replied on at Permalink Reply
Tony
You're on the right track, but you just don't need the .php at the end of the path.

So if I create a file in c5root/tools/ called test.php, and I can access it via the path:

$url=REL_DIR_FILES_TOOLS.'/test/';
Tony replied on at Permalink Reply
Tony
looks like the .php doesn't really matter. it should work with or without it.
Maynar replied on at Permalink Reply
Maynar
I tried it with the php and without, but no luck. Even direct access to the tool doesn't work, look:http://www.ingrammicro.nl/concrete/index.php/tools/basicstats/chart...

You should get access denied, but nothing.. just nothing.

I'm using this code:
<?php
echo "flashvars = {
   'data':  '".BASE_URL.REL_DIR_FILES_TOOLS_REQUIRED."/basicstats/chart_handler'
}";
?>

And when placing it in the tools dir in the concrete dir, I use this one:
<?php
echo "flashvars = {
   'data':  '".BASE_URL.REL_DIR_FILES_TOOLS."/basicstats/chart_handler'
}";
?>

And that works, but why not the other one?
Tony replied on at Permalink Reply
Tony
andrew just showed me this approach:

$uh = Loader::helper('concrete/urls');
$bt = BlockType::getByHandle('document_library');
$url = $uh->getBlockTypeToolsURL($bt, 'advanced_search.php');

This website stores cookies on your computer. These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media. To find out more about the cookies we use, see our Privacy Policy.