! History
{maketoc}
I originally named this Plugin ))HideText(( - and then my sense of humor got a hold of both of us - and we took a trip to never-never land. What kind of people hide things in plain sight? Well - __Spy's Do__. And the idea gave itself a new name __))SpyText((__ while I fell off my chair laughing about it. If you don't see anything humorious in all of this - take a l look at the code - there's a Spy on nearly every line.

! Summary - So What does it Do?
All that ))SpyText(( does is Hide stuff. It will Hide text (or anything else) so that only specific people (Spy(s)) or Groups (Agency(s)) can see them. It works the old fashioned way - by encasing the data between a pair of Code Blocks - Like This:
{SpyText}Data{SpyText}
The data can extend as far as you like - and will be displayed in a div box

! Parameters - How Do I Call It?
{ ))SPYTEXT(( spy= agency= sender= to= hidden= title= width= icon= alert= }
* __spy__ A list of UserName's who will be able to see your hidden message
* __agency__ A list of GroupsName's that will be able to see your hidden message
* __sender__ A list of UserName's who claim responsibility for sending the message?
* __to__ An Extra Box showing the spy/agency/sender
* __hidden__ When Set / The Message is in a DropDown Box with only an Icon or Title Bar showing.
* __title__ A replacement for the Default Title
* __width__ Provides a little control over the appearance of the Title Bar
* __icon__ Used as a replacement to the Title Bar
* __alert__ Wake that dummy up with an Alert Box

!! __A Important Visibility Note:__
By Default - everything encapsulated with in the ))SpyText(( Code Blocks is __Not Displayed__. i.e. __Nobody__ will see the contents unless __you say they can__. Nobody that is - except the Administrator - who can always see it. I made that little mistake while writing this page. It looked great - it was really was too bad that nobody could see any of my examples.

! __Examples:__
!! ))SpyText(( Without Data - Nothing is Displayed
__-->__{ ))SPYTEXT(( }{SPYTEXT}__<--__
__-->__{SPYTEXT }{SPYTEXT}__<--__ This shows the result of Calling the Plugin without Data - a single space
__NOTE__ This applies if:
The current user is not on the list of users(spy) - AND - The current user is not in the list of the groups(agency)
See the Note on Visibility (above).

All of the Examples on this page have __agency='Registered'__ specified so that they are visible to everyone
Which brings up something kind of Cute
Anonymous user will not be able to see any of the Examples on this page
Try Looking at this page without being logged in - None of the ))SpyText(( messages are visible

Of Course - that wouldn't be worth spit if it couldn't be reversed - The next example show how to do that.

!! ))SpyText(( With / spy='Guest' - ONLY an Anonymous Users can see it
{SPYTEXT spy='Guest' }Data{SPYTEXT}
__Hint__ - Don't try adding "Anonymous" to the list of groups(agency)
Doing that __will__ allow Anonymous Users to view the message
But because of the way Groups function - __EVERY__ User will be able to see it

! Let's Play a Buildup Game - Each Call Adds to the Original

!! ))SpyText(( Visible to All Registered Users
{ ))SPYTEXT(( agency='Registered' }Data{SPYTEXT}
{SPYTEXT agency='Registered' }Data{SPYTEXT}

!!- ))SpyText(( Add the Expandable Address Box
{ ))SPYTEXT(( agency='Registered' to='TRUE' }Data{SPYTEXT}
{SPYTEXT agency='Registered' to='TRUE' }Data{SPYTEXT}
__Note__ Adds the Expandable Address Box

!!- ))SpyText(( Displaying Only Valid Users
{ ))SPYTEXT(( spy='Spider|Xing|Confusus' agency='Registered' to='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider|Xing|Confusus' agency='Registered' to='TRUE' }Data{SPYTEXT}
__Note__ Confusus is not a user so he will not be displayed in the Address Box

!!- ))SpyText(( Displaying Only Valid Groups
{ ))SPYTEXT(( spy='Spider|Xing|Confusus' agency='Aardvarks|Registered' to='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider|Xing|Confusus' agency='Aardvarks|Registered' to='TRUE' }Data{SPYTEXT}
__Note__ Aardvarks is not a valid Group so it will not be displayed in the Address Box

!!- ))SpyText(( Displaying Only Valid Senders (Users)
{ ))SPYTEXT(( spy='Spider|Xing|Confusus' agency='Aardvarks|Registered' sender='StarRider|Wolffy|Aquarious' to='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider|Xing|Confusus' agency='Aardvarks|Registered' sender='StarRider|Wolffy|Aquarious' to='TRUE' }Data{SPYTEXT}
__Note__ Aquarious is not a user so he should not be displayed

! Starting Over
!!- ))SpyText(( Testing __to__ - Replacing a Single Header
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' to='*|*|The Sexiest Spy Ever:' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' to='*|*|The Sexiest Spy Ever:' }Data{SPYTEXT}

!!- ))SpyText(( Testing __to__ - Not Assigning Enough Headers
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' to='To:' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' to='To:' }Data{SPYTEXT}

!!- ))SpyText(( Testing __to__ - Assigning all new Headers
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' to='To:|To Groups:|From:' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' to='To:|To Groups:|From:' }Data{SPYTEXT}

! OK - Lets Get Hidden
A ))SpyText(( Message will be hidden if the __hidden__ parameter is set __TRUE__
The link to Expand/Contract the Message is the Title or Icon displayed.

!! __A Important Note on Hidden Messages__
The ))SpyText(( Plugin uses an Alert Box to notify the Administrator that a page has Hidden Text on it. This may be a mistake - but for now that is how it is. That means that each time an Admin looks at this page - he/she will have 7 Alert Boxes to respond to.
The reason I'm saying this is - Like everything else - Hidden ))SpyText(( Messages can be abusive if overused. If you __really__ want to play games with your Admin - just dump a hundred Hidden ))SpyText(( Messages on every page you can edit. See how long it takes before you can never login again.
!!! Starting Over - Again

!!- ))SpyText(( Hidden Only
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' }Data{SPYTEXT}
__Note__ This Should display only the Title Bar - Expand to see the Data

!!- ))SpyText(( Changing the Title & the Width of the Title
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' title='Aardvarks Need Love Too' width='25' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' title='Aardvarks Need Love Too' width='25' }Data{SPYTEXT}

!!- ))SpyText(( Add the Expandable Address Box
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' to='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' to='TRUE' }Data{SPYTEXT}

! OK - Lets Do Icons
!!! Starting Over - Part 3
!!- ))SpyText(( Default Icon
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='TRUE' }Data{SPYTEXT}

__Note:__ When used with an Icon - ))SpyText(( can be placed in a line or paragraph like this {SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='TRUE' }Data{SPYTEXT} and it dosen't look all that bad. Looks pretty good expanded too.

!!- ))SpyText(( Add the Expandable Address Box
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='TRUE' to='TRUE' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='TRUE' to='TRUE' }Data{SPYTEXT}

!!- ))SpyText(( Give the Icon a URL
{ ))SPYTEXT(( spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='http://www.bitweaver.org/liberty/icons/imagick_logo.jpg' }Data{SPYTEXT}
{SPYTEXT spy='Spider' agency='Registered' sender='StarRider' hidden='TRUE' icon='http://www.bitweaver.org/liberty/icons/imagick_logo.jpg' }Data{SPYTEXT}
Page History
Date/CommentUserIPVersion
11 Mar 2006 (16:53 UTC)
Lee LaMont Bell Jr.24.117.169.2415
Current • Source
Tarus Balog66.45.100.2233
View • Compare • Difference • Source
Lee LaMont Bell Jr.68.95.139.2162
View • Compare • Difference • Source
Lee LaMont Bell Jr.68.95.137.1231
View • Compare • Difference • Source