Switch guidebook

From BlogNomic Wiki
Jump to navigation Jump to search

Helpful info for players as we make The Switch.


Making Proposals

Instead of putting "Proposal: " in front of our titles, we now just put them in the Proposal category. This will automatically prepend "Proposal: ". This is also how we'll keep track of Pending Proposals in the sidebar, and whatever else we come up with.

Administrating Proposals

No more copying and pasting code. To indicate whether a Proposal has passed or failed, admins just set its Status on the Edit screen. The usual text that accompanies adminned posts just goes in the Admin field.

The statuses and the Admin field can also be used for pseudo-Proposal mechanics like this Dynasty's Tentative Powers. Those should NOT, however, be put in the Proposal category.

Voting icons

The voting icons are incorporated as smileys identical to the ones at Backblog.

The image files for smileys go in /images/vote.

To add the smileys to the ExpressionEngine interface, edit the /includes/nomicsmileys.php file.

Calls for Judgment

To issue an Call for Judgment (or make any other permitted anonymous post), you don't need to log out and back in. On the Publish page, there is an "Author" drop-down menu. Choose Call for Judgment from this list, and your post will be under that author's name. It will not be traceable back to you, even by someone with direct access to the database.

Also, remember to put your CfJ in the proper category.


BlogNomic Administrators can do pretty much the same stuff they could on Blog*Spot. They can change the templates, edit any entry, make other members admins, etc.

On the ADMIN tab of the control panel, there are a lot of options, most of which are inaccessible. I apologize for this cruft; EE currently doesn't limit what you can see based on what permissions you have.

Making other players Administrators

The only options on the ADMIN tab that BlogNomic admins can access are under Members and Groups. Open that section, and click "View Members" or "Member Search." Once you've found the profile you want, open the "Member Administration" section and click "Member Preferences." On that page you can promote users to (or demote users from) administrator-ness.

Updating the player list

The "playerlist" template contains the lists of active and idle players.

As people sign up on the new space, change their links to point to their ExpressionEngine profile pages. That'll keep all their info in one place where they can change it at will.

To easily find a person's profile URL, hover over their name in a comment they've posted. Alternately, go to "My Account," click "Member List" at the top, and hover over their name.

Creating blognomic.com e-mail addresses

You need a web ID for this. Contact 75th Trombone for information.

FTP and SSH access

You need the shell account for this. Contact 75th Trombone for information.

Don't push the big red button

Some things BlogNomic Admins can do, but shouldn't do:

  • Change any other profile field of other members
  • Add any other members to the Multi-Author Drop Down list


EE's templates are more powerful than Blogger's, but my convoluted clutter is a bit difficult to make out. Hopefully I can clarify a bit so some intrepid soul can clean up my mess.

Basics and Terminology

EE uses template tags like every other blogging CMS out there. They look like {this}. Just words in between braces. I'll use the terminology from the EE user guide, even though I think it sucks. What follows is an explanation of the sucky terminology, so you can understand its suckiness before you fall prey to it.


When the EE docs talk about "tags," they're talking about the containers that loop through entries, or comments, or whatever. When you loop through entries, for example, you use {exp:weblog:entries} {/exp:weblog:entries}. The tags you use for chunks of data are called


Variables are things like {title} or {author} or {nomicbody} or {entry_date} that actually display data about the entries. Other CMSs call these tags too, but EE doesn't.

"Conditional Variables"

Further bastardizing common sense, they call these variables, when really they're just logic. Stuff like {if author == "75th Trombone"} {/if}.

Server-side includes (more or less)

EE templates have a built in include mechanism, so you can create a bunch of templates with little modular code chunks. If you create a "widget" template, you can embed it in any other template by using {embed="blognomic/widget"}.

As you can tell by all the templates that exist right now, I'm doing this quite a bit, although a lot of the templates are defaults I haven't deleted yet.

Be aware that when you embed a template, it executes as a separate PHP document. So if you're in the middle of looping through weblog entries, an embedded template with {author} or {nomicbody} variables won't really work. (Unless something's changed.) This is a blessing in disguise, however, because it really helps when you use...

PHP in templates

You can use arbitrary PHP in templates. You have to enable this per template; under the TEMPLATES tab in the control panel, click "Preferences." There are two columns pertaining to PHP: The first, "Allow PHP?", is self-explanatory.

The second, "PHP Parsing Stage," controls whether PHP is evaluated before or after EE tags.

PHP is evaluated, then EE tags.
EE tags are evaluated, then PHP.

Needless to say, this setting needs to be correct for your logic to work. ;)

The beauty is, an INPUT template can be {embed}ded in an OUTPUT template, and vice versa. And it will work correctly. So this is gives more flexibility than it takes away.

The current template cesspool

Right now there are only two templates that are full fledged pages: index and archive. Index, of course, is what people see at blognomic.com. Archive is used for all archive views: Permalinks, date archives, etc. The rest of the templates are either not in use or are embedded elsewhere.

Note that template names will usually be prefixed with blognomic/. "blognomic" is the Template Group all these templates are in. Whenever an EE tag takes a template name as input, it must be in the form blognomic/templatename.

Displays when someone accesses a nonexistent page. Right now this is the same as Index; this should be changed.
Explained above
The Javascript encryption widget. Embedded in blognomic/sidebar.
Atom feed.
RSS feed
RSS feed
The iframe of GNDT data. Embedded in blognomic/sidebar.
The entire <head> element of the HTML doc. This will probably need some logic at some point to change things depending on whether it's the index page or an archive page. (Like the <title>, etc.)
Explained above
Logic and HTML for the list of pending proposals. The logic can probably be moved to a different template for cleanness's sake.
The list of active and idle players. We may try to automate this at some point. Quorum will still need manual updating, though, because if we automate Active and Idle (there's already a member profile field for this), this could be manipulated easily.
Default template, may be deleted, may be modified to be used for comment previewing.
Default template. Possibly will be deleted.
The entire sidebar. Has many {embed} statements to include widgets contained in these other templates.
The Switch Document. I intend to do something in the very near future to make this amendable from BlogNomic and only from BlogNomic.