Fix navigation

Fix navigation

<!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>book.me</title>
    <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">

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

          </button>
          <a class="navbar-brand" href=<%= page_path @conn, :index %>>book.me

            <%= if @current_user do %>
              <li class="<%= active?(@conn, 'employees') %>"><a href="<%= employee_path(@conn, :index) %>">Staff

              <li class="<%= active?(@conn, 'services') %>"><a href="<%= service_path(@conn, :index) %>">Services

              <li class="<%= active?(@conn, 'settings') %>"><a href="<%= company_path(@conn, :edit) %>">Settings

            <%= end %>

            <%= if @current_user do %>

                  Logout <%= @current_user.first_name %> (<%= @current_user.company_name %>)

            <%= else %>

Registration

Login

            <%= end %>

<%= 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">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>book.me</title>
    <link rel="stylesheet" href="<%= static_path(@conn, "/css/app.css") %>">

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

          </button>
          <a class="navbar-brand" href=<%= page_path @conn, :index %>>book.me

            <%= if @current_user do %>
              <li class=<%= active?(@conn, 'employees') %>><a href="<%= employee_path(@conn, :index) %>">Staff

              <li class=<%= active?(@conn, 'services') %>><a href="<%= service_path(@conn, :index) %>">Services

              <li class=<%= active?(@conn, 'company') %>><a href="<%= company_path(@conn, :edit) %>">Settings

            <%= end %>

            <%= if @current_user do %>

                  Logout <%= @current_user.first_name %> (<%= @current_user.company_name %>)

            <%= else %>

Registration

Login

            <%= end %>

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

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

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


use minimal ui for ios7 devices.

use minimal ui for ios7 devices.

man, this is so cool.

<!DOCTYPE html>

  <title>Whiteboard</title>
  <meta name="viewport" content="minimal-ui">

  <link rel="stylesheet" type="text/css" href="/static/whiteboard.css" />

  <canvas id="whiteboard" width="500" height="500">
    no support
  </canvas>

    <button id="hideshow">></button>
    <form id="form" style="display:none">

        Color:
        <input type="text" id="pen-color-input" name="penColor" value="#FF0000" size="6" />

        Width:
        <input type="text" id="pen-width-input" name="penWidth" value="4" size="6" />

Users

    </form>

<!DOCTYPE html>

  <title>Whiteboard</title>

  <link rel="stylesheet" type="text/css" href="/static/whiteboard.css" />

  <canvas id="whiteboard" width="500" height="500">
    no support
  </canvas>

    <button id="hideshow">></button>
    <form id="form" style="display:none">

        Color:
        <input type="text" id="pen-color-input" name="penColor" value="#FF0000" size="6" />

        Width:
        <input type="text" id="pen-width-input" name="penWidth" value="4" size="6" />

Users

    </form>


Fixing gallerywalk email

Fixing gallerywalk email

Dear MOOC participants,

The final inquiry activity of our course will be a "Gallery Walk" where we have published all the inquiry lesson designs from the Design Strand, for you to examine and comment upon.  For those of you who are pursuing the verified certificate, this will serve as the graded "lesson critique" inquiry activity from week 6.

We have created a page, where you can survey all the lessons, organized by topic, and leave comments for your peers. You can find it in your week 6 listing, or <a href='<%= Mail.gen_url(id, basename <> "/gallerywalk") %>'>click here to go directly to it.

Thanks again for participating in this summer inquiry course.  We will send one final email with a link to an exit survey and final notes of thanks.

Jim, Rosemary and the MOOC design team

Please don't respond to this email, replies will not be received. Add a message in the Tech issues thread in the forum, if you have any concerns.

Dear MOOC participants,

The final inquiry activity of our course will be a "Gallery Walk" where we have published all the inquiry lesson designs from the Design Strand, for you to examine and comment upon.  For those of you who are pursuing the verified certificate, this will serve as the graded "lesson critique" inquiry activity from week 6.

We have created a page, where you can survey all the lessons, organized by topic, and leave comments for your peers. You can find it in your week 6 listing, or <a href='<%= Mail.gen_url(id, basename <> "gallerywalk") %>'>click here to go directly to it.

Thanks again for participating in this summer inquiry course.  We will send one final email with a link to an exit survey and final notes of thanks.

Jim, Rosemary and the MOOC design team

Please don't respond to this email, replies will not be received. Add a message in the Tech issues thread in the forum, if you have any concerns.


Add # back for .dockerignore comment (#4819)

# This file excludes paths from the Docker build context.
#
# By default, Docker's build context includes all files (and folders) in the
# current directory. Even if a file isn't copied into the container it is still sent to
# the Docker daemon.
#
# There are multiple reasons to exclude files from the build context:
#
# 1. Prevent nested folders from being copied into the container (ex: exclude
#    /assets/node_modules when copying /assets)
# 2. Reduce the size of the build context and improve build time (ex. /build, /deps, /doc)
# 3. Avoid sending files containing sensitive information
#
# More information on using .dockerignore is available here:
# https://docs.docker.com/engine/reference/builder/#dockerignore-file

.dockerignore

# Ignore git, but keep git HEAD and refs to access current commit hash if needed:
#
# $ cat .git/HEAD | awk '{print ".git/"$2}' | xargs cat
# d0b8727759e1e0e7aa3d41707d12376e373d5ecc
.git
!.git/HEAD
!.git/refs

# Common development/test artifacts
/cover/
/doc/
/test/
/tmp/
.elixir_ls

# Mix artifacts
/_build/
/deps/
*.ez

# Generated on crash by the VM
erl_crash.dump

# Static artifacts - These should be fetched and built inside the Docker image
/assets/node_modules/
/priv/static/assets/
/priv/static/cache_manifest.json

# This file excludes paths from the Docker build context.
#
# By default, Docker's build context includes all files (and folders) in the
# current directory. Even if a file isn't copied into the container it is still sent to
# the Docker daemon.
#
# There are multiple reasons to exclude files from the build context:
#
# 1. Prevent nested folders from being copied into the container (ex: exclude
#    /assets/node_modules when copying /assets)
# 2. Reduce the size of the build context and improve build time (ex. /build, /deps, /doc)
# 3. Avoid sending files containing sensitive information
#
# More information on using .dockerignore is available here:
# https://docs.docker.com/engine/reference/builder/#dockerignore-file

.dockerignore

# Ignore git, but keep git HEAD and refs to access current commit hash if needed:
#
$ cat .git/HEAD | awk '{print ".git/"$2}' | xargs cat
# d0b8727759e1e0e7aa3d41707d12376e373d5ecc
.git
!.git/HEAD
!.git/refs

# Common development/test artifacts
/cover/
/doc/
/test/
/tmp/
.elixir_ls

# Mix artifacts
/_build/
/deps/
*.ez

# Generated on crash by the VM
erl_crash.dump

# Static artifacts - These should be fetched and built inside the Docker image
/assets/node_modules/
/priv/static/assets/
/priv/static/cache_manifest.json


Fix `for` block surrounding card-list

Fix `for` block surrounding card-list

<%= render Org.SharedView, "nav.html", assigns %>

    <figure class="card__figure" style="background-image: url(<%= @user.avatar %>)">

          <a href="<%= @user.html_url %>" title="View <%= @user.name %>'s GitHub profile">
            <%= @user.name %> (@<%= @user.login %>)

        <%= cond do %>
          <% @current_user.role == "admin" -> %>

Role: <%= @user.role %>

          <% @user.role == "admin" -> %>

(Admin)

        <% end %>

<%= @user.location %> | <%= @user.company %>

      <%= if @user.blog do %>

<a href="<%= @user.blog %>" title="<%= @user.name %>'s website">Visit Website

      <% end %>

Following: <%= @user.following %>

Followers: <%= @user.followers %>

Repos: <%= @user.public_repos %>

Gists: <%= @user.public_gists %>

<%= @user.bio %>

        <%= if @current_user.role == "admin" do %>
        <%= link "Edit", to: user_path(@conn, :edit, @user), class: "btn btn-default btn-xs" %>

          <%= link "Delete", to: user_path(@conn, :delete, @user), method: :delete, data: [confirm: "Are you sure?"], class: "btn btn-danger btn-xs" %>

        <% end %>

<%= if Enum.empty?(@user.groups) do %>

<%= @user.name %> has not created any groups.

<% else %>

Groups owned by <%= @user.name %>

<% end %>

<%= for group <- @user.groups do %>

        <a href="<%= group.url %>" title="View <%= group.title %>'s Meetup page">
          <%= group.title %>

<%= group.description %>

          <%= if @current_user.role == "admin" do %>
          <%= link "Show Group", to: group_path(@conn, :show, group), class: "btn btn-default btn-xs" %>
          <%= link "Edit", to: group_path(@conn, :edit, group), class: "btn btn-default btn-xs" %>

            <%= link "Delete",
                     to: group_path(@conn, :delete, group),
                     method: :delete,
                     data: [confirm: "Are you sure you want to delete #{group.title}?"],
                     class: "btn btn-danger btn-xs" %>

          <% end %>

<% end %>


Add link to GitHub

Add link to GitHub

<!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>Gomoku</title>
    <link rel="stylesheet" href="/css/phoenix.css">
    <link rel="stylesheet" href="/css/app.css">
    <link rel="icon" type="image/x-icon" href="/images/logo.png">

Gomoku

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

        See on GitHub


Move things and change whitespace

Move things and change whitespace

<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 enemies

    var other_players = []
    var world_state = {}

    function preload () {

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

    }

    function create () {

        cursors = game.input.keyboard.createCursorKeys()

        enemies = game.add.group()

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

        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) {
        if (key == player_id_int) { return }

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

        enemies.add(new_player)

        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 });

    var player
    var cursors
    var player_id
    var player_id_int

    var enemies

    var other_players = []
    var world_state = {}

    function preload () {

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

    }

    function create () {

        enemies = game.add.group()

        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) {
        if (key == player_id_int) { return }

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

        enemies.add(new_player)

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

    })

};

</script>


Show Company on RFID Token list same as Access Log

RFID Tokens
  <%= if @member do %>
    <%= link "Add new RFID token", to: company_member_rfid_token_path(@conn, :new, @member.company, @member), class: "btn btn-default btn-xs" %>
  <% end %>

      Name
      Identifier
      Active?
      <%= unless @member do %>
        Owner
      <% end %>

<%= for rfid_token <- @rfid_tokens do %>

      <%= link RfidToken.display_name(rfid_token), to: rfid_token_path(@conn, :show, rfid_token) %>
      <%= rfid_token.identifier %>
      <%= rfid_token.active %>
      <%= unless @member do %>

          <%= if rfid_token.member do %>
            <% member = rfid_token.member %>
            <%= link member.name, to: company_member_path(@conn, :show, member.company, member) %>

            <%= link member.company.name, to: company_path(@conn, :show, member.company) %>
          <% else %>
            Unassigned
          <% end %>

      <% end %>

        <%= if rfid_token.member do %>
          <%= link "Edit", to: rfid_token_path(@conn, :edit, rfid_token), class: "btn btn-default btn-xs" %>
          <%= link "Deactivate", to: rfid_token_path(@conn, :delete, rfid_token), method: :delete, data: [confirm: "This will deactivate this RFID token and prevent it from being used on any door. Are you sure?"], class: "btn btn-danger btn-xs" %>
        <% else %>
          <%= link "Assign Token", to: rfid_token_path(@conn, :edit, rfid_token), class: "btn btn-default btn-xs" %>
        <% end %>

<% end %>

RFID Tokens
  <%= if @member do %>
    <%= link "Add new RFID token", to: company_member_rfid_token_path(@conn, :new, @member.company, @member), class: "btn btn-default btn-xs" %>
  <% end %>

      Name
      Identifier
      Active?
      <%= unless @member do %>
        Owner
      <% end %>

<%= for rfid_token <- @rfid_tokens do %>

      <%= link RfidToken.display_name(rfid_token), to: rfid_token_path(@conn, :show, rfid_token) %>
      <%= rfid_token.identifier %>
      <%= rfid_token.active %>
      <%= unless @member do %>

          <%= if rfid_token.member do %>
            <% member = rfid_token.member %>
            <%= link member.name, to: company_member_path(@conn, :show, member.company, member) %> (<%= link member.company.name, to: company_path(@conn, :show, member.company) %>)
          <% else %>
            Unassigned
          <% end %>

      <% end %>

        <%= if rfid_token.member do %>
          <%= link "Edit", to: rfid_token_path(@conn, :edit, rfid_token), class: "btn btn-default btn-xs" %>
          <%= link "Deactivate", to: rfid_token_path(@conn, :delete, rfid_token), method: :delete, data: [confirm: "This will deactivate this RFID token and prevent it from being used on any door. Are you sure?"], class: "btn btn-danger btn-xs" %>
        <% else %>
          <%= link "Assign Token", to: rfid_token_path(@conn, :edit, rfid_token), class: "btn btn-default btn-xs" %>
        <% end %>

<% end %>


podcast show view improvements

podcast show view improvements

<%= if @podcast.recommendations != [] do %>

Recommendations

  <%= complain_link() %>

        User
        Recommendation
        Date

      <%= for recommendation <- @podcast.recommendations do %>

            <%= if @current_user && @current_user.id == recommendation.user_id do %>
              <nobr>
                <% text = "👍 " <> @podcast.title <> "%0A💬 " <> truncate(recommendation.comment, 80) <> "%0A🔊 " %>
                <% url = URI.encode_www_form(podcast_frontend_url(@conn, :show, @podcast)) %>
                <%= link "",  to: "https://twitter.com/intent/tweet?text=" <> text <>
                                  "&url=" <> url,
                              class: "social-button twitter-button",
                              title: "Tweet it" %>
                <%= link "",  to: "https://www.facebook.com/sharer/sharer.php?u=" <> url,
                              class: "social-button facebook-button",
                              title: "Share on facebook" %>
                <%= link "",  to: "mailto:?subject=" <> text <> "&body=" <> url,
                              class: "social-button email-button",
                              title: "Send an E-Mail" %>
              </nobr>

            <% end %>
            <%= recommendation.user.name %>

          <%= recommendation.comment %>

            <%= PanWeb.PersonaFrontendView.format_date(recommendation.inserted_at) %>

      <% end %>

<% end %>

<%= render "_recommend_form.html",
           current_user: @current_user,
           changeset: @changeset,
           conn: @conn,
           podcast: @podcast %>

<%= if @podcast.recommendations != [] do %>

Recommendations

  <%= complain_link() %>

        User
        Recommendation
        Date

      <%= for recommendation <- @podcast.recommendations do %>

            <%= if @current_user && @current_user.id == recommendation.user_id do %>
              <nobr>
                <% text = "👍 " <> @podcast.title <> "%0A💬 " <> truncate(recommendation.comment, 80) <> "%0A🔊 " %>
                <% url = URI.encode_www_form(podcast_frontend_url(@conn, :show, @podcast)) %>
                <%= link "",  to: "https://twitter.com/intent/tweet?text=" <> text <>
                                  "&url=" <> url,
                              class: "social-button twitter-button",
                              title: "Tweet it" %>
                <%= link "",  to: "https://www.facebook.com/sharer/sharer.php?u=" <> url,
                              class: "social-button facebook-button",
                              title: "Share on facebook" %>
                <%= link "",  to: "mailto:?subject=" <> text <> "&body=" <> url,
                              class: "social-button email-button",
                              title: "Send an E-Mail" %>
              </nobr>

            <% end %>
            <%= recommendation.user.name %>

          <%= recommendation.comment %>

            <nobr>
              <%= PanWeb.PersonaFrontendView.format_date(recommendation.inserted_at) %>
            </nobr>

      <% end %>

<% end %>

<%= render "_recommend_form.html",
           current_user: @current_user,
           changeset: @changeset,
           conn: @conn,
           podcast: @podcast %>


Additional indentation fixes, missed last time

      <%= for {stock_type, _type_id, _stocks} <- @stock_by_type do %>
        <div class="<%= active(stock_type, @stock_by_type)%>">

            <a href="#<%= stock_type %>" data-toggle="tab"> <%= stock_type %>

      <% end %>

      <%= for {stock_type, type_id, stocks} <- @stock_by_type do %>
          <%= render SharedView,
          "stock_type.html",
          stock_type: stock_type,
          type_id: type_id,
          stock_by_type: @stock_by_type,
          stocks: stocks,
          package: @package,
          credits: @credits
      %>
      <% end %>

        <%= gettext "Thank you for so much logging in!" %>

          <a class="btn btn-default" href="<%= page_path(@conn, :index, @conn.assigns.locale ) %>"><%= gettext "Back" %>
          <%= button(gettext("Log out"), to: user_selection_path(@conn, :delete, @conn.assigns[:user].id, method: :delete), method: "delete", class: "btn btn-default")  %>

      <%= for {stock_type, type_id, _stocks} <- @stock_by_type do %>

 <%= stock_type %> <%= gettext("remaining:") %>

        <span class="js-credit-count credit-type-<%= type_id %>" data-credit-type="<%= type_id %>" >
          <%=  @credits[stock_type] %>

      <%= end %>

        <%= gettext "Shopping Cart" %>

          <%= for distribution <- @distributions do %>
          <%= render SharedView, "distribution.html", distribution: distribution %>
          <% end %>

      <%= form_for @user_order, food_selection_path(@conn, :update, @conn.assigns.locale, @user_order.data.id), fn f -> %>
      <%= hidden_input(f, :finalized, value: true) %>
      <%= submit gettext("Complete your order!") %>
      <% end %>


categories in columns

categories in columns

  <%= @catcount %> Categories with
  <%= @podcount %> Podcasts and
  <%= @epicount %> Episodes and counting...

    <%= for {category, counter} <- Enum.with_index(@categories) do %>

        <span class="btn btn-sm <%= btn_cycle(counter) %>">
        <%= link [fa_icon("folder-o"), " ", C.String.truncate(category.title, 22)],
                 to: category_frontend_path(@conn, :show, category),
                 style: "color: #" <> color_cycle(counter) %>

        <%= if category.children != [] do %>

            <%= for subcategory <- category.children do %>

                <%= link [fa_icon("folder-o"), " ", subcategory.title],
                         to: category_frontend_path(@conn, :show, subcategory),
                         style: "color: #555" %>

            <% end %>

        <% end %>

    <% end %>

Search

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

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

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

        <% end %>

Latest Podcasts

        <%= for podcast <- latest_podcasts do %>

            <%= link [fa_icon("podcast"), " ", C.String.truncate(podcast.title, 50)],
                     to: podcast_frontend_path(@conn, :show, podcast),
                     class: "btn btn-default btn-xs",
                     style: "color: #000" %>

            <%= fa_icon("user") %> <%= podcast.author %>

            <%= fa_icon("calendar") %> <%= podcast.inserted_at && Ecto.DateTime.to_date(podcast.inserted_at) %>

            <%= if podcast.description do %>
              <%= fa_icon("image") %> <%= C.String.truncate(podcast.description, 150) %>
            <% end %>

        <% end %>

Top 10 subscribed Podcasts

        <%= for {[count, id, title], rank} <- Enum.with_index(@popular_podcasts) do %>

            <%= rank + 1 %>.:
            <%= link [fa_icon("podcast"), " ", C.String.truncate(title, 50)],
                     to: podcast_frontend_path(@conn, :show, id),
                     class: "btn btn-default btn-xs",
                     style: "color: #000" %>
            <%= count %> <%= fa_icon("user") %>

        <% end %>

Latest Episodes

        <%= for episode <- latest_episodes do %>

            <%= link [fa_icon("headphones"), " ", C.String.truncate(episode.title, 40)],
                        to: episode_frontend_path(@conn, :show, episode),
                        class: "btn btn-primary btn-xs" %>

            <%= link [fa_icon("podcast"), " ", episode.podcast.title],
                        to: podcast_frontend_path(@conn, :show, episode.podcast),
                        class: "btn btn-default btn-xs",
                        style: "color: #000;" %>

            <%= fa_icon("calendar") %> <%= Ecto.DateTime.to_date(episode.publishing_date) %>

            <%= if episode.duration do %>
              <%= fa_icon("clock-o") %> <%= episode.duration %>

            <%= end %>
            <%= if episode.author do %>
              <%= fa_icon("user") %> <%= episode.author %>

            <%= end %>
            <%= if episode.subtitle do %>
              <%= fa_icon("image") %> <%= episode.subtitle %>
            <%= end %>

        <% end %>


polish

polish

A liquid democracy where anyone can vote on anything.

	Explore polls

Simple, yet powerful

				Delegations

				Not everyone is an expert at everything. That's why you can delegate your vote to people you trust.

				References

				References aim to help voters make more informed decisions. They also allow people not familiar with the subject to quickly learn about it.

				Trust Metrics

				Trust metrics attempt to prevent a single person from having multiple identities. Everyone can choose their own trust metric or create a new one.

				Transparency

				The source code is available under permissive MIT license. All the data is publicly available through the API.

Examples

						Fact Verification

Global Warming Is Caused by Human Activity

9/11 Attacks Were an Inside Job

Sea Level Rise Since Year 1900 in Centimeters

Median Tax Rate in the USA

						Opinions

We Should Implement Universal Basic Income

Number of Refugees We Should Let Inside the EU

						Predictions

Year When We Will Have Artificial General Intelligence

Additional Tax Revenue in USD If Recreational Cannabis Becomes Legal in California

Year When We Will Completely Cure Cancer

Difference in Sea Level From Year 2000 Until Year 2050 in Centimeters

	Liquio is still in early development. You can view the source code on Github. Feedback and contributions are welcome.

A liquid democracy where anyone can vote on anything.

	Explore polls

Simple, yet powerful.

				Delegations

				Not everyone is an expert at everything. That's why you can delegate your vote to people you trust.

				References

				References aim to help voters make more informed decisions. They also allow people not familiar with the subject to quickly learn about it.

				Trust Metrics

				Trust metrics attempt to prevent a single person from having multiple identities. Everyone can choose their own trust metric or create a new one.

				Transparency

				The source code is available under permissive MIT license. All the data is publicly available through the API.

How is this useful?

						Fact Verification

Global Warming Is Caused by Human Activity

9/11 Attacks Were an Inside Job

Sea Level Rise Since Year 1900 in Centimeters

Median Tax Rate in the USA

						Opinions

We Should Implement Universal Basic Income

Number of Refugees We Should Let Inside the EU

						Predictions

Year When We Will Have Artificial General Intelligence

Additional Tax Revenue in USD If Recreational Cannabis Becomes Legal in California

Year When We Will Completely Cure Cancer

Difference in Sea Level From Year 2000 Until Year 2050 in Centimeters

	Liquio is still in early development. You can view the source code on Github. Feedback and contributions are welcome.


add link to blog post in the welcome text

      place
      Welcome to ticket poker.
      Please create your team and start estimating.

            What?

            An online tool to facilitate planning poker for development teams, especially remote or partially-remote teams.

Why?

            I'm working in a distributed development team.
            Also, I wanted to build something using
            Elixir/Phoenix,
            ReactJS
            and websockets.
            This project also uses Materialize CSS
            and clipboard.js

How?

            Just create your team and get started. There are no accounts or passwords. Don't forget to bookmark your team's URL.
            When you create a ticket, share its URL with the members of your team and ask everyone to estimate its size.

            For more information, check out this
            blog post

What prevents someone changing a different person's estimate?

            Wheaton's Law
            If your team is not complying with Wheaton's Law, this tool will not help you.

Who?

            Me:
            [Twitter]
            [Github]
            [Blog]

Source

            The source code is on
            Github.
            Feedback/suggestions/pull requests are very welcome.

      place
      Welcome to ticket poker.
      Please create your team and start estimating.

            What?

            An online tool to facilitate planning poker for development teams, especially remote or partially-remote teams.

           Why?

            I'm working in a distributed development team.
            Also, I wanted to build something using
            Elixir/Phoenix,
            ReactJS
            and websockets.
            This project also uses Materialize CSS
            and clipboard.js

            How?

 Just create your team and get started. There are no accounts or passwords. Don't forget to bookmark your team's URL.

When you create a ticket, share its URL with the members of your team and ask everyone to estimate its size.

What prevents someone changing a different person's estimate?

            Wheaton's Law
            If your team is not complying with Wheaton's Law, this tool will not help you.

            Who?

            Me:
            [Twitter]
            [Github]
            [Blog]

<<<<<<< HEAD

            Feedback/suggestions very welcome.
=======

            Source

            The source code is on
            Github.
            Feedback/suggestions/pull requests are very welcome.
>>>>>>> master


sorry mr. khana

sorry mr. khana

<meta name="description" content="<%=@title%>" />
<meta name="keywords" content="<%=@title <> "" <> copyright(@brand)%>" />
<meta name="author" content="copyright(@brand)%>" />
<meta name="copyright" content="copyright(@brand)%>" />

<meta property="og:title" content="<%=@title%>" />
<meta property="og:type" content="article" />
<meta property="og:image" content="<%=@background_image%>" />
<meta property="og:description" content="<%=@content%>" />

<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="<%=@title%>" />
<meta name="twitter:description" content="<%=@content%>" />
<meta name="twitter:image" content="<%=@background_image%>" />

<div class="two-column" style="background-image: url(<%=@background_image%>);">

    <%= if not @signed do %>

        <%= raw(@content) %>

      <%= form_tag("/petition/#{@slug}", method: :post) %>

          <input type="hidden" name="_csrf_token" value="<%= csrf_token() %>" />

            Name
            <input class="text" type="text" name="name" required="required"/>

            Email
            <input class="text" type="email" name="email" required="required"/>

            Zip
            <input class="text" name="zip" maxlength="5" required="required" />

            <input class="petition-submit" type="submit" value="<%=@sign_button_text%>">

            By signing this petition, I consent to receiving emails from
            <%= if @slug == "jd-stop-war" do %>
              <a target="_blank" href="<%=homepage(@brand)%>"><%=copyright(@brand)%> and
              Ro Khanna.
            <% else %>
              <a target="_blank" href="<%=homepage(@brand)%>"><%=copyright(@brand)%>.
            <% end %>

      </form>

    <% else %>

        <%= raw(@post_sign_text) %>

      <a class="twitter-share-button" href="<%=@twitter_href%>" data-size="large">
        Tweet

      <div class="fb-share-button" data-href="<%=@url%>" data-layout="button_count" data-size="large">
        <a class="fb-xfbml-parse-ignore" target="_blank"
          style="background-color: #3b5998; color: white; padding: 5px; text-decoration: none; margin-top: 5px;"
          href="<%=@fb_href%>"
        >
          Share on Facebook

    <% end %>

<meta name="description" content="<%=@title%>" />
<meta name="keywords" content="<%=@title <> "" <> copyright(@brand)%>" />
<meta name="author" content="copyright(@brand)%>" />
<meta name="copyright" content="copyright(@brand)%>" />

<meta property="og:title" content="<%=@title%>" />
<meta property="og:type" content="article" />
<meta property="og:image" content="<%=@background_image%>" />
<meta property="og:description" content="<%=@content%>" />

<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="<%=@title%>" />
<meta name="twitter:description" content="<%=@content%>" />
<meta name="twitter:image" content="<%=@background_image%>" />

<div class="two-column" style="background-image: url(<%=@background_image%>);">

    <%= if not @signed do %>

        <%= raw(@content) %>

      <%= form_tag("/petition/#{@slug}", method: :post) %>

          <input type="hidden" name="_csrf_token" value="<%= csrf_token() %>" />

            Name
            <input class="text" type="text" name="name" required="required"/>

            Email
            <input class="text" type="email" name="email" required="required"/>

            Zip
            <input class="text" name="zip" maxlength="5" required="required" />

            <input class="petition-submit" type="submit" value="<%=@sign_button_text%>">

            By signing this petition, I consent to receiving emails from
            <%= if @slug == "jd-stop-war" do %>
              <a target="_blank" href="<%=homepage(@brand)%>"><%=copyright(@brand)%> and
              Ro Khanaa.
            <% else %>
              <a target="_blank" href="<%=homepage(@brand)%>"><%=copyright(@brand)%>.
            <% end %>

      </form>

    <% else %>

        <%= raw(@post_sign_text) %>

      <a class="twitter-share-button" href="<%=@twitter_href%>" data-size="large">
        Tweet

      <div class="fb-share-button" data-href="<%=@url%>" data-layout="button_count" data-size="large">
        <a class="fb-xfbml-parse-ignore" target="_blank"
          style="background-color: #3b5998; color: white; padding: 5px; text-decoration: none; margin-top: 5px;"
          href="<%=@fb_href%>"
        >
          Share on Facebook

    <% end %>


tweak handles for adjusting map

tweak handles for adjusting map

overlay opacity

<!- div id="coords">

<input id="opacity" class="range-slider" type="range" value= "0.8" min="0.0" max="1.0" step="0.05" />


conditional redirect

conditional redirect

<script>
  <%= if @brand == "jd" do %>
    window.location.href = 'https://justicedemocrats.com'
  <% else %>
    window.location.href = 'https://brandnewcongress.org'
  <% end %>
</script>
// <div>
  // <%= gettext "Welcome to %{name}", name: "Brand New Congress's new website!" %>
// </div>

<script>
  window.location.href = 'https://brandnewcongress.org'
</script>
// <div>
  // <%= gettext "Welcome to %{name}", name: "Brand New Congress's new website!" %>
// </div>