"Quality is the parent, the source of all subjects and objects." - Robert Pirsig

Fits Observation: Henry Gurr’s How Our Mind Works


Henry S Gurr’s Article, Book, & Mind-Map, Projects


SiteMaster Henry S Gurr’s Earth Friendly Projects:


SiteMaster Henry S Gurr’s Tech Corner & Projects:



ZMMQuality WebSite: Information Concerning
*** Zen and the Art of ***
Motorcycle Maintenance
** by Robert Pirsig **

Home Page: Fors ZMM Quality WebSite
News&NewsArchive: Re Robert Pirsig & Book
ZMM Book (Full Text) Free On Internet



SUMMARY=>How Find Way In This ZMMQ Site


SUMMARY=> Robert Pirsig Zen Art Motorcycle Maint.


Celebrate: Robert Pirsig’s July1968 Motorcycle Trek


SUMMARY=>Experts & Readers Provide Guidance


SUMMARY=>SpecialStudies Zen Art Motorcycle Maint


SUMMARY=>Memories: Dennis Gary English MSU


SUMMARY=>Research Montana State UniversityMSU


SUMMARY=>“Pirsig Pilgrims”&“Fellow ZMM Travelers”

AFTER Above Link ComeUp, GoTo ''Zen and..Last Hurrah”


SUMMARY=>Maps+Info: ZMM Travel & Mountain Climb


Resources: Pirsig & Zen Art of Motorcycle Maint.


SUMMARY=>Software&Hardware: Create This WebSite


Thanks To Persons Who Created & Supported ZMMQ


PLEASE NOTICE: THE FOLLOWING 4 HANDY LINKS:

ALSO PLEASE NOTICE THESE SAME 4 HANDY LINKS: BOTTOM EVERY ZMMQ PAGE


  

TO ACCESS PHOTO ALBUMS,
Click any photo below: **OR**
Mouse Hover, Over Photo, For Album Description

These 12 Photos were taken by Robert Pirsig’s very own camera, as he Chris, Sylvia and John made that 1968 epic voyage upon which The Travel Narrative for Mr Pirsig’s ‘‘Zen and the Art of Motorcycle Maintenance‘‘ (ZMM) book was based. Taken in 1968 along what is now known as ‘‘The ZMM Book Travel Route ‘‘ each photo scene is actually ‘‘Written-Into ‘‘ Mr. Pirsig’s book => ‘‘Zen and the Art of Motorcycle Maintenance‘‘ (ZMM)

Author Robert Pirsig’s Own 12 Color Photos, Of His 1968 ZMM Travel Route Trip: Each Is Written-Into His ZMM Book. AFTER the 5 Albums Cones Up, Read & ClickOn 2nd Down.

Each of the 832 photographs in these Four Albums show a scene described in the book ‘‘Zen and Art of Motorcycle Maintenance‘‘. Each photo was especially researched and photographed along the ZMM Route to show a specific ZMM Book Travel Description Passage: This passage is shown in quote marks below the respective photo. As you look at each of these photos, you will be viewing scenes similar to those that author Pirsig, Chris, and the Sutherlands might have seen, on that epic voyage, upon which the book ‘‘Zen and the Art of Motorcycle Maintenance‘‘ was based. Thus it is, that these 832 photographs are ‘‘A Color Photo Illustrated Zen and Art of Motorcycle Maintenance‘‘. Indeed ‘‘A Photo Show Book‘‘ for ZMM. Sights & Scenes Plus Full Explanation.

My ZMM Travel Route Research Findings, Are A Page-By-Page, Color Photo Illustrated ZMM. AFTER the 5 Albums Cones Up, Read & ClickOn Top Album.

Each of these 28 photos are Full Circle Panorama Photos Seven-Feet-Wide. They were taken along the Travel Route of the book ‘‘Zen and the Art of Motorcycle Maintenance‘‘. They show a 360 degree view, made by stitching together eight photos. These Panoramic Photos, complement and add to those of my Photo Album ABOVE named  => ‘‘A Color Photo Illustrated ZMM Book, With Travel Route Sights & Scenes Explained‘‘.

ZMM Travel Route Research PANORAMIC PHOTOS 7ft wide! Henry Gurr, 2002 ZMM Research Trip. AFTER the 5 Albums Cones Up, Read & ClickOn 2nd Down.

This album shows what I saw  on my RETURN trip home (San Francisco California to Aiken South Carolina), Summer 2002. These 55 photos were taken along the Route of the “1849er’s Gold Rush to California” (In Reverse Direction). After I completed my ZMM Research, I RETURNED home by way of the Route of the ‘49’s Gold Rush. This route included the route of the “California Gold Rush Trail” (in Nevada & California), as well as portions of the Oregon Trail' all the way into Missouri. These 1849er’s Travel Route Photos, were taken AFTER I took those Photos shown in the above Album named “A Color Photo Illustrated ZMM Book, With Travel Route Sights & Scenes Explained”.

Henry Gurr’s 2002 Research Photos: California Gold Rush Trail & Oregon Trail. AFTER the 5 Albums Cones Up, Read & ClickOn 3rd Down.

Each of these seven 360 degree  Full Circle Panoramic Photos were taken along the route of the Gold Rush ‘1849’ers from Missouri to California. Each is 7 foot wide! These Panorama Photos complement and add to those of my Photo Album above named  => "Henry Gurr’s Research Photos: California Gold Rush Trail & Pioneer Oregon Trail".   AFTER the 5 Albums Cones Up, Read & ClickOn Top Album.

California Gold RushTrail & Pioneer Oregon Trail PANORAMIC PHOTOS 7ft wide! Henry Gurr, 2002 ZMM RETURN Trip. AFTER the 5 Albums Cones Up, Read & ClickOn Top Album.

Enjoy 225 Photos of Flowers & Red Wing Blackbirds Along the ZMM Route. This Album of  Color Photos shows every Flower and Red Wing Blackbird (RWBB) that I could “get within my camera sights!!”  This was done in honor of the ZMM Narrator's emphasis of Flowers and Redwing Blackbirds in the book “Zen and the Art of Motorcycle Maintenance”. I was very surprised to find RWBB's the entire travel route from Minneapolis to San Francisco.

In Honor of ZMM Narrator’s Emphasis: 225 Color Photos of ZMM Travel Route Flowers & Red Wing Blackbirds. AFTER the 5 Albums Cones Up, Read & ClickOn 5th Down.

These 165 photos show ‘‘Tourist Experiences’‘ the ZMM Traveler may have along the ZMM Route.

My 2002 ZMM Travel Route Experience: By Henry Gurr ZMMQ Site Master. AFTER the 5 Albums Cones Up, Read & ClickOn 3rd Down.

Starting Monday 19 July 2004, Mark Richardson traveled the ZMM Route, on his trusty Jakie Blue motorcycle. Mark made these 59 interesting photographs of what he saw along the way. As he toured, he pondered his own life destiny (past present future), and sought to discover his own deeper personal meaning of the book “Zen and the Art of Motorcycle Maintenance”.

Mark Richardson’s 19 July 2004, ZMM Route Trip & Photo Journal. AFTER the 5 Albums Cones Up, Read & ClickOn 5th Down.

The former home (~1968) of John and Sylvia Sutherland, at 2649 South Colfax Ave, Minneapolis MN, shown in 18 photos. Despite John's quite negative disparaging statements in ZMM, about their home back in Minneapolis, this same house, shown in these photos, looks to us like a wonderful, beautiful home along a very nice, quiet, shady street, in a perfectly fine Minneapolis Neighborhood!

John & Sylvia Sutherland of “The ZMM Book”: 18Potos Of Former Minneapolis Home>2649 South Colfax Ave, AFTER the 5 Albums Cones Up, Read & ClickOn 4th Down.

A 36 Photo Tour of Two University of South Carolina Buildings:  a) Etherredge Performing Arts Center Lobby + b) Ruth Patrick Science Education Center, some of which show “Built In Educational Displays

Site Master Henry Gurr's Campus: Photos Of Two Buildings (of 32 total), University of South Carolina Aiken. AFTER the 5 Albums Cones Up, Read & ClickOn 2nd Down.

A 105 Photo Tour of Science Building
At The University of South Carolina Aiken, Aiken SC.
Also showing a) Flowers & Exotic Plants In The Greenhouse
And b) The Rarely Seen Equipment Service Room & Dungeon.
Site Master Henry Gurr's Campus: Photos Of Science Building, One (of 32 total Buildings) At The University of South Carolina Aiken. AFTER the 5 Albums Comes Up, Read & ClickOn 5th Down.

IThese 15 photos show persons & scenes, related to how we got this ZMMQ WebSite going, back in ~2002. Included are "screen captures" of our software systems in use. A few of these photos show the screen views of what we were “looking at,” some including brief notes & hints on how to get around some of the problems we experienced.

Software We Used ~2002, In Creating and Maintaining This ZMMQ WebSite: Illustrated & Explained. AFTER the 5 Albums Cones Up, Read & ClickOn Top Albun.

Attach:ZmmqWikiThumbForWikiMenuLinkToMscFacPixPg2.jpg Δ
1947-60: Photos of MSC Faculty & Sarah Vinke (Vinki Vinche Finche Finch)


In Hawaiian WIKI MEANS => Quick N’ Easy N’ Better! For Anything You Do!!
Wikis began 1994, Ward Cunningham gave name "WikiWikiWeb"..Cont Heret
UP-TO-DATE INFORMATION & HOW TO USE pmWiki
The Pages You Are NOW Reading, Are Powered By pmWiki WebSite SftWare:


ZMMQ Site => Various UN-Complete Work In Process



Revised}DaveMatos130715+HenryGurr140227;16036;170214;180920;181127,200217,200312, 200318, 200831, 210626, 220508,220926,240209-12 , 240319-21, 240530, 240915, 241220.--]
File = WikiZmmq)MenuSidebar.CuzWantPreservPrev240914CpyFnServerServAgain01+FxNgLinks3.docx
PrevFile = WikiZmmq)MenuSidebar.CuzWantPreservPrev240914CpyFnServerServAgain01+FxNgLinks2.docx
PrevFile = WikiZmmq)MenuSidebar..BecuzPrevSvAsNg 240319CpyFnServer07)CpyFmServAgain01.docx
PrevFile = WikiZmmq)MenuSidebar..BecuzPrevSvAsNg 2403`9CpyFnServer07.docx
PrevFile = WikiZmmq)MenuSidebar..200217..210626..220508EdtSvd+Fx&AddLine13+Rev1.docx
File = WikiZmmq)MenuSidebar..200217..210626..220508EdtSvd+Fx&AddLine12.docx
PrevFile = WikiZmmq)MenuSidebar..200217..210626..220508EdtSvd,doc.Hsg02.docx
PrevFile = WikiZmmq)MenuSidebar..FaFaFa200217.06Fa200830Fa210626.Hsg01.doc




authors, admins (advanced)

Using the (:if:) Directive

The (:if:) directive allows portions of a page to be included or
excluded from rendering. The generic forms of the (:if:) directive are

(:if cond param:) body (:ifend:)
(:if cond param:) body (:else:) body (:ifend:)
(:if cond param:) body (:elseif cond param:) body (:ifend:)
(:if cond param:) body (:elseif cond param:) body (:else:) body (:ifend:)

where "cond" names a condition to be tested, and "param" is a parameter or other argument to the condition.

Note that (:if:) without parameters and (:ifend:) are identical. Also note that (:if cond:) automatically closes a previous conditional. For nested multiple levels, see Nested conditionals.

Built-in Conditions

The built-in conditions include:

(:if name PAGENAME:)  -  current page is named "PAGENAME" or "GROUPNAME.PAGENAME"
(:if group GROUPNAME:)  -  current group is named "GROUPNAME"
(:if auth LEVEL PAGENAME:)  -  viewer is authorized - meaning "what they are allowed to do" - matches a "LEVEL" where LEVEL can be: read, edit, upload, attr or admin; PAGENAME is optional.

This is mostly used to hide and show portions of the interface only useful to editors or admins.

Security warning: Neither this nor any other condition is meant to hide secrets. Conditions may easily be circumvented in many cases, as described in Passwords.
See also: Security, PITS:01417.

(:if authid:)  -  current viewer is authenticated - meaning they have proven who they are via login - to use this the wiki must include recipe AuthUser or others which set the $AuthId variable.
(:if enabled InvalidLogin:)  -  username and password not authenticated. To use this the wiki must include recipe Cookbook:AuthUser.
(:if true:)  -  always include text, case sensitive
(:if false:)  -  always exclude text (same as a comment, but Page Text Variables ARE set), case sensitive
(:if attachments FILENAMES PAGENAME:)  -  PAGENAME has one or more attachments among the specified. A pagename can be omitted, in that case the current page is implied.

FILENAMES specify an attachment like "pic1.jpg" or attachment patterns separated by commas, like "pic*.jpg,*.png" where asterisk (*) means "anything"; if omitted, any attachment (i.e. "*") is implied.
If used in a sidebar, header, or footer, and the PAGENAME is not specified, the condition applies to the main page.
e.g. (:if attachments "*.png,*.gif" Groupname.PageName:)

In the following "if date" examples:
  • DATE may be year-month. year-month-day is optional.
  • VALUE can be a recognizable date via strtotime()
  • DATE (or DATE1 and DATE2 below) have a more fixed format which explicitly must exclude spaces. Any spaces in DATE1 or DATE2 cause unpredictable results
  • "now" or "today" is assumed if VALUE is omitted
  • dates are in standard format yyyy-mm-dd or yyyymmdd or yyyymmddThhmm (note the "T" between the date and the hour, and also see comment above on format of VALUE)
  • the ".." cannot have leading (when used with DATE1) or trailing spaces (when used with DATE2)
(:if date DATE VALUE:)  -  Evaluates to true if VALUE is within DATE
(:if date DATE1.. VALUE:)  -  true if VALUE (or current date if omitted) is DATE1 or later (unlimited)
(:if date ..DATE2 VALUE:)  -  true if VALUE (or current date if omitted) is DATE2 or earlier (unlimited)
(:if date DATE1..DATE2 VALUE:)  -  true if VALUE (or current date if omitted) is in range DATE1 to DATE2 (inclusive)
(:if enabled VAR:)  -  true if PHP VAR is true
(:if enabled AuthPw:)  -  true if user has entered any password during the current browser session.

- This does not mean the user has entered the correct password, just that they entered one.

(:if equal STRING1 STRING2:)  -  true if STRING1 equals STRING2, use quotes if the string or string variable contains spaces, eg "MY STRING"
(:if match REG_EXPRESSION:)  -  true if current page name matches the regular expression
(:if exists PAGENAME:)  -  true if the page "pagename" or "groupname.pagename" exists
(:if ontrail WikiTrailPage ThisPage:)  -  true if ThisPage is in a list used as a trail on "WikiTrailPage"

The name and group conditionals will work even for an included page, as the "name" and "group" conditionals always check the currently displayed page, as opposed to the page that the markup appears in.

Note: Although there is no built-in conditional markup to test ?action=, you can use (:if equal {$Action} ACTION:)
to test what the current action being requested is.

Concatenated conditions

In some cases where built in conditions have a parameter the parameters may be concatenated using a comma, viz:

  • (:if name Name1,Name2,-Name3:)
  • (:if group -Group1,Group2,Group3:)

Negated Conditions

Negated forms of conditions also work:

(:if !attachments:)  -  this page has no attachments
 
(:if ! name PAGENAME:)  -  current page is NOT named "PAGENAME"
(:if name -PAGENAME :)
(:if group -GROUPNAME1,-GROUPNAME2 :)  -  group is not named "GROUPNAME1" or "GROUPNAME2"

Nesting Conditions

Note that (:if cond:) automatically closes a previous conditional. Thus, the following two examples have identical meaning:

  • (:if cond1:) cond1 is true (:if cond2:) cond2 is true (:ifend:)
  • (:if cond1:) cond1 is true (:ifend:)(:if cond2:) cond2 is true (:ifend:)

Conditions can be nested from 2.2.beta 66. To have nested conditionals you need to number the if, and the matching else/ifend:

(:if cond1:)
  cond1 is true
  (:if2 cond2:)
     cond1 and cond2 are true
  (:elseif2 cond3:)
     cond1 and cond3 are true, cond2 is not
  (:else2:)
     cond1 is true, cond2 and cond3 are not
  (:if2end:)
(:else:)
  cond1 is false, cond2 testing was ignored
(:ifend:)

Spaces were added for better readability.

Using wildcard placeholders

The character * can be used as a wildcard to represent any character, zero, one, or multiple times.
The character ? can be used as a wildcard to represent any character exactly once.
Wildcard characters (* and ?) can be used with the name and group conditional markups, thus:

(:if name PmCal.2005* :)  -  current page is in group PmCal and begins with 2005
(:if group PmWiki* :)  -  current page is in group PmWiki or a group beginning with PmWiki
(:if name Profiles.*,-Profiles.Profiles :)  -  current page is in group Profiles but not Profiles.Profiles

Using page text variables, page variables and markup expressions

Page text variables (PTVs), page variables (PVs) and markup expressions can be used in conditional markup. They will be assigned/evaluated before the condition(s).

Combining conditions

Conditions (as previously defined) may be combined into more complex conditional expressions using one of these three equivalent forms:

(:if expr EXPRESSION :)
(:if [ EXPRESSION ] :)
(:if ( EXPRESSION ) :)

Conditions are combined into expressions with boolean operators and brackets. In the next table, A and B are either regular conditions or (round-)bracketed sub-expressions of regular conditions:

ExpressionOperatorResult
A and BAndTRUE if both A and B are TRUE.
A or BOrTRUE if either A or B is TRUE.
A xor BXorTRUE if either A or B is TRUE, but not both.
! ANotTRUE if A is not TRUE.
A && BAndTRUE if both A and B are TRUE.
A || BOrTRUE if either A or B is TRUE.

Example

(:if [ name SomePage and group SomeGroup ]:)    equivalent to (:if name SomeGroup.SomePage:)

Important Notes:

  • Spaces are required around operators and brackets.
  • No specific feedback is given for syntax errors or unbalanced brackets.
  • Use round brackets (not square) for nested expressions.

Thus, the following is a valid way of building an expression that shows the following contents only when the user is either the administrator, or is logged in and the time is later than the given date:

(:if [ auth admin || ( authid && date 2006-06-01.. ) ] :)

Nesting with square brackets will silently fail to work as expected:

(:if [ auth admin || [ authid && date 2006-06-01 ] ] :)    NOTE: Doesn't Work!

A common use of these complex tests are for expressions like:

(:if expr auth admin || auth attr || auth edit :)
[[Logout -> {$Name}?action=logout]]
(:ifend:)

which provides a logout link only when the browser has admin, attr, or edit permissions.

admins (advanced)

Creating new conditions

See Cookbook:ConditionalMarkupSamples.

See also special references for the use of {*$Variables}.



This page may have a more recent version on pmwiki.org: PmWiki:ConditionalMarkup, and a talk page: PmWiki:ConditionalMarkup-Talk.

Recent Changes (All) | Edit Sidebar | Wiki Help | Page History | Edit Page Powered by PmWiki