{% extends "base.html" %}

{% load staticfiles %}

{% block head_block %}
  	{{ block.super }}

{% endblock %}

{% block left_sidebar %}
    {% include 'left_sidebar_base.html' %}
{% endblock %}

{% block breadcrumb_body %}
  	{{ block.super }}

{% endblock %}

{% block content_body %}
  	{{ block.super }}

    <div class="row">
    <div class="col-md-5 ">

        <div class="small-box bg-purple">
            <div class="inner">
                <h3>{{ projects }}</h3>
                <h3>Projects</h3>
                <p></p>
            </div>
            <div class="icon">
                <i class="fa fa-code"></i>
            </div>
            <a href="/projects/list" class="small-box-footer">
                Open list <i class="fa fa-arrow-circle-right"></i>
            </a>
        </div>
    </div>
    <!--
    <div class="col-md-6 ">
        <div class="small-box bg-aqua">
            <div class="inner">
                <h3>{{deployments}}</h3>
                <h3>Deployments</h3>
                <p></p>
            </div>
            <div class="icon">
                <i class="fa fa-terminal"></i>
            </div>
            {% if user.is_guest %}
            <a href="#" class="small-box-footer">
                Guest Users don't have permission <i class="fa fa-arrow-circle-right"></i>
            </a>
            {% else %}
            <a href="/deployments/list" class="small-box-footer">
                Open list <i class="fa fa-arrow-circle-right"></i>
            </a>
            {% endif %}
        </div>
    </div>
-->
</div>
<div class="row">
    <img style="display:block; margin:0 auto; width: 60%;" class="pad" src="/static/assets/img/osm_logo.svg" alt="Photo">
</div>
{% endblock %}

{% block resource_block %}
  	{{ block.super }}



{% endblock %}
