Fix custom navigation links on mobile

Fix custom navigation links on mobile

<!DOCTYPE html>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>bors</title>
    <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon.png">
    <link rel="icon" type="image/svg+xml" title="bors eye" href="/images/i.svg">
    <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16.png">
    <link rel="manifest" href="/images/manifest.json">
    <link rel="mask-icon" href="/images/safari-pinned-tab.svg" color="#5bbad5">
    <meta name="theme-color" content="#eeeeee">
    <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">
<%= if not is_nil(@conn.assigns[:user]) do %>
    <meta name="bors-current-user" content="<%= @conn.assigns.user.id %>">
<% end %>

      <%= if assigns[:project] do %>
      <div hidden="hidden" id="js--on-project-ping" data-bors-project-id="<%= @project.id %>" role="alert" class="alert js--closable">
      This page is out of date. Reload

      <% end %>
      <%= if not is_nil get_flash(@conn, :ok) do %>

      <%= get_flash(@conn, :ok) %>

      <% end %>
      <%= if not is_nil get_flash(@conn, :error) do %>

      <%= get_flash(@conn, :error) %>

      <% end %>

        <a id=header-logo href="<%= page_path(@conn, :index) %>"><img alt="bors" src='<%= static_path(@conn, "/images/a.svg") %>' width="90" height="25">

          <%= {:safe, get_header_html()} %>

<%= if is_nil @conn.assigns[:user] do %>
          <a class=header-link href='<%= auth_path(@conn, :index, "github") %>'>Log in with GitHub
<% else %>
  <%= if @conn.path_info == ["repositories"] do %>
          Repositories
  <% else %>
          <a class="header-link hide-on-narrow" href="<%= project_path(@conn, :index) %>">Repositories
  <% end %>

            <img width=25 height=25 class="no-outline-on-focus" src="<%= @conn.assigns.avatar_url %>" alt="" role="presentation">
            <%= @conn.assigns.user.login %> ▾

<% end %>
<%= if not is_nil @conn.assigns[:user] do %>

  <%= if @conn.assigns.user.is_admin do %>
            <a href="<%= admin_path(@conn, :index) %>">Admin
  <% end %>
            <a class=show-on-narrow href="<%= project_path(@conn, :index) %>">Repositories
            <a href="<%= auth_path(@conn, :logout) %>">Log out
<% end %>

    <%= render @view_module, @view_template, assigns %>

          <%= {:safe, get_header_html()} %>

          Build:
          <a href="https://github.com/bors-ng/bors-ng/tree/<%= elem(get_version(), 1) %>">
            <%= elem(get_version(), 0) %>

        <%= {:safe, get_footer_html()} %>

<!DOCTYPE html>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>bors</title>
    <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon.png">
    <link rel="icon" type="image/svg+xml" title="bors eye" href="/images/i.svg">
    <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16.png">
    <link rel="manifest" href="/images/manifest.json">
    <link rel="mask-icon" href="/images/safari-pinned-tab.svg" color="#5bbad5">
    <meta name="theme-color" content="#eeeeee">
    <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">
<%= if not is_nil(@conn.assigns[:user]) do %>
    <meta name="bors-current-user" content="<%= @conn.assigns.user.id %>">
<% end %>

      <%= if assigns[:project] do %>
      <div hidden="hidden" id="js--on-project-ping" data-bors-project-id="<%= @project.id %>" role="alert" class="alert js--closable">
      This page is out of date. Reload

      <% end %>
      <%= if not is_nil get_flash(@conn, :ok) do %>

      <%= get_flash(@conn, :ok) %>

      <% end %>
      <%= if not is_nil get_flash(@conn, :error) do %>

      <%= get_flash(@conn, :error) %>

      <% end %>

        <a id=header-logo href="<%= page_path(@conn, :index) %>"><img alt="bors" src='<%= static_path(@conn, "/images/a.svg") %>' width="90" height="25">

          <%= {:safe, get_header_html()} %>

<%= if is_nil @conn.assigns[:user] do %>
          <a class=header-link href='<%= auth_path(@conn, :index, "github") %>'>Log in with GitHub
<% else %>
  <%= if @conn.path_info == ["repositories"] do %>
          Repositories
  <% else %>
          <a class="header-link hide-on-narrow" href="<%= project_path(@conn, :index) %>">Repositories
  <% end %>

            <img width=25 height=25 class="no-outline-on-focus" src="<%= @conn.assigns.avatar_url %>" alt="" role="presentation">
            <%= @conn.assigns.user.login %> ▾

<% end %>
<%= if not is_nil @conn.assigns[:user] do %>

  <%= if @conn.assigns.user.is_admin do %>
            <a href="<%= admin_path(@conn, :index) %>">Admin
  <% end %>
            <a class=show-on-narrow href="<%= project_path(@conn, :index) %>">Repositories
            <a href="<%= auth_path(@conn, :logout) %>">Log out
<% end %>

    <%= render @view_module, @view_template, assigns %>

        Home
        Forum
        Docs
        Dashboard

          Build:
          <a href="https://github.com/bors-ng/bors-ng/tree/<%= elem(get_version(), 1) %>">
            <%= elem(get_version(), 0) %>

        <%= {:safe, get_footer_html()} %>


Finished admin skill utility

Finished admin skill utility

Closes #463

<%# header tag begins in parent template %>

<%= gettext("All Skills") %>

<%= render Vutuv.LayoutView, "flash.html", assigns %>

  <%= gen_breadcrumbs([
    {gettext("Admin Home"), admin_admin_path(@conn, :index)},
    gettext("Skills")]) %>

<%= gettext("Skills Without Synonyms") %>

    <%= render "card_list.html", assigns %>
    <%= Vutuv.Pages.page_list(@conn.params, @unvalidated_skills_count) %>

    <%= render Vutuv.SharedView, "_ad.html" %>

<%# header tag begins in parent template %>

<%= gettext("All Skills") %>

<%= render Vutuv.LayoutView, "flash.html", assigns %>

  <%= gen_breadcrumbs([
    {gettext("Admin Home"), admin_admin_path(@conn, :index)},
    gettext("Skills")]) %>

<%= gettext("Skills Without Synonyms") %>

    <%= render "card_list.html", assigns %>
    <%= Vutuv.Pages.page_list(@conn.params, admin_skill_path(@conn, :index), @unvalidated_skills_count) %>

    <%= render Vutuv.SharedView, "_ad.html" %>


Update google analytics tags

Update google analytics tags

<!DOCTYPE html>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="A real-time application for conducting Agile retrospectives">
    <meta name="google-site-verification" content="T5W8sjrjt-BmTK5SYTjPM-FQZD8oGNatTNAJSyRex7o" />
    <meta name="author" content="">
    <title>RemoteRetro</title>
    <link rel="stylesheet" href="<%= static_path(@conn, "/css/semantic-ui/semantic.min.css") %>">
    <%= if Mix.env == :dev do %>
      <link id="css" rel="stylesheet" href="http://localhost:5001/css/app.css" />
    <% else %>
      <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">
    <% end %>

  <body class="<%= if @view_module.include_backdrop, do: "photo-backdrop" %>">

      <%= render @view_module, @view_template, assigns %>

    <%= if @view_module.include_js do %>

    <% end %>


Remove debug information

Remove debug information

<script src="//cdn.jsdelivr.net/phaser-ce/2.7.3/phaser.min.js"></script>

<script type="text/javascript">

window.onload = function() {

    var game = new Phaser.Game(800, 600, Phaser.AUTO, '', { preload: preload, create: create, update: update });

    var player
    var cursors
    var player_id
    var player_id_int

    var other_players = []
    var world_state = {}

    function preload () {

        game.load.image('sheep_1', 'images/sheep_1.png');

    }

    function create () {

        game.stage.disableVisibilityChange = true;

        player = game.add.sprite(game.world.centerX, game.world.centerY, 'sheep_1');
        player.anchor.setTo(0.5, 0.5);

        cursors = game.input.keyboard.createCursorKeys();
        player_id_int = Math.floor(Math.random() * 1000)
        player_id = player_id_int.toString()

        channel.push("im_new_here", { player: player_id , position: { x: player.x, y: player.y }})

    }

    function update () {

        if (cursors.left.isDown) {
            player.x -= 4;
        }
        else if (cursors.right.isDown) {
            player.x += 4;
        }

        if (cursors.up.isDown) {
            player.y -= 4;
        }
        else if (cursors.down.isDown) {
           player.y += 4;
        }

        other_players.forEach(function(other_player) {
          var other_player_id = parseInt(other_player.player_id);

          if (other_player_id in world_state) {
            other_player.game_object.x = world_state[other_player_id].x
            other_player.game_object.y = world_state[other_player_id].y
          }
        })

        if (player_id_int in world_state) {
          if (world_state[player_id_int].x != player.x ||
                  world_state[player_id_int].y != player.y ) {
            channel.push("new_position", { player: player_id, position: { x: player.x, y: player.y }})
          }
        }
    }

    channel.on("update_world", payload => {

      world_state = payload

    })

    channel.on("new_player_joined", payload => {

      var other_player_id = payload.player_id
      var position = payload.position

      var new_player = game.add.sprite(position.x, position.y, 'sheep_1')
      new_player.anchor.setTo(0.5, 0.5)

      other_players.push({player_id: other_player_id, game_object: new_player})

    })

    channel.on("hello_world", payload => {

      Object.keys(payload).forEach(function(key) {
        var new_player = game.add.sprite(payload[key].x, payload[key].y, 'sheep_1')
        new_player.anchor.setTo(0.5, 0.5);

        other_players.push({player_id: key, game_object: new_player})
      })

    })

};

</script>

<script src="//cdn.jsdelivr.net/phaser-ce/2.7.3/phaser.min.js"></script>

<script type="text/javascript">

window.onload = function() {

    var game = new Phaser.Game(800, 600, Phaser.AUTO, '', { preload: preload, create: create, update: update, render: render });

    var player
    var cursors
    var player_id
    var player_id_int

    var other_players = []
    var world_state = {}

    function preload () {

        game.load.image('sheep_1', 'images/sheep_1.png');

    }

    function create () {

        game.stage.disableVisibilityChange = true;

        player = game.add.sprite(game.world.centerX, game.world.centerY, 'sheep_1');
        player.anchor.setTo(0.5, 0.5);

        cursors = game.input.keyboard.createCursorKeys();
        player_id_int = Math.floor(Math.random() * 1000)
        player_id = player_id_int.toString()

        channel.push("im_new_here", { player: player_id , position: { x: player.x, y: player.y }})

    }

    function update () {

        if (cursors.left.isDown) {
            player.x -= 4;
        }
        else if (cursors.right.isDown) {
            player.x += 4;
        }

        if (cursors.up.isDown) {
            player.y -= 4;
        }
        else if (cursors.down.isDown) {
           player.y += 4;
        }

        other_players.forEach(function(other_player) {
          var other_player_id = parseInt(other_player.player_id);

          if (other_player_id in world_state) {
            other_player.game_object.x = world_state[other_player_id].x
            other_player.game_object.y = world_state[other_player_id].y
          }
        })

        if (player_id_int in world_state) {
          if (world_state[player_id_int].x != player.x ||
                  world_state[player_id_int].y != player.y ) {
            channel.push("new_position", { player: player_id, position: { x: player.x, y: player.y }})
          }
        }
    }

    function render () {

      game.debug.spriteInfo(player, 32, 32);

    }

    channel.on("update_world", payload => {

      world_state = payload

    })

    channel.on("new_player_joined", payload => {

      var other_player_id = payload.player_id
      var position = payload.position

      var new_player = game.add.sprite(position.x, position.y, 'sheep_1')
      new_player.anchor.setTo(0.5, 0.5)

      other_players.push({player_id: other_player_id, game_object: new_player})

    })

    channel.on("hello_world", payload => {

      Object.keys(payload).forEach(function(key) {
        var new_player = game.add.sprite(payload[key].x, payload[key].y, 'sheep_1')
        new_player.anchor.setTo(0.5, 0.5);

        other_players.push({player_id: key, game_object: new_player})
      })

    })

};

</script>


Testing out slug.

Testing out slug.

Homepage

<%= System.get_env("HEROKU_SLUG_COMMIT") %>


Use static_push by default for the JS and CSS (#2805)

static_push is not used on the image by default yo show that not
everything needs to use static_push.

<!DOCTYPE html>

    <meta charset="utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, shrink-to-fit=no, user-scalable=no"/>
    <title><%= app_module %> · Phoenix Framework</title>
    <link rel="stylesheet" href="<%%= Routes.static_push(@conn, "/css/app.css") %>"/>

Get Started

          <img src="<%%= Routes.static_path(@conn, "/images/phoenix.png") %>" alt="Phoenix Framework Logo"/>

<%%= get_flash(@conn, :info) %>

<%%= get_flash(@conn, :error) %>

      <%%= render @view_module, @view_template, assigns %>

<!DOCTYPE html>

    <meta charset="utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, shrink-to-fit=no, user-scalable=no"/>
    <title><%= app_module %> · Phoenix Framework</title>
    <link rel="stylesheet" href="<%%= Routes.static_path(@conn, "/css/app.css") %>"/>

Get Started

          <img src="<%%= Routes.static_path(@conn, "/images/phoenix.png") %>" alt="Phoenix Framework Logo"/>

<%%= get_flash(@conn, :info) %>

<%%= get_flash(@conn, :error) %>

      <%%= render @view_module, @view_template, assigns %>


mobile dropdown menu

mobile dropdown menu

  <button type="button"
          class="navbar-toggle collapsed"
          data-toggle="collapse"
          data-target="#navbar"
          aria-expanded="false"
          aria-controls="navbar">
    Toggle navigation

  </button>

  Panoptikum.io

      <%= link fa_icon("home"), to: page_frontend_path(@conn, :home),
                                title: "Home", class: "hidden-xs" %>
      <%= link [fa_icon("home", class: "fa-fw"), raw("    Home")],
               to: page_frontend_path(@conn, :home),
               title: "Home",
               class: "visible-xs-inline" %>

      <%= link fa_icon("sitemap"), to: category_frontend_path(@conn, :index),
                                   id: "category_link", title: "Categories", class: "hidden-xs" %>
      <%= link [fa_icon("sitemap", class: "fa-fw"), raw("    Categories")],
               to: category_frontend_path(@conn, :index),
               id: "category_link",
               title: "Categories",
               class: "visible-xs-inline" %>

        <%= fa_icon("question-circle") %>

        <%= fa_icon("question-circle", class: "fa-fw") %>    About

        <%= fa_icon("newspaper-o") %>

        <%= fa_icon("newspaper-o", class: "fa-fw") %>    Blog

      <%= link fa_icon("user-o"), to: persona_frontend_path(@conn, :index),
                                  title: "Podcasters", class: "hidden-xs" %>
      <%= link [fa_icon("user-o", class: "fa-fw"), raw("    Podcasters")],
               to: persona_frontend_path(@conn, :index),
               title: "Podcasters",
               class: "visible-xs-inline" %>

      <%= link fa_icon("user"), to: user_frontend_path(@conn, :index),
                                title: "Users", class: "hidden-xs" %>
      <%= link [fa_icon("user", class: "fa-fw"), raw("    Users")],
          to: user_frontend_path(@conn, :index),
          title: "Users",
          class: "visible-xs-inline" %>

      <%= link fa_icon("magic"), to: recommendation_frontend_path(@conn, :random),
                                   title: "Random", class: "hidden-xs" %>
      <%= link [fa_icon("magic", class: "fa-fw"), raw("    Random")],
               to: recommendation_frontend_path(@conn, :random),
               title: "Random",
               class: "visible-xs-inline" %>

  <%= form_for @conn, search_frontend_path(@conn, :new),
                      [as: :search, class: "navbar-form navbar-left"],
                      fn f -> %>

         <%= text_input f, :searchstring, class: "form-control", placeholder: "Search" %>

    <%= submit fa_icon("search"), class: "btn", title: "Submit" %>
  <% end %>

    <%= if @current_user do %>
      <input type="checkbox" id="checkbox_toggle" class="drop">

          <%= fa_icon "user" %>
          <%= @current_user.username %>
          <%= fa_icon "bars" %>

<%= link "My Profile",  to: user_frontend_path(@conn, :my_profile) %>

<%= link "Change Password", to: user_frontend_path(@conn, :edit_password) %>

<%= link "My Messages", to: user_frontend_path(@conn, :my_messages) %>

<%= link "My Podcasts", to: user_frontend_path(@conn, :my_podcasts) %>

<%= link "My Recommendations", to: recommendation_frontend_path(@conn, :my_recommendations) %>

<%= link "Suggest a Podcast", to: feed_backlog_frontend_path(@conn, :new) %>

<%= link "My OPMLs", to: opml_frontend_path(@conn, :index) %>

      <%= if @current_user.admin do %>

            <%= fa_icon("wrench") %>
            <%= fa_icon "bars" %>

<%= link "Categories", to: category_path(@conn, :index) %>

<%= link "Podcasts", to: podcast_path(@conn, :index) %>

<%= link "Feeds", to: feed_path(@conn, :index) %>

<%= link "Feed Backlog", to: feed_backlog_path(@conn, :index) %>

<%= link "OPMLs", to: opml_path(@conn, :index) %>

<%= link "Users", to: user_path(@conn, :index) %>

<%= link "Invoices", to: invoice_path(@conn, :index) %>

<%= link "Messages", to: message_path(@conn, :index) %>

<%= link "Likes", to: like_path(@conn, :index) %>

<%= link "Follows", to: follow_path(@conn, :index) %>

<%= link "Subscriptions", to: subscription_path(@conn, :index) %>

<%= link "Recommendations", to: recommendation_path(@conn, :index) %>

<%= link "Personas", to: persona_path(@conn, :index) %>

<%= link "Gigs", to: gig_path(@conn, :index) %>

<%= link "Engagements", to: engagement_path(@conn, :index) %>

<%= link "Manifestations", to: manifestation_path(@conn, :index) %>

<%= link "Delegations", to: delegation_path(@conn, :index) %>

<%= link "Languages", to: language_path(@conn, :index) %>

      <% end %>

        <%= link fa_icon("sign-out"),
                 to: session_path(@conn, :delete, @current_user),
                 method: "delete",
                 title: "Log out",
                 style: "color: #aab2bd;",
                 class: "hidden-xs navbar-text"%>
        <%= link [fa_icon("sign-out", class: "fa-fw"), raw("    Sign Out")],
                 to: session_path(@conn, :delete, @current_user),
                 method: "delete",
                 title: "Log out",
                 style: "color: #aab2bd;",
                 class: "visible-xs-inline navbar-text"%>

    <% else %>

          <%= fa_icon("bus") %>

          <%= fa_icon("bus", class: "fa-fw") %>    Tour

        <%= link fa_icon("pencil"), to: user_frontend_path(@conn, :new),
                                    title: "Sign up", class: "hidden-xs" %>
        <%= link [fa_icon("pencil", class: "fa-fw"), raw("    Sign Up")],
                 to: user_frontend_path(@conn, :new),
                 title: "Sign up",
                 class: "visible-xs-inline" %>

        <%= link fa_icon("sign-in"), to: session_path(@conn, :new),
                                     title: "Log In", class: "hidden-xs" %>
        <%= link [fa_icon("sign-in", class: "fa-fw"), raw("    Log In")],
                 to: session_path(@conn, :new),
                 title: "Log In",
                 class: "visible-xs-inline" %>

    <% end %>

  <button type="button"
          class="navbar-toggle collapsed"
          data-toggle="collapse"
          data-target="#navbar"
          aria-expanded="false"
          aria-controls="navbar">
    Toggle navigation

  </button>

  Panoptikum.io

<%= link fa_icon("home"), to: page_frontend_path(@conn, :home),
                                 title: "Home" %>

<%= link fa_icon("sitemap"), to: category_frontend_path(@conn, :index),
                                         id: "category_link",
                                         title: "Categories" %>

<%= fa_icon("question-circle") %>

<%= fa_icon("newspaper-o") %>

<%= link fa_icon("user-o"), to: persona_frontend_path(@conn, :index), title: "Podcasters" %>

<%= link fa_icon("user"), to: user_frontend_path(@conn, :index),
                                  title: "Users" %>

<%= link fa_icon("magic"), to: recommendation_frontend_path(@conn, :random),
                                   title: "Random" %>

  <%= form_for @conn, search_frontend_path(@conn, :new),
                      [as: :search, class: "navbar-form navbar-left"],
                      fn f -> %>

         <%= text_input f, :searchstring, class: "form-control", placeholder: "Search" %>

    <%= submit fa_icon("search"), class: "btn", title: "Submit" %>
  <% end %>

    <%= if @current_user do %>
      <input type="checkbox" id="checkbox_toggle" class="drop">

          <%= fa_icon "user" %>
          <%= @current_user.username %>
          <%= fa_icon "bars" %>

<%= link "My Profile",  to: user_frontend_path(@conn, :my_profile) %>

<%= link "Change Password", to: user_frontend_path(@conn, :edit_password) %>

<%= link "My Messages", to: user_frontend_path(@conn, :my_messages) %>

<%= link "My Podcasts", to: user_frontend_path(@conn, :my_podcasts) %>

<%= link "My Recommendations", to: recommendation_frontend_path(@conn, :my_recommendations) %>

<%= link "Suggest a Podcast", to: feed_backlog_frontend_path(@conn, :new) %>

<%= link "My OPMLs", to: opml_frontend_path(@conn, :index) %>

      <%= if @current_user.admin do %>

            <%= fa_icon("wrench") %>
            <%= fa_icon "bars" %>

<%= link "Categories", to: category_path(@conn, :index) %>

<%= link "Podcasts", to: podcast_path(@conn, :index) %>

<%= link "Feeds", to: feed_path(@conn, :index) %>

<%= link "Feed Backlog", to: feed_backlog_path(@conn, :index) %>

<%= link "OPMLs", to: opml_path(@conn, :index) %>

<%= link "Users", to: user_path(@conn, :index) %>

<%= link "Invoices", to: invoice_path(@conn, :index) %>

<%= link "Messages", to: message_path(@conn, :index) %>

<%= link "Likes", to: like_path(@conn, :index) %>

<%= link "Follows", to: follow_path(@conn, :index) %>

<%= link "Subscriptions", to: subscription_path(@conn, :index) %>

<%= link "Recommendations", to: recommendation_path(@conn, :index) %>

<%= link "Personas", to: persona_path(@conn, :index) %>

<%= link "Gigs", to: gig_path(@conn, :index) %>

<%= link "Engagements", to: engagement_path(@conn, :index) %>

<%= link "Manifestations", to: manifestation_path(@conn, :index) %>

<%= link "Delegations", to: delegation_path(@conn, :index) %>

<%= link "Languages", to: language_path(@conn, :index) %>

      <% end %>

          <%= link fa_icon("sign-out"), to: session_path(@conn, :delete, @current_user),
                                           method: "delete",
                                           title: "Log out",
                                           style: "color: #aab2bd;" %>

    <% else %>

<%= fa_icon("bus") %>

<%= link fa_icon("pencil"), to: user_frontend_path(@conn, :new),
                                          title: "Sign up" %>

<%= link fa_icon("sign-in"), to: session_path(@conn, :new),
                                          title: "Log in" %>

    <% end %>


don't show delegs disclaimer if no images found


Added version to footer.

Added version to footer.

Closes #260


obvious load speed improvement

obvious load speed improvement

<!DOCTYPE html>

  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="description" content="">
  <meta name="author" content="">
  <title>Glasnost: <%= naive_translate("head title", @conn.assigns[:lang])%></title>
  <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">
  <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.9/semantic.min.css"></link>

    <%= render Glasnost.Web.LayoutView, "menu.html", assigns %>

        <%= if get_flash(@conn, :info) do %>

<%= get_flash(@conn, :info) %>

        <% end %>
        <%= if get_flash(@conn, :error) do %>

<%= get_flash(@conn, :error) %>

        <% end %>

      <%= render @view_module, @view_template, assigns %>


experimental new posts template: iteration 3

  <%= for post <- @posts do %>

  <% img_src = hd(post.json_metadata["image"] || post.json_metadata["images"] || ["/images/"<> @conn.assigns.default_post_image] ) %>

        <a href="/authors/<%= post.author %>/<%= post.permlink %>">

          <img src="<%= img_src %>">

          <a class="header" href="/authors/<%= post.author %>/<%= post.permlink %>"><%= post.title %>

            <a style="font-size: 15px; color: rgba(0,0,0,0.6);" class="author" href="/author/<%=post.author%>">

              <%= post.author  %>

              <%= hd(String.split(NaiveDateTime.to_string(post.created))) %>

            <%= format_excerpt(post) %>...

            <%= for tag <- post.tags do %>
            <a class="ui label" href="/tags/<%=tag%>">
              <%= format_tag(tag, post.blockchain) %>

            <% end %>

  <% end %>

    <%= for {v, i} <- generate_pagination_list(@current_page) do %>

    <a class="<%=if v == @current_page, do: "active" %> item"
      href="<%= @conn.request_path <> "?" <> URI.encode_query(%{"page"=> v}) %>">
      <%= v %>

    <% end %>

  <%= for post <- @posts do %>

  <% img_src = hd(post.json_metadata["image"] || post.json_metadata["images"] || ["/images/"<> @conn.assigns.default_post_image] ) %>

        <a href="/authors/<%= post.author %>/<%= post.permlink %>">

          <img src="<%= img_src %>">

          <a class="header" href="/authors/<%= post.author %>/<%= post.permlink %>"><%= post.title %>

            <span class="author" href="/authors/<%= post.author %>">

               @<%= post.author  %>

              <%= hd(String.split(NaiveDateTime.to_string(post.created))) %>

            <%= format_excerpt(post) %>...

            <%= for tag <- post.tags do %>
            <a class="ui label" href="/tags/<%=tag%>">
              <%= format_tag(tag, post.blockchain) %>

            <% end %>

  <% end %>

    <%= for {v, i} <- generate_pagination_list(@current_page) do %>

    <a class="<%=if v == @current_page, do: "active" %> item"
      href="<%= @conn.request_path <> "?" <> URI.encode_query(%{"page"=> v}) %>">
      <%= v %>

    <% end %>


Add a form for adding a new couple

Add a form for adding a new couple

<%= form_for @changeset, @action, fn f -> %>
  <%= if @changeset.action do %>

Oops, something went wrong! Please check the errors below:

        <%= for {attr, message} <- f.errors do %>

<%= humanize(attr) %> <%= message %>

        <% end %>

  <% end %>

    <%= label f, :name, "Partner1", class: "control-label" %>
    <%= text_input f, :partner1_id, class: "form-control" %>

    <%= label f, :name, "Partner2", class: "control-label" %>
    <%= text_input f, :partner2_id, class: "form-control" %>

    <%= submit "Submit", class: "btn btn-primary" %>

<% end %>

<%= form_for @changeset, @action, fn f -> %>
  <%= if @changeset.action do %>

Oops, something went wrong! Please check the errors below:

        <%= for {attr, message} <- f.errors do %>

<%= humanize(attr) %> <%= message %>

        <% end %>

  <% end %>

    <%= submit "Submit", class: "btn btn-primary" %>

<% end %>


Add new event button to account navigation

  <%= if page(@conn)[:breadcrumb] do %>

      <%= for {entry, index} <- Enum.with_index(page(@conn)[:breadcrumb]) do %>
        <%= if Map.has_key?(entry, :path) do %>
          <%= link entry.name, to: entry.path, class: "breadcrumb-item #{if(index == length(page(@conn)[:breadcrumb]), do: "active")}" %>
        <% else %>
          <%= entry.name %>
        <% end %>
      <% end %>

  <% else %>
    <%= link (page(@conn)[:headline] || page(@conn)[:title]), to: account_dashboard_path(@conn, :show), class: "navbar-brand" %>
  <% end %>

    <%= content_tag :li, class: "nav-item" do %>
      <%= link "New event", to: account_event_path(@conn, :new), class: "btn btn-outline-success" %>
    <% end %>

    <%= if current_user(@conn).superadmin do %>
      <%= content_tag :li, class: "nav-item" do %>
        <%= link "Superadmin", to: superadmin_dashboard_path(@conn, :show), class: "btn btn-outline-warning" %>
      <% end %>
    <% end %>

    <%= content_tag :li, class: "nav-item" do %>
      <%= link "Logout", to: session_path(@conn, :delete), method: :delete, class: "btn btn-danger" %>
    <% end %>

  <%= if page(@conn)[:breadcrumb] do %>

      <%= for {entry, index} <- Enum.with_index(page(@conn)[:breadcrumb]) do %>
        <%= if Map.has_key?(entry, :path) do %>
          <%= link entry.name, to: entry.path, class: "breadcrumb-item #{if(index == length(page(@conn)[:breadcrumb]), do: "active")}" %>
        <% else %>
          <%= entry.name %>
        <% end %>
      <% end %>

  <% else %>
    <%= link (page(@conn)[:headline] || page(@conn)[:title]), to: account_dashboard_path(@conn, :show), class: "navbar-brand" %>
  <% end %>

    <%= if current_user(@conn) do %>
      <%= if current_user(@conn).superadmin do %>
        <%= content_tag :li, class: "nav-item" do %>
          <%= link "Superadmin", to: superadmin_dashboard_path(@conn, :show), class: "btn btn-outline-warning" %>
        <% end %>
      <% end %>

      <%= content_tag :li, class: "nav-item" do %>
        <%= link "Logout", to: session_path(@conn, :delete), method: :delete, class: "btn btn-danger" %>
      <% end %>
    <% else %>
      <%= content_tag :li, class: "nav-item" do %>
        <%= link "Login", to: session_path(@conn, :new), class: "btn btn-outline-success" %>
      <% end %>
    <% end %>


use collapse to hide description per default

<%= page_reload_listener([:event, @event.id, :task, :unlock]) %>
<%= page_reload_listener([:event, @event.id, :task, :lock]) %>

<%= page_reload_listener([:event, @event.id, :material, :unlock]) %>
<%= page_reload_listener([:event, @event.id, :material, :lock]) %>

<%= page_reload_listener([:event, @event.id, :chat_message, :create]) %>
<%= page_reload_listener([:event, @event.id, :chat_message, :delete]) %>
<%= page_reload_listener([:event, @event.id, :chat_message, :update]) %>

<%= @event.name %>

<%= l(@event.starts_at) %> - <%= l(@event.ends_at) %>

    more information

        <%= render_markdown @event.description_markdown %>

        Lastest materials

          <%= link "View all", to: classroom_material_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_unlocked_materials) == 0 do %>

No materials available

All the information you need should be in materials.

          <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
            <%= link "Create Materials", to: classroom_material_path(@conn, :new, @event), class: "btn btn-outline-primary" %>
          <% end %>

      <% else %>

          <%= for material <- @latest_unlocked_materials do %>

                  <%= link material.title, to: classroom_material_path(@conn, :show, @event, material) %>

          <% end %>

      <% end %>

        Lastest tasks

          <%= link "View all", to: classroom_task_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_unlocked_tasks) == 0 do %>

No tasks available

With tasks you can practise your new knowledge.

          <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
            <%= link "Create Tasks", to: classroom_task_path(@conn, :new, @event), class: "btn btn-outline-primary" %>
          <% end %>

      <% else %>

          <%= for task <- @latest_unlocked_tasks do %>

                  <%= link task.title, to: classroom_task_path(@conn, :show, @event, task) %>

          <% end %>

      <% end %>

        Lastest chat messages

          <%= link "View all", to: classroom_chat_message_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_chat_messages) == 0 do %>

No chat messages available

Hurry! And be the first, who writes something in the chat!

          <%= link "Write message", to: classroom_chat_message_path(@conn, :index, @event), class: "btn btn-outline-primary" %>

      <% else %>

            <%= for chat_message <- Enum.reverse(@latest_chat_messages) do %>

                    <img class="pull-left" src="https://www.gravatar.com/avatar/<%= Base.encode16(:crypto.hash(:md5, String.downcase(chat_message.user.email)), case: :lower) %>?s=32&d=identicon">

                      <%= chat_message.user.email %>
                      at <%= l(chat_message.inserted_at) %>

<%= chat_message.body %>

            <% end %>

      <% end %>

Feedbacks

          <%= if @feedback_averages.trainer_rating do %>

              Content rating: Ø <%= format_rating(@feedback_averages.content_rating) %>

              Trainer rating: Ø <%= format_rating(@feedback_averages.trainer_rating) %>

              Location rating: Ø <%= format_rating(@feedback_averages.location_rating) %>

          <% else %>

No feedbacks available

Let us know what we can do better.

          <% end %>

            New attendees

              <%= link "View all", to: classroom_membership_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

          <%= if length(@latest_memberships) == 0 do %>

No attendees available

An event lives from its participats.

              <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
                <%= link "Invite people", to: classroom_membership_path(@conn, :index, @event), class: "btn btn-outline-primary" %>
              <% end %>

          <% else %>

              <%= for membership <- @latest_memberships do %>

                      <img class="pull-left" src="https://www.gravatar.com/avatar/<%= Base.encode16(:crypto.hash(:md5, String.downcase(membership.user.email)), case: :lower) %>?s=32&d=identicon">

                      <%= membership.user.email %>
                      <%= if membership.role_id == 2 do %>
                        <%= membership.role.name %>
                      <% end %>

              <% end %>

          <% end %>

<%= page_reload_listener([:event, @event.id, :task, :unlock]) %>
<%= page_reload_listener([:event, @event.id, :task, :lock]) %>

<%= page_reload_listener([:event, @event.id, :material, :unlock]) %>
<%= page_reload_listener([:event, @event.id, :material, :lock]) %>

<%= page_reload_listener([:event, @event.id, :chat_message, :create]) %>
<%= page_reload_listener([:event, @event.id, :chat_message, :delete]) %>
<%= page_reload_listener([:event, @event.id, :chat_message, :update]) %>

<%= @event.name %>

    <%= render_markdown @event.description_markdown %>

        Lastest materials

          <%= link "View all", to: classroom_material_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_unlocked_materials) == 0 do %>

No materials available

All the information you need should be in materials.

          <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
            <%= link "Create Materials", to: classroom_material_path(@conn, :new, @event), class: "btn btn-outline-primary" %>
          <% end %>

      <% else %>

          <%= for material <- @latest_unlocked_materials do %>

                  <%= link material.title, to: classroom_material_path(@conn, :show, @event, material) %>

          <% end %>

      <% end %>

        Lastest tasks

          <%= link "View all", to: classroom_task_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_unlocked_tasks) == 0 do %>

No tasks available

With tasks you can practise your new knowledge.

          <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
            <%= link "Create Tasks", to: classroom_task_path(@conn, :new, @event), class: "btn btn-outline-primary" %>
          <% end %>

      <% else %>

          <%= for task <- @latest_unlocked_tasks do %>

                  <%= link task.title, to: classroom_task_path(@conn, :show, @event, task) %>

          <% end %>

      <% end %>

        Lastest chat messages

          <%= link "View all", to: classroom_chat_message_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

      <%= if length(@latest_chat_messages) == 0 do %>

No chat messages available

Hurry! And be the first, who writes something in the chat!

          <%= link "Write message", to: classroom_chat_message_path(@conn, :index, @event), class: "btn btn-outline-primary" %>

      <% else %>

            <%= for chat_message <- Enum.reverse(@latest_chat_messages) do %>

                    <img class="pull-left" src="https://www.gravatar.com/avatar/<%= Base.encode16(:crypto.hash(:md5, String.downcase(chat_message.user.email)), case: :lower) %>?s=32&d=identicon">

                      <%= chat_message.user.email %>
                      at <%= l(chat_message.inserted_at) %>

<%= chat_message.body %>

            <% end %>

      <% end %>

Feedbacks

          <%= if @feedback_averages.trainer_rating do %>

              Content rating: Ø <%= format_rating(@feedback_averages.content_rating) %>

              Trainer rating: Ø <%= format_rating(@feedback_averages.trainer_rating) %>

              Location rating: Ø <%= format_rating(@feedback_averages.location_rating) %>

          <% else %>

No feedbacks available

Let us know what we can do better.

          <% end %>

            New attendees

              <%= link "View all", to: classroom_membership_path(@conn, :index, @event), class: "btn btn-sm btn-secondary" %>

          <%= if length(@latest_memberships) == 0 do %>

No attendees available

An event lives from its participats.

              <%= if has_permission?(current_memberships(@conn), [1, 2]) do %>
                <%= link "Invite people", to: classroom_membership_path(@conn, :index, @event), class: "btn btn-outline-primary" %>
              <% end %>

          <% else %>

              <%= for membership <- @latest_memberships do %>

                      <img class="pull-left" src="https://www.gravatar.com/avatar/<%= Base.encode16(:crypto.hash(:md5, String.downcase(membership.user.email)), case: :lower) %>?s=32&d=identicon">

                      <%= membership.user.email %>
                      <%= if membership.role_id == 2 do %>
                        <%= membership.role.name %>
                      <% end %>

              <% end %>

          <% end %>