Textpattern CMS support forum
You are not logged in. Register | Login | Help
- Topics: Active | Unanswered
#1 2011-12-12 22:56:15
- gomedia
- Plugin Author
- Registered: 2008-06-01
- Posts: 1,373
adi_globals - Global variables
Summary
adi_globals is a way of getting hold of those handy, but fiddly, backroom global variables. Something to make the txpath
of your life a little smoother.
See the help supplied with the plugin, or have a look online. You can download the latest version from here.
Usage
Just specify the variable you’re interested in & adi_globals will find it & return it’s value.
For example:
<txp:adi_globals name="page" />
will return the current Page template name from $pretext
.
adi_globals automatically searches through $prefs
, $pretext
, $thisarticle
, $thispage
, thissection
, thisimage
, $thiscomment
, thiscategory
, $thislink
& $thisfile
.
And, just for good measure, a TXP variable of the same name will be set as well.
Requirements
Simple enough to work in most versions of Textpattern.
Version history
- 0.3
- TXP 4.6 tag registration
- 0.2
- added thisimage, thissection, thiscategory (thanks bloke)
- removed txpcfg (thanks joebaich)
- disabled debug option if PHP is disallowed in articles
- 0.1
- initial release
Feedback
Comments are most welcome.
Spread the love
If you find this plugin useful and would like a warm and fuzzy feeling to go with it, please consider donating to the Textpattern development team.
Last edited by gomedia (2015-06-15 04:07:33)
Offline
Re: adi_globals - Global variables
Another little adi corker, thanks!
Any reason why $thisimage
is omitted? I’ve probably just not thought it through properly in my haste to try it out.
The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.
Txp Builders – finely-crafted code, design and Txp
Offline
#3 2011-12-12 23:16:44
- uli
- Moderator
- From: Cologne
- Registered: 2006-08-15
- Posts: 4,310
Re: adi_globals - Global variables
That’s a pretty cool oracle for a PHP whimp like me. If I only knew what I could ask …? Are there variable lists out there?
In bad weather I never leave home without wet_plugout, smd_where_used and adi_form_links
Offline
#4 2011-12-12 23:18:21
- gomedia
- Plugin Author
- Registered: 2008-06-01
- Posts: 1,373
Re: adi_globals - Global variables
Bloke wrote:
Another little adi corker, thanks!
My pleasure.
Any reason why
$thisimage
is omitted? I’ve probably just not thought it through properly in my haste to try it out.
None at all … I got the list from Kevin Potts’ book, which covered my immediate requirements, but it’s probably getting a little out of date now. I’ve just found Jeff’s list which has $thiscomment
, $thiscategory
& $thissection
as well.
Could there be any others?
Offline
Re: adi_globals - Global variables
Adi,
Should I be uneasy about $pass, $db and $user being made so readily available to any of my users? All they have to do is add <txp:adi_globals name="pass" />|<txp:adi_globals name="pass" />|<txp:adi_globals name="pass" />
to an article in via the TXP admin interface and they have access to the database.
Offline
#6 2011-12-12 23:35:12
- gomedia
- Plugin Author
- Registered: 2008-06-01
- Posts: 1,373
Re: adi_globals - Global variables
joebaich wrote:
Should I be uneasy about $pass, $db and $user being made so readily available to any of my users? All they have to do is add
<txp:adi_globals name="pass" />|<txp:adi_globals name="pass" />|<txp:adi_globals name="pass" />
to an article in via the TXP admin interface and they have access to the database.
That’s probably a fair concern, although it’s possible at the moment using <txp:php>
(if php is allowed in articles).
OK, some options:
- disallow access to $txpcfg in article context
- disallow access to db/user/pass in $txpcfg
- disallow access to $txpcfg completely
Offline
Re: adi_globals - Global variables
Adi,
I meant <txp:adi_globals name="db" />|<txp:adi_globals name="user" />|<txp:adi_globals name="pass" />
but you got the message as usual anyway. I guess that disallowing access to $txpcfg in an article context would be in line with the ability to disallow php in articles via site preferences.
Offline
Re: adi_globals - Global variables
gomedia wrote:
Could there be any others?
Not that I’m aware of: that pretty much nails the list.
disallow access to $txpcfg completely
Gets my vote: can’t think of any application where these values would be useful to any casual content architect / designer without PHP access. But at very least disallow in article context (unless you can find a legitimate use for the great unwashed to get their mitts on $txpcfg vars).
The possible exception is txpath
I suppose, even though that does give away the server folder structure which may or may not please shared host owners (yeah yeah, some error conditions like include_once()
also leak this if files are missing which makes it not the world’s best kept secret).
Last edited by Bloke (2011-12-12 23:50:10)
The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.
Txp Builders – finely-crafted code, design and Txp
Offline
#9 2011-12-12 23:56:25
- uli
- Moderator
- From: Cologne
- Registered: 2006-08-15
- Posts: 4,310
Re: adi_globals - Global variables
Guys, I’m not a security expert, so I need to ask you: Should we publicly post about potential vulnerabilities?
And: are there lists of variables available like as cheat sheets?
Last edited by uli (2011-12-12 23:57:52)
In bad weather I never leave home without wet_plugout, smd_where_used and adi_form_links
Offline
#10 2011-12-13 00:37:51
- gomedia
- Plugin Author
- Registered: 2008-06-01
- Posts: 1,373
Re: adi_globals - Global variables
And quickly out of the stalls – version 0.2:
- added $thisimage, $thissection, $thiscategory (thanks bloke)
- removed $txpcfg (thanks joebaich)
- disabled debug option if PHP is disallowed in articles (an attempt to prevent accidental indecent exposure)
Offline
Re: adi_globals - Global variables
Cool :) Great plugin – thanks Adi
Offline
Offline