Home | Member List | Gates of Jerusalem
Sign in or sign up

Explore the roots of modern Masonic ritual.

The Masonic Conservators were a secret group of Freemasons dedicated to improving the quality of Masonic ritual across the United States and returning it to its most ancient and original version. They only existed from 1859 to 1865, but the impact of their work has been felt across all American jurisdictions.

This website is intended to be a jumping-off point for researchers interested in the Conservators and their influence on Freemasonry. Here, you will find information about the Conservators, what they did, and who they were. If you are a Masonic researcher, we welcome your input and collaboration.

Who Were the Conservators?

View the database of conservators and learn more about who they were.

Documents and Information

Explore a collection of documents and information about the Conservators.

Fun and Games

Find out more about the Conservator ritual. What would your secret Conservator name have been?

This page template located at app/presenters/templates/Homepage/default.latte

{block content}
<div id="banner">
  <h1 n:block=title>The Masonic Conservators</h1>
</div>

<div id="content">
  <h2>Explore the roots of modern Masonic ritual.</h2>

  <p>
    The Masonic Conservators were a secret group of Freemasons dedicated to improving the quality of Masonic ritual
    across the United States and returning it to its most ancient and original version. They only existed from 1859 to
    1865, but the impact of their work has been felt across all American jurisdictions.
  </p>
  <p>
    This website is intended to be a jumping-off point for researchers interested in the Conservators and their
    influence on Freemasonry. Here, you will find information about the Conservators, what they did, and who they
    were. If you are a Masonic researcher, we welcome your input and collaboration.
  </p>

  <div class="boxes">
    <div>
      <h2>Who Were the Conservators?</h2>
      <p><a n:href="Members:default">View the database of conservators</a> and learn more about who they were.</p>
    </div>

    <div>
      <h2>Documents and Information</h2>
      <p>
        Explore a collection of documents and information about the Conservators.
      </p>
    </div>

    <div>
      <h2>Fun and Games</h2>
      <p>
        Find out more about the Conservator ritual. <a n:href="Gates:default">What would your secret Conservator name have been?</a>
      </p>
    </div>
  </div>
  <section id="template">
    <h2>This page template located at <span>{strstr($this->getName(), app)}</span></h2>

    <pre><code class="jush">{file_get_contents($this->getName())|replacere:'#[\w+/]{60,}#':'…'}</code></pre>
  </section>

  <section id="layout">
    <h2>Layout template located at <span>{strstr($this->getParentName(), app)}</span></h2>

    <pre><code class="jush">{file_get_contents($this->getParentName())}</code></pre>
  </section>

  <section id="presenter">
    <h2>Current presenter located at <span>{strstr($presenter->getReflection()->getFileName(), app)}</span></h2>

    <pre><code class="jush-php">{file_get_contents($presenter->getReflection()->getFileName())}</code></pre>
  </section>
</div>
{/block}

{block scripts}
{include parent}
<script src="https://files.nette.org/sandbox/jush.js"></script>
<script>
	jush.create_links = false;
	jush.highlight_tag('code');
	$('code.jush').each(function(){ $(this).html($(this).html().replace(/\x7B[/$\w].*?\}/g, '<span class="jush-latte">$&</span>')) });

	$('a[href^="#"]').click(function(){
		$('html,body').animate({ scrollTop: $($(this).attr('href')).show().offset().top - 5 }, 'fast');
		return false;
	});
</script>
{/block}


{block head}
<style>
	html { overflow-y: scroll; }
	body { font: 14px/1.65 Verdana, "Geneva CE", lucida, sans-serif; background: #3484d2; color: #333; margin: 38px auto; max-width: 940px; min-width: 420px; }

	h1, h2 { font: normal 150%/1.3 Georgia, "New York CE", utopia, serif; color: #1e5eb6; -webkit-text-stroke: 1px rgba(0,0,0,0); }

	img { border: none; }

	a { color: #006aeb; padding: 3px 1px; }

	a:hover, a:active, a:focus { background-color: #006aeb; text-decoration: none; color: white; }

	#banner { border-radius: 12px 12px 0 0; background-image: url(data:image/png;base64,…); }
	#banner h1 { color: white; font-size: 50px; line-height: 121px; margin: 0; padding-left: 4%; text-shadow: 1px 1px 0 rgba(0, 0, 0, .9); }
	@media (max-width: 600px) {
		#banner h1 { background: none; }
	}

	#content { background: white; border: 1px solid #eff4f7; border-radius: 0 0 12px 12px; padding: 10px 4%; overflow: hidden; }
	#content > h2 { font-size: 130%; color: #666; clear: both; padding: 1.2em 0; margin: 0; }

	h2 span { color: #87A7D5; }
	h2 a { text-decoration: none; background: transparent; }

	.boxes { -webkit-justify-content: space-between; justify-content: space-between; display: -webkit-flex; display: flex; margin-right: -2em; }
	.boxes > div { background: #f0f0f0; border: 1px solid #e6e6e6; border-radius: 5px; -webkit-flex: 1; flex: 1; margin-right: 2em; }
	.boxes h2 { text-align: center; margin: 1em; }
	.boxes img { float: left; }
	.boxes p { clear: both; margin: 1em; }
	.boxes p a { color: #006aeb; background: #f7f7f7; padding: 1px 3px; border-radius: 3px; text-decoration: none; box-shadow: 0 2px 5px rgba(0, 0, 0, .10); }
	.boxes p a:hover, .boxes p a:active, .boxes p a:focus { color: white; background-color: #006aeb; }
	.boxes > div:nth-child(3n - 2) h2 { color: #00a6e5; }
	.boxes > div:nth-child(3n - 2) img { margin: -1em -1em 0 -1em; }
	.boxes > div:nth-child(3n - 1) h2 a { color: #db8e34; background: transparent; }
	.boxes > div:nth-child(3n) h2 a { color: #578404; background: transparent; }
	@media (max-width: 760px) {
		.boxes { -webkit-flex-direction: column; flex-direction: column; }
		.boxes > div { margin-bottom: 1em; flex-basis: auto; }
		.boxes h2 br { display: none; }
	}

	section { display: none; }

	pre { font-size: 12px; line-height: 1.4; padding: 10px; margin: 1.3em 0; overflow: auto; max-height: 500px; background: #F1F5FB; border-radius: 5px; box-shadow: 0 1px 1px rgba(0, 0, 0, .1); }

	.jush-com, .jush-php_doc { color: #929292; }
	.jush-tag, .jush-tag_js { color: #6A8527; font-weight: bold; }
	.jush-att { color: #8CA315 }
	.jush-att_quo { color: #448CCB; font-weight: bold; }
	.jush-php_var { color: #d59401; font-weight: bold; }
	.jush-php_apo { color: green; }
	.jush-php_new { font-weight: bold; }
	.jush-php_fun { color: #254DB3; }
	.jush-js, .jush-css { color: #333333; }
	.jush-css_val { color: #448CCB; }
	.jush-clr { color: #007800; }
	.jush a { color: inherit; background: transparent; }
	.jush-latte { color: #D59401; font-weight: bold }
</style>
{/block}

Layout template located at app/presenters/templates/@layout.latte

{**
 * @param string   $basePath web base path
 * @param array    $flashes  flash messages
 *}
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">

    <title>{ifset title}{include title|stripHtml} | {/ifset}The Masonic Conservators</title>

    <link rel="stylesheet" href="{$basePath}/css/style.css">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    {block head}{/block}
  </head>

  <body>
    <div class="topmenu">
      <div id="actionmenu">
        <a n:href="Homepage:default">Home</a> |
        <a n:href="Members:default">Member List</a> |
        <a n:href="Gates:default">Gates of Jerusalem</a>
      </div>
      <div id="usermenu">
        {if $user->isLoggedIn()}
        Logged in as {$user->getIdentity()->username} | <a n:href="Sign:out">Sign out</a>
        {else}
        <a n:href="Sign:in">Sign in</a> or <a n:href="Sign:up">sign up</a>
        {/if}
      </div>
    </div>
    
    <div n:foreach="$flashes as $flash" n:class="flash, $flash->type">{$flash->message}</div>

    {include content}

    {block scripts}
    <script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
    <script src="https://nette.github.io/resources/js/netteForms.min.js"></script>
    <script src="{$basePath}/js/main.js"></script>
    {/block}

    <script n:syntax=off>
      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
      })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
      ga('create', 'UA-5539168-8', 'auto');
      ga('send', 'pageview');
    </script>
  </body>
</html>

Current presenter located at app/presenters/HomepagePresenter.php

<?php

namespace App\Presenters;

use Nette;
use App\Model;


class HomepagePresenter extends BasePresenter
{

	public function renderDefault()
	{
		$this->template->anyVariable = 'any value';
	}

}