<% content_for :breadcrumbs do %>

<%= link_to 'Posts', posts_path %>

<%= @post.title %>

<% end %>

    <%= @post.title %>
    <%= render 'votes/vote', post: @post %>

    Posted by: <%= @post.username %> on <%= @post.created_at.strftime("%m/%d/%Y") %>
    <% if policy(@post).update? %>
      | <%= link_to 'Edit', edit_post_path(@post) %>
    <% end %>
    <% if policy(@post).destroy? %>
      | <%= link_to 'Destroy', post_path(@post), method: :delete, data: { confirm: 'Are you sure?' } %>
    <% end %>

    <%= raw @post.body_html %>
    <% if @post.external_post? %>

<%= link_to 'Visit Website', @post.external_url %>

    <% end %>

  <%= render 'tags', post: @post %>

  <% unless @post.external_post? %>

Comments

    <%= render 'comments/form' %>

    <% @post.comments.each do |comment| %>
      <%= render comment %>
    <% end %>
  <% end %>

<% content_for :breadcrumbs do %>

<%= link_to 'Posts', posts_path %>

<%= @post.title %>

<% end %>

    <%= @post.title %>
    <%= render 'votes/vote', post: @post %>

    Posted by: <%= @post.username %> on <%= @post.created_at.strftime("%m/%d/%Y") %>
    <% if policy(@post).update? %>
      | <%= link_to 'Edit', edit_post_path(@post) %>
    <% end %>
    <% if policy(@post).destroy? %>
      | <%= link_to 'Destroy', post_path(@post), method: :delete, data: { confirm: 'Are you sure?' } %>
    <% end %>

    <%= raw @post.body_html %>
    <% if @post.external_post? %>

<%= link_to 'Visit Website', @post.source_url %>

    <% end %>

  <%= render 'tags', post: @post %>

  <% unless @post.external_post? %>

Comments

    <%= render 'comments/form' %>

    <% @post.comments.each do |comment| %>
      <%= render comment %>
    <% end %>
  <% end %>

Fix bug in rendering link to external post


<%= render 'read/popups/subscribe_form' %>

<%= render 'read/popups/unsubscribe_confirm' %>

<%= render 'read/popups/new_folder_form' %>

    <%= render 'read/sidebar/sidebar' %>

      <%= t 'feeds.index.loading' %>

      <%= render 'start', user: @user %>

Hide the "loading..." message until angularjs has finished bootstrapping.


<%= form_for image, url: track_images_path(image.track), method: :post, remote: true do |f| %>

<%= t('images.track_title') %>	<%= image.track.long_title %>

        <%= f.label :cdn_url %>
        <%= f.url_field :cdn_url, placeholder: t('images.image_url_placeholder') %>

        <%= f.label :source %>
        <%= f.url_field :source, placeholder: t('images.source_url_placeholder') %>

        <%= f.label :nickname %>
        <%= f.text_field :nickname, placeholder: t('preferences.nickname_placeholder'), data: {option: 'nickname'} %> (<%= t('images.nickname_tip') %>)

<%= button_tag t('form.preview'), type: 'button', class: 'js-preview' %> <%= f.submit nil, data: {disable: true} %>

  <%= render_object_error_messages(image) %>
<% end %>

<%= form_for image, url: track_images_path(image.track), method: :post, remote: true do |f| %>

<%= t('images.track_title') %>	<%= image.track.long_title %>

        <%= f.label :url %>
        <%= f.url_field :url, placeholder: t('images.image_url_placeholder') %>

        <%= f.label :source %>
        <%= f.url_field :source, placeholder: t('images.source_url_placeholder') %>

        <%= f.label :nickname %>
        <%= f.text_field :nickname, placeholder: t('preferences.nickname_placeholder'), data: {option: 'nickname'} %> (<%= t('images.nickname_tip') %>)

<%= button_tag t('form.preview'), type: 'button', class: 'js-preview' %> <%= f.submit nil, data: {disable: true} %>

  <%= render_object_error_messages(image) %>
<% end %>

Fix url query in image form

Fix url query in image form


<%= link_to "GoBug!", root_path, class: "navbar-brand" %>

              <%= search_form_for @search do |f| %>

<%= f.text_field :description, placeholder: " Search Keyword" %>

<%= f.text_field :location_name_cont, placeholder: " Location", class: "location" %>

<%= f.text_field :usd_cost_gteq, placeholder: " Price from", class: "currency"%>

<%= f.text_field :usd_cost_lteq, placeholder: " Price to" , class: "currency" %>

<%= f.collection_select :category_id_eq, Category.all, :id, :name, include_blank: 'By Category' %>

<%= f.submit "Search" %>

              <% end %>

            <% if session[:user_id] %>

<%= link_to "Log Out", '/logout', method: :delete %>

            <% end %>

Add logout button to nav

Add logout button to nav


<!DOCTYPE html>

    <title>App</title>
    <%= stylesheet_link_tag 'application' %>
    <%= csrf_meta_tag %>

          App

<%= link_to 'Home', root_path %>

<%= link_to 'Purchases', purchases_path %>

<%= link_to 'New Purchase', new_purchase_path %>

      <% flash.each do |type, value| %>
        <div class="alert alert-<%= type.to_s %>">
          ×<%= value %>

      <% end %>
      <%= yield %>

    <%= javascript_include_tag 'application' %>

Revert "Remove javascript include from layout"

This reverts commit e3d01547f48898fcb4bf58e552ac0c7594e4f361.


				<%= link_to msg.user.login, msg.user %>

				le: <%= msg.created_at %>

				Msg deleted: <%= msg.deletion_reason %>

				<%= link_to "Editer", edit_forum_topic_message_path(@forum, @topic, msg), :class => "btn btn-mini" if can?(:edit, msg) %>

Use h4 for pseudo from deleted messages too


var appendTestTrafficLight = function() {
  var testColour = "<%= @test_colour %>";
  var lightsCount = $('.diff-traffic-light').size();
  var img = $('<img>', {
    'src': '/images/bulb_' + testColour + '.png',
    'alt': testColour + ' traffic-light'
  });
  var div = $('<div>', {
    'class': 'diff-traffic-light',
    'data-tip':'simple_review_traffic_light',
    'data-colour': testColour,
    'data-was-tag': lightsCount,
    'data-now-tag': lightsCount + 1
  });
  var td = $('<td>');
  div.append(img);
  td.append(div);
  $('.traffic-lights-count').parent().before(td);
  cd.setupReviewTrafficLight(div);
};

//- - - - - - - - - - - - - - - - - - - - - -

$('#output')
  .html("<%= js_partial('output') %>");

appendTestTrafficLight();

$('.traffic-lights-count')
  .html("<%= js_partial('traffic_lights_count') %>");

$('#traffic-lights-pie-chart')
  .html("<%= js_partial('traffic_lights_pie_chart') %>");

cd.scrollAvatarImageIntoView();

var appendTestTrafficLight = function() {
  var testColour = "<%= @test_colour %>";
  var lightsCount = $('.diff-traffic-light').size();
  var img = $('<img>', {
    'src': '/images/bulb_' + testColour + '.png',
    'alt': testColour + ' traffic-light'
  });
  var div = $('<div>', {
    'class': 'diff-traffic-light',
    'data-tip':'simple_review_traffic_light',
    'data-colour': testColour,
    'data-was-tag': lightsCount,
    'data-now-tag': lightsCount + 1
  });
  var td = $('<td>');
  div.append(img);
  td.append(div);
  $('.traffic-lights-count').parent().before(td);
  cd.setupReviewTrafficLight(div);
};

//- - - - - - - - - - - - - - - - - - - - - -

$('#output')
  .html("<%= js_partial('output') %>");

cd.switchEditorToCodeMirror('output');

appendTestTrafficLight();

$('.traffic-lights-count')
  .html("<%= js_partial('traffic_lights_count') %>");

$('#traffic-lights-pie-chart')
  .html("<%= js_partial('traffic_lights_pie_chart') %>");

cd.scrollAvatarImageIntoView();

Switch 'output' editor back to CodeMirror when the tests have been run


Sign In

<% unless false && Rails.env.production? %>
	<%# leave the links working for dev and test environments %>
	<%= link_to "Sign In With GitHub", "/auth/github" %>

	<%= link_to "Sign In With Twitter", "/auth/twitter" %>
<% else %>
	<%# temporarily disable on production %>
	<%= link_to "Sign In With GitHub", "#", {:class=>'temp-disable-sign-in'} %>

	<%= link_to "Sign In With Twitter", "#", {:class=>'temp-disable-sign-in'}  %>

<% end %>

<% unless Rails.env.production? %>

  <%= link_to "Sign In With Developer", "/auth/developer" %>
<% end %>

Sign In

<%= link_to "Sign In With GitHub", "/auth/github" %>

<%= link_to "Sign In With Twitter", "/auth/twitter" %>

<% unless Rails.env.production? %>

  <%= link_to "Sign In With Developer", "/auth/developer" %>
<% end %>

Clean up since sign in works now.

Clean up since sign in works now.


<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<%= csrf_meta_tags %>

<title>
  <% if content_for? :title %>
    <%= yield :title %>
  <% else %>
    <%= "Spree #{Spree.t('administration')}: " %>
    <%= Spree.t(controller.controller_name, default: controller.controller_name.titleize) %>
  <% end %>
</title>

<%= stylesheet_link_tag 'spree/backend/all', media: :all %>

<%= render 'spree/shared/paths' %>
<%= javascript_include_tag 'spree/backend/all' %>
<%= render "spree/admin/shared/translations" %>

<%= javascript_tag do %>
  <%== "var AUTH_TOKEN = #{form_authenticity_token.inspect};" %>
  <%== "Spree.api_key = '#{try_spree_current_user.spree_api_key}';" if try_spree_current_user %>
  <%== "var ADDRESS_FIELDS = #{Spree::Address::ADDRESS_FIELDS}" %>
<% end %>

<%= yield :head %>

<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<%= csrf_meta_tags %>

<title>
  <% if content_for? :title %>
    <%= yield :title %>
  <% else %>
    <%= "Spree #{Spree.t('administration')}: " %>
    <%= Spree.t(controller.controller_name, default: controller.controller_name.titleize) %>
  <% end %>
</title>

<%= stylesheet_link_tag 'spree/backend/all', media: :all %>

<%= render 'spree/shared/paths' %>
<%= javascript_include_tag 'spree/backend/all' %>
<%= render "spree/admin/shared/translations" %>

<%= javascript_tag do %>
  <%== "var AUTH_TOKEN = #{form_authenticity_token.inspect};" %>
  <%== "Spree.api_key = '#{try_spree_current_user.spree_api_key}';" if try_spree_current_user %>
  <%== "var ADDRESS_FIELDS = #{Spree::Address::ADDRESS_FIELDS}" %>
  <% if Rails.env.test? %>
  jQuery.fx.off = false
  <% end %>
<% end %>

<%= yield :head %>

Disable jQuery animations for Test environment


<%= render "govuk_publishing_components/components/title", {
  title: current_question.text,
} %>
<%= formatted_description %>

<% current_question.options.each do | group | %>
  <%= render "govuk_publishing_components/components/checkboxes", {
    name: "c[]",
    heading: group.label,
    no_hint_text: true,
    items: format_question_options(group.sub_options, criteria_keys)
  } %>
<% end %>

<%= render "govuk_publishing_components/components/title", {
  title: current_question.text,
  margin_bottom: 5
} %>

<%= formatted_description %>

<% if current_question.hint_text.present? %>
  <%= render "govuk_publishing_components/components/hint", {
    text: current_question.hint_text
  } %>
<% end %>

<% current_question.options.each do | group | %>
  <%= render "govuk_publishing_components/components/checkboxes", {
    name: "c[]",
    heading: group.label,
    no_hint_text: true,
    items: format_question_options(group.sub_options, criteria_keys)
  } %>
<% end %>

Support hint text for multiple grouped questions

Previously the hint text was not shown for this question type, but is
required for the work/study question. This adds support for hint text
and adjusts the title margin to be consistent with other question types.


input {
  lumberjack {
    port => 5043
    ssl_certificate => "/var/lib/logstash/lumberjack.crt"
    ssl_key => "/var/lib/logstash/lumberjack.key"
  }
}

filter {
  if [type] == "apache" {
    grok {
      match => [ "message", "%{COMBINEDAPACHELOG} %{NUMBER:duration:int}us %{NOTSPACE:request_id} %{NOTSPACE:ssl_protocol} %{NOTSPACE:ssl_cipher}" ]
    }
    date {
      match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
    }
    if [agent] == "-" {
      mutate {
        remove_field => [ "agent" ]
      }
    } else {
      useragent {
        source => "agent"
        target => "useragent"
      }
      mutate {
        rename => { "agent" => "[useragent][raw]" }
      }
    }
  } else if [type] == "rails" {
    json {
      source => "message"
      remove_field => [
        "message",
        "[parameters][authenticity_token]",
        "[parameters][pass_crypt]",
        "[parameters][pass_crypt_confirmation]",
        "[parameters][utf8]"
      ]
    }
  }
}

output {
  elasticsearch {
    host => [ "127.0.0.1" ]
    cluster => "<%= node[:elasticsearch][:cluster][:name] %>"
  }
}

input {
  lumberjack {
    port => 5043
    ssl_certificate => "/var/lib/logstash/lumberjack.crt"
    ssl_key => "/var/lib/logstash/lumberjack.key"
  }
}

filter {
  if [type] == "apache" {
    grok {
      match => [ "message", "%{COMBINEDAPACHELOG} %{NUMBER:duration:int}us %{NOTSPACE:request_id} %{NOTSPACE:ssl_protocol} %{NOTSPACE:ssl_cipher}" ]
    }
    date {
      match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
    }
    if [agent] == "-" {
      mutate {
        remove_field => [ "agent" ]
      }
    } else {
      useragent {
        source => "agent"
        target => "useragent"
      }
      mutate {
        rename => { "agent" => "[useragent][raw]" }
      }
    }
  } else if [type] == "rails" {
    json {
      source => "message"
      remove_field => [
        "message",
        "[parameters][authenticity_token]",
        "[parameters][pass_crypt]",
        "[parameters][pass_crypt_confirmation]",
        "[parameters][utf8]"
      ]
    }
  }

  if [host] =~ /^spike-/ {
    mutate {
      add_tag => [ "frontend" ]
    }
  } else if [host] =~ /^thorn-/ {
    mutate {
      add_tag => [ "backend" ]
    }
  }
}

output {
  elasticsearch {
    host => [ "127.0.0.1" ]
    cluster => "<%= node[:elasticsearch][:cluster][:name] %>"
  }
}

Tag logstash events as frontend or backend


/* DO NOT EDIT: File is auto-generated */
package <%= to_package(repository.imit.qualified_mock_services_module_name) %>;

<%= description_javadoc_for(repository, "") %>@javax.annotation.Generated( "Domgen" )
@java.lang.SuppressWarnings( { "UnusedDeclaration", "JavaDoc" } )
public class <%= repository.imit.mock_services_module_name %>
  extends com.google.inject.AbstractModule
{
  @java.lang.Override
  protected void configure()
  {
    bind( <%= repository.imit.qualified_client_router_interface_name %>.class ).to( <%= repository.imit.qualified_client_router_impl_name %>.class );
<%
  repository.data_modules.select{|data_module| data_module.imit? && data_module.gwt_rpc?}.each do |data_module|
    data_module.services.select{|service| service.imit? && service.gwt_rpc?}.each do |service|
%>
    bind( <%= service.imit.qualified_name %>.class ).toInstance( org.mockito.Mockito.mock( <%= service.imit.qualified_name %>.class ) );
<%
    end
  end
%>  }
}

Remove extra blank lines in generated code


<script id="transaction_cross_domain_analytics">
  (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','//www.google-analytics.com/analytics.js','ga');

  ga('create', '<%= ga_account_code %>');

  // Load the plugin.
  ga('require', 'linker');

  // Define which domains to autoLink.
  ga('linker:autoLink', ['service.gov.uk']);

  ga('send', 'pageview');

</script>

<script id="transaction_cross_domain_analytics">
  (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();
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', '<%= ga_account_code %>', 'auto', {'name': 'transactionTracker'});

  // Load the plugin.
  ga('require', 'linker');

  // Define which domains to autoLink.
  ga('linker:autoLink', ['service.gov.uk']);

  ga('transactionTracker.send', 'pageview');
</script>

Fix double-inclusion of Universal Analytics

Since https://github.com/alphagov/static/pull/508 was merged the
Universal Analytics code used to support cross-transaction tracking
would be broken.

This commit updates the in-template code as follows:

- Remove dynamic creation of Javascript loader
- Use UA namespacing[0] to namespace the `pageview` beacon sending
  functionality

This commit will need to be released at the same time as the code in the
above pull request to avoid any production issues.

[0] https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#multipletrackers


<%= form_for @quote, remote: true, html: { id: "quote-#{@quote.id}" } do |f| %>

  <%= f.text_area :raw_quote, rows: 10, cols: 70 %>

  <%= f.label :description, 'Optional description:' %>
  <%= f.text_area :description, rows: 2, cols: 70 %>

  <%= f.submit 'Add quote' %>

<% end %>

<%= form_for @quote, remote: true, html: { id: "quote-#{@quote.id}" } do |f| %>

  <%= f.text_area :raw_quote, rows: 10, cols: 70 %>

  <%= f.label :description, 'Optional description:' %>
  <%= f.text_area :description, rows: 2, cols: 70 %>

  <%= f.submit 'Save' %>

<% end %>

Make submit button text more generic

Make submit button text more generic


  <% announcements.each do |announcement| %>

      <% announcement_text = capture do %>
        <% if announcement["href"].present? %>
          <a
            href="<%= announcement["href"] %>"
            class="govuk-link covid__page-header-link"
            data-module="track-click"
            data-track-category="pageElementInteraction"
            data-track-action="Announcements"
            data-track-label="<%= announcement["href"] %>"
          >
            <%= announcement["text"] %>

        <% else %>
          <%= announcement["text"] %>
        <% end %>
      <% end %>
      <%= render "govuk_publishing_components/components/heading", {
        text: announcement_text,
        heading_level: 3,
        font_size: 19,
        inverse: true,
        margin_bottom: 4
      } %>

  <% end %>

  <% announcements.each do |announcement| %>

        <% if announcement["href"].present? %>
          <a
            href="<%= announcement["href"] %>"
            class="govuk-link covid__page-header-link"
            data-module="track-click"
            data-track-category="pageElementInteraction"
            data-track-action="Announcements"
            data-track-label="<%= announcement["href"] %>"
          >
            <%= announcement["text"] %>

        <% else %>
          <%= announcement["text"] %>
        <% end %>

  <% end %>

Remove heading level from announcements

Remove heading level from announcements


    <%= t 'dashboard.search.header' %>

  <%= bootstrap_form_tag url: '/search', remote: true, layout: :inline do |p| %>
    <%= p.hidden_field :locale, value: params[:locale] %>

    <%= p.text_field :search, placeholder: t('dashboard.search.input_placeholder'), hide_label: true, class: 'search_form_input' %>
    <%= p.button class: 'btn btn-primary', title: t('common.search') do %>

    <% end %>
  <% end %>

    <%= t 'dashboard.search.header' %>

  <%= bootstrap_form_tag url: '/search', remote: true, layout: :inline do |p| %>
    <%= p.hidden_field :locale, value: params[:locale] %>

    <%= p.text_field :search, placeholder: t('dashboard.search.input_placeholder'), hide_label: true, class: 'search_form_input' %>
    <%= p.button class: 'btn btn-primary', title: t('common.search'), aria: {label: t('common.search') } do %>

    <% end %>
  <% end %>

Add label for search button

Add label for search button


Inscription

  <%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
    <%= f.error_notification %>

    <% if @captcha.present? %>
     <%= hidden_field_tag 'captcha_uuid', @captcha['uuid'] %>
    <% end %>

      <% if @captcha.present? %>
        <%= f.input :captcha, required: true do %>

Protection anti-spam : veuillez recopier l'extrait ci-dessous.

          <%= image_tag("/captcha/#{@captcha['uuid']}.png", width: '100%', height: 'auto' )%>
          <%= text_field_tag(:user_captcha, nil, class: 'form-control input-lg', autofocus: true) %>
        <% end %>
      <% end %>

      <%= f.input :email, required: true, autofocus: false %>
      <%= f.input :password, required: true, label: 'Mot de passe', hint: ("#{@minimum_password_length} caractères minimum" if @validatable) %>
      <%= f.input :password_confirmation, label: 'Confirmation du mot de passe', required: true %>

      <%= f.button :submit, "S'inscrire" %>

  <% end %>

  <%= render "devise/shared/links" %>

Inscription.

  <%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
    <%= f.error_notification %>

    <% if @captcha.present? %>
     <%= hidden_field_tag 'captcha_uuid', @captcha['uuid'] %>
    <% end %>

      <% if @captcha.present? %>
        <%= f.input :captcha, required: true do %>

Protection anti-spam : veuillez recopier l'extrait ci-dessous.

          <%= image_tag("/captcha/#{@captcha['uuid']}.png", width: '100%', height: 'auto' )%>
          <%= text_field_tag(:user_captcha, nil, class: 'form-control input-lg', autofocus: true) %>
        <% end %>
      <% end %>

      <%= f.input :email, required: true, autofocus: false %>
      <%= f.input :password, required: true, label: 'Mot de passe', hint: ("#{@minimum_password_length} caractères minimum" if @validatable) %>
      <%= f.input :password_confirmation, label: 'Confirmation du mot de passe', required: true %>

      <%= f.button :submit, "S'inscrire" %>

  <% end %>

  <%= render "devise/shared/links" %>

Fix margins on account creation form

Fix margins on account creation form


#!/bin/bash

function create_user {
USER_NAME="$1"
USER_KEY="$2"
# If user doesnot exist, try to create it.
if ! id -u "$USER_NAME" >/dev/null 2>/dev/null; then
  useradd -m -G vcap,bosh_sudoers -s /bin/bash "$USER_NAME"
  USER_HOME=/home/"$USER_NAME"
  mkdir "$USER_HOME"/.ssh
  echo "$USER_KEY" > "$USER_HOME"/.ssh/authorized_keys
  chown -R "$USER_NAME:$USER_NAME" "$USER_HOME"/.ssh
  chmod 700 "$USER_HOME"/.ssh
  chmod 600 "$USER_HOME"/.ssh/authorized_keys
fi
}

<% p('shrc.extra_users').select do | user |
  # Sanity check for username and public key
  user['name'].match(/^[a-z_][a-z0-9_.-]{0,30}$/) and \
  user['public_key'].match(/^ssh-rsa AAAA[0-9A-Za-z\/+]+[=]{0,3} [0-9A-Za-z@_.-]*$/)
end.each do | user | %>
create_user "<%= user['name'] %>" "<%= user['public_key'] %>"
<% end %>

#!/bin/bash
set -eu

function create_user {
  local USER_NAME="$1"

  # If user doesnot exist, try to create it.
  if ! id -u "$USER_NAME" >/dev/null 2>&1; then
    useradd -m -G vcap,bosh_sudoers -s /bin/bash "$USER_NAME"
  fi
}

function inject_key {
  local USER_NAME="$1"
  local USER_KEY="$2"

  local USER_HOME=/home/"$USER_NAME"
  mkdir -p "$USER_HOME"/.ssh
  echo "$USER_KEY" > "$USER_HOME"/.ssh/authorized_keys
  chown -R "$USER_NAME:$USER_NAME" "$USER_HOME"/.ssh
  chmod 700 "$USER_HOME"/.ssh
  chmod 600 "$USER_HOME"/.ssh/authorized_keys
}

function remove_key {
  local USER_NAME="$1"
  local USER_HOME=/home/"$USER_NAME"

  rm -f "$USER_HOME"/.ssh/authorized_keys
}

<% p('shrc.extra_users').each do | user |
  username = user['name']
  userkey = user['public_key']

  # Regex for sanity check
  name_regex = /^[a-z_][a-z0-9_.-]{0,30}$/
  key_regex = /^ssh-rsa AAAA[0-9A-Za-z\/+]+[=]{0,3} [0-9A-Za-z@_.-]*$/

  if username.match(name_regex) %>
create_user "<%= username %>"
<%  if (not userkey.nil?) and userkey.match(key_regex) %>
inject_key "<%= username %>" "<%= userkey %>"
<%  else %>
remove_key "<%= username %>"
<%  end
  end
end %>

Remove extra_user's authorized_keys if key properties is not set.


---
- scm:
    name: tagging-migration-verifier
    scm:
        - git:
            url: git@github.com:alphagov/tagging-migration-verifier.git
            branches:
              - master

- job:
    name: tagging-migration-verifier
    display-name: TaggingMigrationCheck
    project-type: freestyle
    description: "This job checks if taggings are in sync between contentapi and content-store"
    scm:
      - tagging-migration-verifier
    logrotate:
        artifactNumToKeep: 100
    triggers:
        - timed: '0 * * * *' # every hour
    builders:
        - shell: |
            bundle install --path "${HOME}/bundles/${JOB_NAME}"
            bin/verify_migrated_apps
    publishers:
      - trigger-parameterized-builds:
        - project: Success_Passive_Check
          condition: 'SUCCESS'
          predefined-parameters: |
            NSCA_CHECK_DESCRIPTION=<%= @service_description %>
            NSCA_OUTPUT=<%= @service_description %> success
        - project: Failure_Passive_Check
          condition: 'FAILED'
          predefined-parameters: |
            NSCA_CHECK_DESCRIPTION=<%= @service_description %>
            NSCA_OUTPUT=<%= @service_description %> failed
    wrappers:
        - ansicolor:
            colormap: xterm

---
- scm:
    name: tagging-migration-verifier
    scm:
        - git:
            url: git@github.com:alphagov/tagging-migration-verifier.git
            branches:
              - master

- job:
    name: tagging-migration-verifier
    display-name: TaggingMigrationCheck
    project-type: freestyle
    description: "This job checks if taggings are in sync between contentapi and content-store"
    scm:
      - tagging-migration-verifier
    logrotate:
        artifactNumToKeep: 100
    triggers:
        - timed: '0 * * * *' # every hour
    builders:
        - shell: |
            bundle install --path "${HOME}/bundles/${JOB_NAME}"
            bundle exec bin/verify_migrated_apps
    publishers:
      - trigger-parameterized-builds:
        - project: Success_Passive_Check
          condition: 'SUCCESS'
          predefined-parameters: |
            NSCA_CHECK_DESCRIPTION=<%= @service_description %>
            NSCA_OUTPUT=<%= @service_description %> success
        - project: Failure_Passive_Check
          condition: 'FAILED'
          predefined-parameters: |
            NSCA_CHECK_DESCRIPTION=<%= @service_description %>
            NSCA_OUTPUT=<%= @service_description %> failed
    wrappers:
        - ansicolor:
            colormap: xterm

Fix script to run tagging migration verifier

Since we now have a dependency on http, we need to bundle and _also_
run it with `bundle exec`. As opposed to
https://github.com/alphagov/govuk-puppet/pull/4098, I've now actually
tried this change in jenkins first, so I'm pretty sure this actually
works.


<% if !anchor.nil? %>
  <a name="<%= anchor %>">
<% end %>
<div class="sect<%= level %>">
  <h<%= level + 1 %> id="<%= section_id %>"><%= name %></h<%= level + 1 %>>
  <% if !anchor.nil? %>

  <% end %>
  <% if level == 1 %>

<%= content %>

  <% else %>
    <%= content %>
  <% end %>

<div class="sect<%= level %>">
  <% if !anchor.nil? %>
    <a name='<%= anchor %>'>
  <% end %>
  <h<%= level + 1 %> id="<%= section_id %>"><%= name %></h<%= level + 1 %>>
  <% if level == 1 %>

<%= content %>

  <% else %>
    <%= content %>
  <% end %>

Fix anchor href rendering for Section anchors


  <%= f.label field.attribute %>

  <%= f.text_field field.attribute %>

<%#
# Boolean Form Partial

This partial renders an input element for a boolean attribute.
By default, the input is a checkbox.

## Local variables:

- `f`:
  A Rails form generator, used to help create the appropriate input fields.
- `field`:
  An instance of [Administrate::Field::Boolean][1].
  A wrapper around the boolean value pulled from the database.

[1]: http://www.rubydoc.info/gems/administrate/Administrate/Field/Boolean
%>

  <%= f.label field.attribute %>

  <%= f.check_box field.attribute %>

Use checkboxes for Yes/No Boolean Fields

+ Fix #665


Hey <%= @application.first_name %>!

Thanks for applying to Hack Club. We've received your application and you
can expect to hear from us shortly. If you have any questions, please
don't hesitate to email the team at team@hackclub.com. Below is a copy of your
application for your records.

<%= render "club_application/club_application" %>

Hey <%= @application.first_name %>!

Thanks for applying to Hack Club. We've received your application and have added
it to our waitlist for the second semester of the 2017-2018 school year. You can
expect us to get back to you shortly.

If you have any questions, please don't hesitate to email the team at
team@hackclub.com. Below is a copy of your application for your records.

<%= render "club_application/club_application" %>

Add waitlist message to confirmation email


<%#
# HasMany Form Partial

This partial renders an input element for belongs_to relationships.
By default, the input is a collection select box
that displays all possible records to associate with.
The collection select box supports multiple inputs,
and is augmented with [Selectize].

## Local variables:

- `f`:
  A Rails form generator, used to help create the appropriate input fields.
- `field`:
  An instance of [Administrate::Field::HasMany][1].
  Contains helper methods for displaying a collection select box.

[1]: http://www.rubydoc.info/gems/administrate/Administrate/Field/HasMany
[Selectize]: http://brianreavis.github.io/selectize.js
%>

  <%= f.label field.attribute %>

  <%= f.input_field field.attribute, as: :select,
                    collection: field.associated_resource_options,
                    selected: field.selected_options,
                    include_blank: true,
                    multiple: true %>
  <%= f.error field.attribute %>
  <%= f.hint field.attribute %>

<%#
# HasMany Form Partial

This partial renders an input element for belongs_to relationships.
By default, the input is a collection select box
that displays all possible records to associate with.
The collection select box supports multiple inputs,
and is augmented with [Selectize].

## Local variables:

- `f`:
  A Rails form generator, used to help create the appropriate input fields.
- `field`:
  An instance of [Administrate::Field::HasMany][1].
  Contains helper methods for displaying a collection select box.

[1]: http://www.rubydoc.info/gems/administrate/Administrate/Field/HasMany
[Selectize]: http://brianreavis.github.io/selectize.js
%>

  <%= f.label field.attribute %>

  <%= f.input_field field.attribute_key, as: :select,
                    collection: field.associated_resource_options,
                    selected: field.selected_options,
                    include_blank: true,
                    multiple: true %>
  <%= f.error field.attribute_key %>
  <%= f.hint field.attribute_key %>

Fix has many field attribute key

Fix has many field attribute key


    <%= render partial: "progress_updates/progress_update_content", locals: {progress_update: @update} %>

<%= render @update.comments %>

    <% if can? :create, Comment %>

Add New Comment

        <%= form_for [@update.project, @update, @comment] do |f| %>
            <%= f.text_area :content, class: "form-control" %>

            <button class="btn btn-primary">Add Comment</button>
        <% end %>

    <% end %>

    <%= link_to 'next', project_progress_update_path(@update.project, @update.next) if @update.next %>
    <%= link_to 'prev', project_progress_update_path(@update.project, @update.prev) if @update.prev %>

    <%= edit_update_link(@update) %>
    <%= delete_update_link(@update) %>

    <%= render partial: "progress_updates/progress_update_content", locals: {progress_update: @update} %>

<%= render @update.comments %>

    <% if can? :create, Comment %>

Add New Comment

        <%= form_for [@update.project, @update, @comment] do |f| %>
            <%= f.text_area :content, class: "form-control" %>

            <button class="btn btn-primary">Add Comment</button>
        <% end %>

    <% end %>

    <%= edit_update_link(@update) %>
    <%= delete_update_link(@update) %>

Browse updates for this project:

        <% if @update.prev %>
            <%= link_to 'Previous', project_progress_update_path(@update.project, @update.prev), class: "next-prev-link" %>
        <% end %>

        <% if @update.next %>
            <%= link_to 'Next', project_progress_update_path(@update.project, @update.next), class: "next-prev-link" %>
        <% end %>

Adjust styling of progress update next/prev links


<% content_for :sidebar do %>
  <%= render 'related_items' %>
<% end %>

<% start_node = @presenter.start_node %>

<% if start_node.meta_description.present? %>
  <% content_for :head do %>
    <meta name="description" content="<%= start_node.meta_description %>">
  <% end %>
<% end %>

<%= render partial: 'page_title', locals: { title: start_node.title } %>

  <article role="article" class="group" data-debug-template-path="<%= start_node.relative_erb_template_path %>">

        <%= start_node.body %>

          <a rel="nofollow" href="<%= smart_answer_path(@name, started: 'y') %>" class="big button"><%= start_button %>

      <%= start_node.post_body %>

<% content_for :sidebar do %>
  <%= render 'related_items' %>
<% end %>

<% start_node = @presenter.start_node %>

<% if start_node.meta_description.present? %>
  <% content_for :head do %>
    <meta name="description" content="<%= start_node.meta_description %>">
  <% end %>
<% end %>

<%= render partial: 'page_title', locals: { title: start_node.title } %>

  <article role="article" class="group" data-debug-template-path="<%= start_node.relative_erb_template_path %>">

        <%= start_node.body %>

          <a rel="nofollow" href="<%= start_button_href %>" class="big button"><%= start_button %>

      <%= start_node.post_body %>

Update to use start_button_href helper

Update to use start_button_href helper

This commit updates the start button link href with the start_button_href


This is the HOME page

About

Experience

Skills

Education

Achievments

- Link to Projects -

Add basic layout for main page

Add basic layout for main page


<form class="form-horizontal" role="form">

Registration

  <%= form_for :user, url: { action: "create" } do |f| %>
  <%= render partial: 'shared/error_messages', locals: { object: @user } %>

      <%= f.label :username %>

      <%= f.text_field :username, class: 'form-control' %>

      <%= f.label :email %>

      <%= f.text_field :email, class: 'form-control' %>

      <%= f.label :password %>

      <%= f.password_field :password, class: 'form-control'  %>

    <input class="btn btn-default" <%= f.submit "Create account" %>

  <% end %>

</form>

Are you a judge? Click <%= link_to "here", judges_register_path %> to register.

</form>

Registration

  <%= render partial: 'shared/error_messages', locals: { object: @user } %>

  <%= form_for :user, url: { action: "create" } do |f| %>

      <%= f.label :username %>
      <%= f.text_field :username, class: 'form-control' %>

      <%= f.label :email %>
      <%= f.text_field :email, class: 'form-control' %>

      <%= f.label :password %>
      <%= f.password_field :password, class: 'form-control'  %>

    <%= f.submit "Create account", class: "btn btn-default" %>

  <% end %>

Are you a judge? Click <%= link_to "here", judges_register_path %> to register.

Fix issues with new user form

Fix issues with new user form


<%= t('admin.budgets.show.groups', count: groups.count) %>

<% if groups.blank? %>

    <%= t("admin.budgets.form.no_groups") %>
    <%= link_to t("admin.budgets.form.add_group"), "#",
                class: "js-toggle-link",
                data: { "toggle-selector" => "#new-group-form" } %>

<% else %>
  <%= link_to t("admin.budgets.form.add_group"), "#", class: "button float-right js-toggle-link", data: { "toggle-selector" => "#new-group-form" } %>
<% end %>

<%= render 'admin/budgets/group_form', budget: @budget, group: Budget::Group.new, id: "new-group-form", button_title: t("admin.budgets.form.create_group"), css_class: '' %>

<% groups.each do |group| %>
  <div id="<%= dom_id(group) %>">
    <%= render "admin/budgets/group", group: group, headings: group.headings %>

<% end %>

<%= t('admin.budgets.show.groups', count: groups.count) %>

<% if groups.blank? %>

    <%= t("admin.budgets.form.no_groups") %>
    <%= link_to t("admin.budgets.form.add_group"), "#",
                class: "js-toggle-link",
                data: { "toggle-selector" => "#new-group-form" } %>

<% else %>
  <%= link_to t("admin.budgets.form.add_group"), "#", class: "button float-right js-toggle-link", data: { "toggle-selector" => "#new-group-form" } %>
<% end %>

<%= render 'admin/budgets/group_form', budget: @budget, group: Budget::Group.new, id: "new-group-form", button_title: t("admin.budgets.form.create_group"), css_class: '' %>

<% groups.each do |group| %>
  <div id="<%= dom_id(group) %>">
    <%= render "admin/budgets/group", group: group, headings: group.headings.order(:id) %>

<% end %>

Order budget headings by id

Order budget headings by id

To maintain order after editing a heading’s name

We should probably add timestamps to `groups` and `headings` and order
by `created_at` instead

Could have done it in a separate PR, but gotta keep moving to other
priority issues. Creating issue for timestamps to do correctly and with
tests :relieved:


<% provide(:meta_description, "Paul Bogard’s portfolio of programming, engineering, mapping, and other projects.")%>

<%= link_buttons(
  LinkButton.new("Paul’s Résumé", "resume", resume_path),
  LinkButton.new("Paul’s GitHub repositories", "github", "https://github.com/bogardpd/", target: :_blank)
  ) %>

Projects

  <%= project_tag_badges(@tags) %>

<% if @projects.any? %>

    <%= render partial: "project_tile", collection: @projects, as: :project %>

<% elsif params[:tag] %>

No projects have the tag <%= params[:tag] %>!

<%= link_to("All projects", projects_path) %>

<% else %>

Could not load projects!

<% end %>

<% provide(:meta_description, "Paul Bogard’s portfolio of programming, engineering, mapping, and other projects.")%>

<%= link_buttons(
  LinkButton.new("Paul’s Résumé", "resume", resume_path),
  LinkButton.new("Paul’s GitHub repositories", "github", "https://github.com/bogardpd/", target: :_blank)
  ) %>

Projects<% if params[:tag] && tag = Project.all_tags[params[:tag].to_sym] %> (<%= tag[:name] %>)<% end %>

  <%= project_tag_badges(@tags) %>

<% if @projects.any? %>

    <%= render partial: "project_tile", collection: @projects, as: :project %>

<% elsif params[:tag] %>

No projects have the tag <%= params[:tag] %>!

<%= link_to("All projects", projects_path) %>

<% else %>

Could not load projects!

<% end %>

Add active tag to Projects title

Add active tag to Projects title


  <%= render_flash_messages %>
  <%= content_tag :div, class: 'button-field' do %>
    <%= link_to t('upload.niconico.new_track'), new_upload_niconico_path, class: 'button', remote: true %>
  <% end %>
  <% if @tracks.length > 0 %>
    <%= render_niconico_track_list(@tracks) %>
  <% else %>

尚無任何歌曲上傳

  <% end %>

<%= render_debug_information %>

  <%= render_flash_messages %>
  <%= content_tag :div, class: 'button-field' do %>
    <%= button_tag t('upload.niconico.new_track'), class: 'button', disabled: 'disabled' %>
  <% end %>
  <% if @tracks.length > 0 %>
    <%= render_niconico_track_list(@tracks) %>
  <% else %>

尚無任何歌曲上傳

  <% end %>

<%= render_debug_information %>

Disable niconico new track button

Disable niconico new track button


    <%= guide.title %>

    <%= link_to 'Edit', [:admin, guide] %>
    <%= link_to 'Preview', '#' %>

    <%= guide.title %>

    <%= link_to 'Edit', [:admin, guide] %>
    <%= link_to 'Preview', preview_edition_path(guide.latest_edition) %>

Set up preview link from guides index

Set up preview link from guides index


<!DOCTYPE html>

  <meta charset="utf-8" />
  <title><%= full_title(yield(:title)) %></title>
  <link href='http://fonts.googleapis.com/css?family=Open+Sans:400,300,800' rel='stylesheet' type='text/css'>
  <link href='http://fonts.googleapis.com/css?family=Lato:100,400,900' rel='stylesheet' type='text/css'>
  <%= stylesheet_link_tag :application, :media => 'all' %>

  <%= csrf_meta_tags %>

<body class="<%= body_class %>">
  <%= render :partial => 'shared/navigation' %>

      <%= render 'shared/flashes' -%>
      <%= yield %>

  <%= render :partial => 'shared/footer' %>
  <%= render 'shared/javascript' %>

Add HTML5 Shim for IE < 9

Add HTML5 Shim for IE < 9


<!DOCTYPE html>
<html lang="en" ng-app="grumbles">
  <head>
    <title>Grumbles the lame Wizard</title>

    <%= stylesheet_link_tag    :application, media: :all %>
    <%= javascript_include_tag :application %>

    <%= csrf_meta_tags %>
  </head>
  <body>

    <%= yield %>

  </body>
</html>

<!DOCTYPE html>
<html lang="en" ng-app="grumbles">
  <head>
    <title>Grumbles the lame Wizard</title>

    <%= stylesheet_link_tag    :application, media: :all %>
    <%= javascript_include_tag :application %>

    <%= csrf_meta_tags %>
  </head>
  <body>

    <%= yield %>

    <!-- Place this before your </body> tag. -->
    <script type="text/javascript">
      var rumbleBannerBackgroundColor, rumbleBannerTextColor, rumbleBannerLinkColor, rumbleBannerPlacement;
      rumbleBannerBackgroundColor = "#161616";
      rumbleBannerTextColor = "#b0b0b0";
      rumbleBannerLinkColor = "#ffffff";
      rumbleBannerPlacement = "top";
    </script>
    <script src="http://s0.railsrumble.com/banner-2014.js" type="text/javascript"></script>

  </body>
</html>

Add vote banner at the top

Add vote banner at the top


<!DOCTYPE html>

    <meta charset="utf-8" />
    <title><%= yield :title %> - GOV.UK</title>
    <%= stylesheet_link_tag "application.css" %>

    <%= javascript_include_tag "application" %>
    <meta name="description" content="Work out the Child Benefit you've received and your High Income Child Benefit tax charge">
    <%= yield :head %>
    <%= render partial: 'govuk_component/analytics_meta_tags', locals: { content_item: @content_item } %>
    <% if @meta_section %>
      <meta name="govuk:section" content="<%= @meta_section %>">
    <% end %>

  <body class="mainstream <%= yield :body_classes %>">

    <div id="wrapper" class="<%= yield :wrapper_classes %>">
      <%= render partial: 'govuk_component/breadcrumbs', locals: @navigation_helpers.breadcrumbs %>
      <%= yield %>

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <title><%= yield :title %> - GOV.UK</title>
    <!--[if gt IE 8]><!--><%= stylesheet_link_tag "application.css" %><!--<![endif]-->
    <!--[if IE 6]><%= stylesheet_link_tag "application-ie6.css" %><![endif]-->
    <!--[if IE 7]><%= stylesheet_link_tag "application-ie7.css" %><![endif]-->
    <!--[if IE 8]><%= stylesheet_link_tag "application-ie8.css" %><![endif]-->
    <%= javascript_include_tag "application" %>
    <meta name="description" content="Work out the Child Benefit you've received and your High Income Child Benefit tax charge">
    <%= yield :head %>
    <%= render partial: 'govuk_component/analytics_meta_tags', locals: { content_item: @content_item } %>
    <% if @meta_section %>
      <meta name="govuk:section" content="<%= @meta_section %>">
    <% end %>
  </head>

  <body class="mainstream <%= yield :body_classes %>">
    <div id="wrapper" class="<%= yield :wrapper_classes %>">
      <%= render partial: 'govuk_component/breadcrumbs', locals: @navigation_helpers.breadcrumbs %>
      <%= yield %>
    </div>
  </body>
</html>

Remove redundant tag for removing breadcrumb

This app uses the GOV.UK Component to render the breadcrumb. The tag
removed in this was previously necessary to instruct Slimmer to hide
the old breadcrumb. We no longer need it because the CSS and HTML have
been completely removed from static in
https://github.com/alphagov/static/pull/879.

https://trello.com/c/7wohUbyo


<% page_header "Your Conversations" %>

   <%= render partial: 'conversations/conversation', collection: @conversations %>

<%= will_paginate %>

<% page_header "Your Conversations" %>

<%= link_to 'Start conversation', new_message_path, class: 'btn btn-lg btn-primary' %>

   <%= render partial: 'conversations/conversation', collection: @conversations %>

<%= will_paginate %>

Add link to create a conversation to conv index


<% provide(:title, @user.name) %>

Home

Your Initiatives

    <% @user.initiatives.each do |i| %>

<%= link_to i.name, i %>

<icon class="glyphicon glyphicon-map-marker"></icon> Location:

<%= i.location %>

<icon class="glyphicon glyphicon-info-sign"></icon> Description:

<%= i.description %>

Initiative Members:

          <% i.users.each do |x| %>

            <%= x.name %> -
            <%= x.telephone %>

          <% end %>

    <% end %>

<% provide(:title, @user.name) %>

Home

Your Initiatives

    <% @user.initiatives.each do |i| %>
      <% unless i.archived %>

<%= link_to i.name, i %>

<icon class="glyphicon glyphicon-map-marker"></icon> Location:

<%= i.location %>

<icon class="glyphicon glyphicon-info-sign"></icon> Description:

<%= i.description %>

Initiative Members:

              <% i.users.each do |x| %>
                <% unless x.archived %>

                    <%= x.name %> -
                    <%= x.telephone %>

                <% end %>
              <% end %>

      <% end %>
    <% end %>

Hide archived pages on volunteer homepage.


<% content_for :thredded_page_title, 'Edit Post' %>
<% content_for :thredded_page_id, 'thredded--edit-post' %>
<% content_for :thredded_breadcrumbs do %>

<%= link_to t('thredded.nav.edit_post'), edit_post_path(@post) %>

<% end %>

<%= thredded_page do %>

    <%= render 'thredded/posts/form',
               messageboard: messageboard,
               topic:        topic,
               post:         @post,
               button_text:  t('thredded.posts.form.update_btn'),
               button_submitting_text: t('thredded.posts.form.update_btn_submitting')%>

<% end %>

<% content_for :thredded_page_title, 'Edit Post' %>
<% content_for :thredded_page_id, 'thredded--edit-post' %>
<% content_for :thredded_breadcrumbs do %>

<%= link_to t('thredded.nav.edit_post'), edit_post_path(@post) %>

<% end %>

<%= thredded_page do %>

    <%= render 'thredded/posts/form',
               messageboard: (messageboard unless @post.private_topic_post?),
               topic:        topic,
               post:         @post,
               button_text:  t('thredded.posts.form.update_btn'),
               button_submitting_text: t('thredded.posts.form.update_btn_submitting')%>

<% end %>

Fix private post edit form

Fix private post edit form


Sarah,

Make me a sandwich.

        <button class="sign-up">Sign up with Google</button>

Sarah,

Make me a sandwich.

        <button class="sign-up">Get started</button>

Update home page button text.

Update home page button text.


<%= render 'partials/header' %>

 Profile Page

Hello <%= @user.name.capitalize %>.

<%= link_to 'New Mirror', new_mirror_path, class: 'new-mirror', remote: true %>

<%= link_to 'New Mirror User', user_mirrors_path, class: 'mirrors-link', remote: true %>

  <%= link_to "Edit", edit_user_path(@user), remote: true %>

Add background to users's shwo page

Add background to users's shwo page


<% can_delete = herbarium.can_delete_curator?(@user) || is_in_admin_mode? %>

      <th colspan="<%= can_delete ? 2 : 1 %>">
        <%= pluralize(herbarium.curators.length, :herbarium_curator.t) + ":" %>

    <% herbarium.curators.each do |user| %>

        <% if can_delete %>

            <%= link_to("X", {action: :delete_curator, id: herbarium.id, user: user.id},
                             {data: {confirm: :are_you_sure.t}}) %>

        <% end %>

          <%= user_link(user, user.legal_name) %>

    <% end %>

<% can_delete = herbarium.can_delete_curator?(@user) || is_in_admin_mode? %>

      <th colspan="<%= can_delete ? 2 : 1 %>">
        <%= pluralize(herbarium.curators.length, :herbarium_curator.t) + ":" %>

    <% herbarium.curators.each do |user| %>

        <% if can_delete %>

            <%= link_to("X ", {action: :delete_curator, id: herbarium.id, user: user.id},
                             {data: {confirm: :are_you_sure.t}}) %>

        <% end %>

          <%= user_link(user, user.legal_name) %>

    <% end %>

Add space after x in remove curator on herbarium.


Requests#index

Find me in app/views/railitics/requests/index.html.erb

<% @requests.each do |request| %>

    <%= request.method %>
    <%= request.controller %>
    <%= request.action %>
    <%= request.user_id || request.uuid %>
    <%= request.referrer %>

<% end %>

  <%= link_to "Railitics", root_path %>

      Method
      Controller
      Action
      User ID or Request UUID
      Referral URL
      Time

    <% @requests.each do |request| %>

        <%= request.method %>
        <%= request.controller %>
        <%= request.action %>
        <%= request.user_id ? link_to(request.user_id, root_path(user_id: request.user_id)) : link_to(request.uuid, root_path(uuid: request.uuid)) %>
        <%= request.referrer %>
        <%= request.created_at.to_s %>

    <% end %>

Add request output to a table

Add request output to a table


<% political_membership = role_appointment.historical_account.try(:political_membership) %>
<%= content_tag_for :div, role_appointment, class: 'govuk-grid-column-one-quarter', role: "listitem" do %>
  <% if role_appointment.has_historical_account? %>
    <%= render "govuk_publishing_components/components/image_card", {
      href: historic_appointment_path(role_appointment.person),
      image_src: role_appointment.person.image_url(:s216),
      image_loading: "lazy",
      heading_text: role_appointment.person.name,
      extra_details: previous_dates_in_office_prime(role, role_appointment.person, political_membership),
      extra_details_no_indent: true
    } %>
  <% else %>
    <%= render "govuk_publishing_components/components/image_card", {
      image_src: role_appointment.person.image_url(:s216),
      image_loading: "lazy",
      heading_text: role_appointment.person.name,
      extra_details: previous_dates_in_office_prime(role, role_appointment.person, political_membership),
      extra_details_no_indent: true
    } %>
  <% end %>
<% end %>

<% political_membership = role_appointment.historical_account.try(:political_membership) %>
<%= content_tag_for :div, role_appointment, class: 'govuk-grid-column-one-quarter', role: "listitem" do %>
  <% if role_appointment.has_historical_account? %>
    <%= render "govuk_publishing_components/components/image_card", {
      href: historic_appointment_path(role.historic_param, role_appointment.person),
      image_src: role_appointment.person.image_url(:s216),
      image_loading: "lazy",
      heading_text: role_appointment.person.name,
      extra_details: previous_dates_in_office_prime(role, role_appointment.person, political_membership),
      extra_details_no_indent: true
    } %>
  <% else %>
    <%= render "govuk_publishing_components/components/image_card", {
      image_src: role_appointment.person.image_url(:s216),
      image_loading: "lazy",
      heading_text: role_appointment.person.name,
      extra_details: previous_dates_in_office_prime(role, role_appointment.person, political_membership),
      extra_details_no_indent: true
    } %>
  <% end %>
<% end %>

Revert "Fix past prime minister href"

Revert "Fix past prime minister href"

This reverts commit 9bfccc03b682f999791e210e86a14bd61f6b6316.

Work done to simplify routes in whitehall was slightly more complex than expected. Reverting this commit, along with another, until we can unpick it more cleanly.


      <%= image_tag "logo.png", :width => 253, :height => 55 %>

      <%= image_tag "05.png" %>

      <%= image_tag "by.png", :width => 158, :height => 38 %>

<%= link_to "How does giftoppr work?", "/how-does-giftoppr-work" %>

      <% if user_signed_in? %>

Hi <%= link_to current_user.name, current_user %>!

<%= link_to "Logout", auth_logout_path, :method => :delete %>

      <% else %>

<%= link_to "Signin with Dropbox", auth_path(:dropbox) %>

      <% end %>

      <%= image_tag "logo.png", :width => 253, :height => 55 %>

      <%= image_tag "05.png" %>

      <%= image_tag "by.png", :width => 158, :height => 38 %>

<%= link_to "How does giftoppr work?", "/how-does-giftoppr-work" %>

      <% if user_signed_in? %>

<%= link_to "Hi #{current_user.name}!", current_user %>

<%= link_to "Logout", auth_logout_path, :method => :delete %>

      <% else %>

<%= link_to "Signin with Dropbox", auth_path(:dropbox) %>

      <% end %>

Update header text for signed in user

Update header text for signed in user


<%= render :partial => @aside %>

Site Navigation

<%= link_to "Home", root_path %>

Remove the Home link from the sidebar.

Remove the Home link from the sidebar.


<% content_for :header_nav do %>
  <%= render "buckets/navbar" %>
<% end %>

# Ship List for <%= @ship_list %>

    <% @ship_list.issues.each do |issue| %>

* <%= issue.title %>

    <% end %>

<% content_for :header_nav do %>
  <%= render "buckets/navbar" %>
<% end %>

# Ship List for <%= @ship_list %>

    <% @ship_list.issues.each do |issue| %>

* [<%= issue.title %>](<%= github_issue_url(issue) %>)

    <% end %>

Make issue title markdown link

Make issue title markdown link


<%- if @customer.id.present? -%>
  <%= link_to @customer.name, @customer %>
<%- else -%>
  <%= autocomplete_field_tag 'customer_name', '', autocomplete_customers_path,
      :size => 30,
      :update_elements => {
        :id              => '#trip_customer_id,#trip_customer_attributes_id',
        :phone_number_1  => '#trip_customer_attributes_phone_number_1',
        :phone_number_2  => '#alt_phone',
        :mobility_notes  => '#mobility_notes',
        :mobility_id     => '#trip_mobility_id',
        :private_notes   => '#customer_private_notes',
        :group           => '#trip_group',
        :address_id      => "#trip_pickup_address_id",
        :address         => "#pickup_search_address"
      } %>

  <input type="button" name="new_customer" value="New Customer" id="new_customer" data-path="<%= new_customer_path %>">
<%- end -%>

<%- if @customer.id.present? -%>

    <%= link_to @customer.name, @customer %>
        (Change Customer)

<% end %>
<%= autocomplete_field_tag 'customer_name', @customer.try(:name), autocomplete_customers_path,
    :size => 30,
    :update_elements => {
      :id              => '#trip_customer_id,#trip_customer_attributes_id',
      :phone_number_1  => '#trip_customer_attributes_phone_number_1',
      :phone_number_2  => '#alt_phone',
      :mobility_notes  => '#mobility_notes',
      :mobility_id     => '#trip_mobility_id',
      :private_notes   => '#customer_private_notes',
      :group           => '#trip_group',
      :address_id      => "#trip_pickup_address_id",
      :address         => "#pickup_search_address"
    },
    :style => @customer.id.present? ? 'display: none' : ''
%>
<%- if !@customer.id.present? -%>
  <input type="button" name="new_customer" value="New Customer" id="new_customer" data-path="<%= new_customer_path %>">
<%- end -%>
<%= javascript_tag do %>
  $('#change_trip_customer_link').click(function(event){
    event.preventDefault();
    $('#trip_customer_name_wrapper').hide();
    $('#customer_name').show();
  });
<% end %>

Add the ability to change the customer for an existing trip record


<%
   comments = object.comments.sort_by(&:created_at).reverse
   if limit
     and_more = comments.length - limit
     comments = comments[0..limit-1]
   end
%>

      <%= content_tag(:h4, comments.empty? ? :"show_comments_no_comments_yet".t : :COMMENTS.t) %>

      <%= link_with_query(:"show_comments_add_comment".t, {controller: :comment,
                            action: :add_comment, id: object.id, type: object.class.name}) if controls
          %>

<% comments.each do |comment| %>
    <%= render(:partial => 'comment/comment', :object => comment) %>
<% end %>

<%= if limit and (and_more > 0)
      link_to(:show_comments_and_more.t(:num => and_more),
              {controller: :comment, action: :show_comments_for_target, id: object.id, type: object.class.name})
    end %>

<%
   comments = object.comments.sort_by(&:created_at).reverse
   if limit
     and_more = comments.length - limit
     comments = comments[0..limit-1]
   end
%>

    <%= content_tag(:h4, comments.empty? ? :"show_comments_no_comments_yet".t : :COMMENTS.t, style: "display: inline-block") %>
    <%= link_with_query(:"show_comments_add_comment".t,
                        {controller: :comment, action: :add_comment, id: object.id, type: object.class.name},
                        style: "margin-left: 10px;") if controls     %>

<% comments.each do |comment| %>
    <%= render(:partial => 'comment/comment', :object => comment) %>
<% end %>

<%= if limit and (and_more > 0)
      link_to(:show_comments_and_more.t(:num => and_more),
              {controller: :comment, action: :show_comments_for_target, id: object.id, type: object.class.name})
    end %>

Add comment link was hidden under images, took me about 5 seconds to find it, most users probably would take longer to find it.


       <%= t 'feeds.index.start' %>

    <%= render 'feeds/sidebar/sidebar_folder', user: @user, feeds: @feeds, title: t('feeds.index.all_feeds'), folder_id: 'all' %>

    <% @folders.each do |folder| %>

      <%= render 'feeds/sidebar/sidebar_folder', user: @user, feeds: folder.feeds, title: folder.title, folder_id: folder.id %>

    <% end %>

       <%= t 'feeds.index.start' %>

    <%= render 'feeds/sidebar/sidebar_folder', user: @user, feeds: @feeds, title: t('feeds.index.all_feeds'), folder_id: 'all' %>

    <% @folders.all(order: 'title ASC').each do |folder| %>

      <%= render 'feeds/sidebar/sidebar_folder', user: @user, feeds: folder.feeds, title: folder.title, folder_id: folder.id %>

    <% end %>

Order folders in the sidebar by alphabetical title order.


<!DOCTYPE html>
<html lang="<%= set_user_language %>">

<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1">
<%= csrf_meta_tags %>
<title><%= t('.title') %></title>
<%= stylesheet_link_tag 'login', media: 'all' %>
<%= javascript_include_tag 'login' %>
<link rel="mask-icon" href="pinned-masterlab.svg" color="#993399">

<%= link_to "MasterLab", "http://www.labtecsa.com" %>

  <% if alert.present? %>

      ERROR:
      <%= alert %>

  <% elsif notice.present? %>

      <%= notice %>

  <% end %>
  <%= yield %>

<!DOCTYPE html>
<html lang="<%= set_user_language %>">

<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1">
<meta property="og:image" content="apple-touch-icon.png" />
<%= csrf_meta_tags %>
<title><%= t('.title') %></title>
<%= stylesheet_link_tag 'login', media: 'all' %>
<%= javascript_include_tag 'login' %>
<link rel="mask-icon" href="pinned-masterlab.svg" color="#993399">

<%= link_to "MasterLab", "http://www.labtecsa.com" %>

  <% if alert.present? %>

      ERROR:
      <%= alert %>

  <% elsif notice.present? %>

      <%= notice %>

  <% end %>
  <%= yield %>

Add icon to the suggested sites using OpenGraph


<% content_for header do %>
  <%= stylesheet_link_tag 'zenbox', media: :all %>
<% end %>

<%= javascript_include_tag 'zenbox' %>

<script type="text/javascript">
  if (typeof(Zenbox) !== "undefined") {
    Zenbox.init({
      dropboxID:   "<%= config[I18n.locale][:id] %>",
      url:         "<%= config[I18n.locale][:url] %>",
      tabColor:    "#008000",
      tabTooltip:  "Feedback",
      tabPosition: "Right",
      hide_tab:    "true"
    });
  }
</script>

<% content_for header do %>
  <%= stylesheet_link_tag 'mas/feedback/engine', media: :all %>
  <%= stylesheet_link_tag 'zenbox', media: :all %>
<% end %>

<%= javascript_include_tag 'zenbox' %>

<script type="text/javascript">
  if (typeof(Zenbox) !== "undefined") {
    Zenbox.init({
      dropboxID:   "<%= config[I18n.locale][:id] %>",
      url:         "<%= config[I18n.locale][:url] %>",
      tabColor:    "#008000",
      tabTooltip:  "Feedback",
      tabPosition: "Right",
      hide_tab:    "true"
    });
  }
</script>

Use the feedback css if zendesk tab is created


@import "styles/fonts";

.lanes {
  @import "styles/global";

<% Lanes::Extensions.each_asset(phase: :all, type: :css) do | asset | %>
  @import "<%= asset %>";
<% end %>

@import "lanes/components/shared/styles";

<% Lanes::Components.enabled_with_dependencies(self) do | component | %>
  @import "lanes/components/<%= component %>/styles";
<% end %>

<% if !Lanes.config.initial_workspace_screen_id.blank? &&
      screen = Lanes::Screen[Lanes.config.initial_workspace_screen_id] %>
  @import "<%= screen.css.remove(/\.css$/) + "/index.scss" %>";
<% end %>

  @import "styles/plugins/all";
}

@import "styles/fonts";
@import "styles/mixins/all";

html { height: 100%;     }
body { margin: 0; height: 100%; }
.lanes-root {
    height: 100%;
    .lanes > div { height: 100%; }
}

.lanes {
  height: 100%;
  @import "styles/global";

<% Lanes::Extensions.each_asset(phase: :all, type: :css) do | asset | %>
  @import "<%= asset %>";
<% end %>

@import "lanes/components/shared/styles";

<% Lanes::Components.enabled_with_dependencies(self) do | component | %>
  @import "lanes/components/<%= component %>/styles";
<% end %>

<% if !Lanes.config.initial_workspace_screen_id.blank? &&
      screen = Lanes::Screen[Lanes.config.initial_workspace_screen_id] %>
  @import "<%= screen.css.remove(/\.css$/) + "/index.scss" %>";
<% end %>

  @import "styles/plugins/all";
}

Set to 100% height so flexbox will epxand rows


	<%= form_tag(search_path(location), method: "get", onsubmit: "return false") do %>

		<%= text_field_tag("search_text2", nil, placeholder: "search a #{location_name} school by school name or by district name (e.g. Albany)", size: 250, class:'form-control') %>

	<% end %>

amount owed to <%= location_name %>

$<%= number_with_precision(totals[:total_owed], :precision => 0, :delimiter => ',') %>

total enrollment

<%= totals[:total_enrollment] %>

amount owed per student

$<%= number_with_precision(totals[:amount_per_student], :precision=> 2, :delimiter => ',')  %>

Add section with totals information.

Add section with totals information.


<form class="form-inline">

    <input class="form-control hidden"
           id="lower_bound_range_input"
           type="range"
           min="0">

    <input class="form-control hidden"
           id="upper_bound_range_input"
           type="range"
           min="0">

</form>

JavaScript required

      This visulisation requires JavaScript to work.

Visualisation loading...

<svg style="width: 100%;"
     height="auto"
     viewBox="0 0 1000 1000"
     data-url="<%= root_taxon_path(@content_item.content_id, format: "json", cache: params[:cache]) %>"
     data-module="bubbles-visualisation">
</svg>

<form class="form-inline">

    <input class="form-control hidden"
           id="lower_bound_range_input"
           type="range"
           min="0">

    <input class="form-control hidden"
           id="upper_bound_range_input"
           type="range"
           min="0">

</form>

JavaScript required

      This visulisation requires JavaScript to work.

Visualisation loading...

<svg style="width: 100%;"
     viewBox="0 0 1000 1000"
     data-url="<%= root_taxon_path(@content_item.content_id, format: "json", cache: params[:cache]) %>"
     data-module="bubbles-visualisation">
</svg>

Remove height=auto from the bubbles SVG element


    Sites

<%= link_to 'List', sites_path %>

<%= link_to 'Create', new_site_path %>

<%= link_to 'Schedule', schedule_path %>

Add a link to the site schedule

Add a link to the site schedule


Schweine

      <%= link_to("Alle Schweine", schweine_path) %>

    <%- Spree::Schwein.limit(5).order('created_at DESC').each do |schwein| %>

<%=link_to schwein.name, schwein_path(schwein.permalink)%>

    <% end %>

<%- if @bauern_menu = Spree::MenuBar.find_by_name("Bauern") %>

Bauern

    <%= render :partial => "spree/shared/render_menu", :locals => {:menu_bar => @bauern_menu} %>

<%- end -%>

Put alle link in same line.

Put alle link in same line.


Posts

Getting the site up and running. . .

11.08.2017 | 23:29 PDT

Using continuous integration and deployment via Travis-CI and Heroku has made the development life-cycle of this static site a breeze.
          Ideally I would like to get into the habit of posting nicely-formatted ramblings from Org mode and other semi-interesting information
          on a regular basis.

As a parting thought, here is a lovely picture that I recently took of Seattle:

Posts

Getting the site up and running. . .

11.08.2017 | 23:29 PDT

Ideally I would like to get into the habit of posting nicely-formatted ramblings from my Org mode notes and other semi-interesting information
          on a regular basis.

As a parting thought from this introductory post, here is a lovely picture that I recently took of Seattle:

Adjust first post and shrink image

Adjust first post and shrink image


You can find my music on Bandcamp and SoundCloud.

<% if album[:date] %>

Latest album:

<iframe style="border: 0; width: 450px; height: 120px;" src="https://bandcamp.com/EmbeddedPlayer/album=<%= album[:id] %>/size=large/bgcol=ffffff/linkcol=0687f5/tracklist=false/artwork=small/transparent=true/" seamless><a href="http://pupper.bandcamp.com/album/<%= album[:slug] %>"><%= album[:name] %> by pupper

Recent songs:

<% else %>

Server is still fetching data. Check back in a minute!

<% end %>

Add links to Bandcamp and SoundCloud.

Add links to Bandcamp and SoundCloud.


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

      </button>
      Downey Development and Design

Projects

Skills

History

Interests

Résumé

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

      </button>
      Downey Development and Design

Skills

Blog

Projects

History

Interests

Résumé

Contact

Add Contact and blog links in man nav

Add Contact and blog links in man nav


Use & rather than & in font url

Use & rather than & in font url


backend default {
  .host = "<%= @ipaddress_vmhost -%>";
  .port = "8080";
}

# Please add the minimal amount of code required to implement/mimic the
# functionality you need to test. This shouldn't match our real config
# line-by-line, otherwise we'll have trouble maintaining parity.

sub vcl_recv {
  if (!req.http.Fastly-SSL) {
     error 801 "Force SSL";
  }
}

sub vcl_error {
  if (obj.status == 801) {
     set obj.status = 301;
     set obj.response = "Moved Permanently";
     set obj.http.Location = "https://" + req.http.host + req.url;
     synthetic {""};
     return (deliver);
  }
}

backend default {
  .host = "<%= @ipaddress_vmhost -%>";
  .port = "8080";
}

# Please add the minimal amount of code required to implement/mimic the
# functionality you need to test. This shouldn't match our real config
# line-by-line, otherwise we'll have trouble maintaining parity.

acl purge {
  "192.168.0.1";
}

sub vcl_recv {
  if (req.request == "PURGE") {
    if (client.ip ~ purge) {
      return (lookup);
    }
    error 403 "Forbidden";
  }

  if (!req.http.Fastly-SSL) {
     error 801 "Force SSL";
  }
}

sub vcl_error {
  if (obj.status == 801) {
     set obj.status = 301;
     set obj.response = "Moved Permanently";
     set obj.http.Location = "https://" + req.http.host + req.url;
     synthetic {""};
     return (deliver);
  }
}

Make TestRestrictPurgeRequests() work in mock

Extract a simplified and slightly modified version of the PURGE handling
code from our Fastly config. We should never match the IP that's on the
whitelist.


<%= form_for @forum, url: @forum.new_record? ? course_forums_path(@course) : course_forum_path(@course, @forum) do |f| %>
  <%= f.text_field :name %>
  <%= f.text_area :description, class: 'span7 html-editor' %>

  <%= f.submit class: 'btn btn-primary' %>
<% end %>

<%= form_for @forum, url: @forum.new_record? ? course_forums_path(@course) : course_forum_path(@course, @forum),
             html: { class: 'form-horizontal' } do |f| %>

    <%= f.label :name, :class => 'control-label' %>

      <%= f.text_field :name, class: 'text_field span7', required: 'required' %>

    <%= f.label :description, class: 'control-label' %>

      <%= f.text_area :description, class: 'text_field span7 html-editor', required: 'required', rows: 10 %>

  <%= f.submit 'Create Forum', class: 'btn btn-primary', data: { disable_with: 'Submitting...' } %>
<% end %>

Clean up the Create Forums page.

Clean up the Create Forums page.


<!DOCTYPE html>
<html>
  <head>
    <title>ReferMeProject</title>
    <%= csrf_meta_tags %>

    <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= stylesheet_link_tag params[:controller], 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
  </head>

  <body>

    <%= render partial: ".layouts/navbar"%>
    <%= yield %>
    <%render partial: ".layouts/footer"%>
  </body>
</html>

<!DOCTYPE html>
<html>
  <head>
    <title>ReferMeProject</title>
    <%= csrf_meta_tags %>

    <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= stylesheet_link_tag params[:controller], 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
  </head>

  <body>
  <% if !(current_page?(controller:'welcome', action: 'index')) %>
  <% end %>
    <%= render partial: "./layouts/navbar"%>
    <%= yield %>
    <%=render partial: "./layouts/footer"%>
  </body>
</html>

Fix typo on render paths

Fix typo on render paths


<!DOCTYPE html>
<html ng-app="LDT" ng-controller="PageCtrl">
<head>
  <title ng-bind-template="LDT: {{title}}">LDT</title>
  <meta http-equiv="X-UA-Compatible" content="IE=Edge">
  <%= stylesheet_link_tag    "application", :media => "all" %>
  <%= stylesheet_link_tag    "print",       :media => "print" %>
  <script src="https://login.persona.org/include.js"></script>
  <%= javascript_include_tag "application" %>
  <%= csrf_meta_tags %>
</head>
<body>

<%= yield %>

</body>
</html>

<!DOCTYPE html>
<html ng-app="LDT" ng-controller="PageCtrl">
<head>
  <title ng-bind-template="{{title}}">LDT</title>
  <meta http-equiv="X-UA-Compatible" content="IE=Edge">
  <%= stylesheet_link_tag    "application", :media => "all" %>
  <%= stylesheet_link_tag    "print",       :media => "print" %>
  <script src="https://login.persona.org/include.js"></script>
  <%= javascript_include_tag "application" %>
  <%= csrf_meta_tags %>
</head>
<body>

<%= yield %>

</body>
</html>

Remove title placeholder once page is loaded


<!DOCTYPE html>

    <title>ResourceRepositoryApp</title>
    <%= csrf_meta_tags %>
<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/journal/bootstrap.min.css" rel="stylesheet" integrity="sha384-1L94saFXWAvEw88RkpRz8r28eQMvt7kG9ux3DdCqya/P3CfLNtgqzMnyaUa49Pl2" crossorigin="anonymous">
    <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= stylesheet_link_tag    'https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css', 'data-turbolinks-track': 'reload' %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>

        DBC Resource Repository

      <% if current_user %>
        (<%= current_user.email %> - <%= current_user.role %>) <%= link_to "logout", logout_path %>

        <%= link_to "Create new resource", new_resource_path %>
      <% end %>

    <%= yield %>

<!DOCTYPE html>

    <title>ResourceRepositoryApp</title>
    <%= csrf_meta_tags %>
<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/journal/bootstrap.min.css" rel="stylesheet" integrity="sha384-1L94saFXWAvEw88RkpRz8r28eQMvt7kG9ux3DdCqya/P3CfLNtgqzMnyaUa49Pl2" crossorigin="anonymous">
    <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= stylesheet_link_tag    'https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css', 'data-turbolinks-track': 'reload' %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>

        <%= link_to "DBC Resource Repository", resources_path %>

      <% if current_user %>
        (<%= current_user.email %> - <%= current_user.role %>) <%= link_to "logout", logout_path %>

        <%= link_to "Create new resource", new_resource_path %>
      <% end %>

    <%= yield %>

Add home button link in layout page

Add home button link in layout page


    <%= rule.name %>

          <%= render partial: "rule_formulas", locals: { formulas: rule.formulas }%>

        <%= link_to rule.name, edit_setup_project_rule_path(current_user.project, rule) , class: rule.invalid? ? 'btn btn-danger' :''  %> <%= rule.invalid? ? icon('exclamation-triangle text-danger fa-lg') :''%>

Fix layout missing td in rules summary

Fix layout missing td in rules summary


<%= render "govuk_publishing_components/components/inverse_header", { full_width: true } do %>

    <%= render partial: 'govuk_component/breadcrumbs',
      locals: {
        breadcrumbs: GovukPublishingComponents::AppHelpers::TaxonBreadcrumbs.new(@content_item).breadcrumbs,
        collapse_on_mobile: true,
        inverse: true
      }
    %>

        <%= render "govuk_component/title", {
          title: presented_taxon.title,
          average_title_length: 'long',
          inverse: true
        } %>

        <%= render 'govuk_component/lead_paragraph', {
            text: presented_taxon.description,
            inverse: true
        } %>

<% end %>

<%= render "govuk_publishing_components/components/inverse_header", { full_width: true, padding_top: false } do %>

    <%= render partial: 'govuk_component/breadcrumbs',
      locals: {
        breadcrumbs: GovukPublishingComponents::AppHelpers::TaxonBreadcrumbs.new(@content_item).breadcrumbs,
        collapse_on_mobile: true,
        inverse: true
      }
    %>

        <%= render "govuk_component/title", {
          title: presented_taxon.title,
          average_title_length: 'long',
          inverse: true
        } %>

        <%= render 'govuk_component/lead_paragraph', {
            text: presented_taxon.description,
            inverse: true
        } %>

<% end %>

Update breadcrumb padding on topic pages

We want to remove the padding-top on breadcrumbs on topic pages to make them more consistent with breadcrumb spacing across other pages on GOV.UK


Login

	<%= form_tag user_sessions_path, :method => :post do %>

			<%= label_tag :email %>

			<%= text_field_tag :email %>

			<%= label_tag :password %>

			<%= password_field_tag :password %>

			<%= check_box_tag :remember %> <%= label_tag :remember, "Remember Me" %>

			<%= submit_tag "Login", class: "submit"  %>

	<% end %>

Add Form Styles As Sign Up To Considered Styling


# Switch back to default ruleset
$RuleSet RSYSLOG_DefaultRuleset

<% if scope.lookupvar('rsyslog::server::enable_udp') -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_udp') -%>
$InputUDPServerBindRuleset remote
<% end -%>
$UDPServerRun <%= scope.lookupvar('rsyslog::server::port') %>
$UDPServerAddress <%= scope.lookupvar('rsyslog::server::address') %>
<% end -%>

<% if scope.lookupvar('rsyslog::server::enable_tcp') -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_tcp') -%>
$InputTCPServerBindRuleset remote
<% end -%>
$InputTCPServerRun <%= scope.lookupvar('rsyslog::server::port') %>
<% end -%>

<% if scope.lookupvar('rsyslog::server::enable_relp') -%>
<% if (@rsyslog_version and (scope.function_versioncmp([@rsyslog_version, '6.3.6']) >= 0)) -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_relp') -%>
$InputRELPServerBindRuleset remote
<% end -%>
$InputRELPServerRun <%= scope.lookupvar('rsyslog::server::relp_port') %>
<% end -%>
<% end -%>

# Switch back to default ruleset
$RuleSet RSYSLOG_DefaultRuleset

<% if scope.lookupvar('rsyslog::server::enable_udp') -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_udp') -%>
$InputUDPServerBindRuleset remote
<% end -%>
$UDPServerAddress <%= scope.lookupvar('rsyslog::server::address') %>
$UDPServerRun <%= scope.lookupvar('rsyslog::server::port') %>
<% end -%>

<% if scope.lookupvar('rsyslog::server::enable_tcp') -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_tcp') -%>
$InputTCPServerBindRuleset remote
<% end -%>
$InputTCPServerRun <%= scope.lookupvar('rsyslog::server::port') %>
<% end -%>

<% if scope.lookupvar('rsyslog::server::enable_relp') -%>
<% if (@rsyslog_version and (scope.function_versioncmp([@rsyslog_version, '6.3.6']) >= 0)) -%>
<% if scope.lookupvar('rsyslog::server::remote_ruleset_relp') -%>
$InputRELPServerBindRuleset remote
<% end -%>
$InputRELPServerRun <%= scope.lookupvar('rsyslog::server::relp_port') %>
<% end -%>
<% end -%>

Fix UDPServerAddress order in server footer template

To be effective, the option must precede the Run option.


<%= link_to 'View All', expenses_path %>
| <%= link_to 'Edit', edit_expense_path(@expense) %>
| <%= link_to 'Delete', expense_path(@expense),
  method: :delete, data: { confirm: 'Are you sure?' } %>

    Amount
     <%= number_to_currency(@expense.amount) %>

    Date
     <%= @expense.date %>

    Category
     <%= @expense.category %>

    Description
     <%= @expense.description %>

<%= link_to 'View All', expenses_path %>
| <%= link_to 'Edit', edit_expense_path(@expense) %>
| <%= link_to 'Delete', expense_path(@expense),
  method: :delete, data: { confirm: 'Are you sure?' } %>

    Amount
     <%= number_to_currency(@expense.amount) %>

    Date
     <%= @expense.date.strftime("%A, %B %d, %Y") %>

    Category
     <%= @expense.category %>

    Description
     <%= @expense.description %>

Use human friendly date format

Use human friendly date format


<%= notice %>

<%= @event.name %>

<%= @event.location %>

<%= @event.start.to_formatted_s(:long) %> to <%= @event.end.to_formatted_s(:long) %>

    GM Name
    GM Forum Name
    GM Email
    Scenario
    Session/Time Slot

  <% @game_masters.each do |gm| %>

        <%= gm.user_event.user.name %>
        <%= gm.user_event.user.forum_username %>
        <%= gm.user_event.user.email %>
        <%= gm.table.scenario.long_name %>
        <%= gm.table.session.name %>

  <% end %>

<%= notice %>

<%= @event.name %>

<%= @event.location %>

<%= @event.start.to_formatted_s(:long) %> to <%= @event.end.to_formatted_s(:long) %>

    GM Name
    GM Email
    GM Forum Name
    Scenario
    Session/Time Slot

  <% @game_masters.each do |gm| %>

        <%= gm.user_event.user.name %>
        <%= gm.user_event.user.email %>
        <%= gm.user_event.user.forum_username %>
        <%= gm.table.scenario.long_name %>
        <%= gm.table.session.name %>

  <% end %>

Switch order of forum name and email.

Switch order of forum name and email.


<% @params[:listen_ports].each do |port| -%>
<VirtualHost <%= @params[:listen_addresses] %>:<%= port %>>
  ServerName <%= @params[:server_name] %>
  ServerAlias <% @params[:server_aliases].each do |a| %><%= "#{a}" %> <% end %>
  DocumentRoot <%= @params[:docroot] %>
  RewriteEngine On

  <Directory <%= @params[:docroot] %>>
    Options FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
  </Directory>

  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>

  <Location /server-status>
    SetHandler server-status
    Order Allow,Deny
    Allow from all
  </Location>

  LogLevel info
  ErrorLog <%= node[:apache][:log_dir] %>/<%= @params[:name] %>-error.log
  CustomLog <%= node[:apache][:log_dir] %>/<%= @params[:name] %>-access.log combined

  RewriteEngine On
  RewriteLog <%= node[:apache][:log_dir] %>/<%= @application_name %>-rewrite.log
  # level 0 => Do not log rewrite
  RewriteLogLevel 0
  <% if port === "443" -%>

  SSLEngine on
  SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
  SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
  <% end -%>
</VirtualHost>

<% end -%>

<% @params[:listen_ports].each do |port| -%>
<VirtualHost <%= @params[:listen_addresses] %>:<%= port %>>
  ServerName <%= @params[:server_name] %>
  ServerAlias <% @params[:server_aliases].each do |a| %><%= "#{a}" %> <% end %>
  DocumentRoot <%= @params[:docroot] %>
  RewriteEngine On

  <Directory <%= @params[:docroot] %>>
    Options FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
  </Directory>

  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>

  <Location /server-status>
    SetHandler server-status
    Order Allow,Deny
    Allow from all
  </Location>

  LogLevel debug
  ErrorLog <%= node[:apache][:log_dir] %>/<%= @params[:name] %>-error.log
  CustomLog <%= node[:apache][:log_dir] %>/<%= @params[:name] %>-access.log combined

  RewriteEngine On
  RewriteLog <%= node[:apache][:log_dir] %>/<%= @application_name %>-rewrite.log
  # level 0 => Do not log rewrite
  RewriteLogLevel 3
  <% if port === "443" -%>

  SSLEngine on
  SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
  SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
  <% end -%>
</VirtualHost>

<% end -%>

Increase debug info on Apache's logs

Increase debug info on Apache's logs


<%= render 'layouts/sortable_table_header' %>

      Name
      Team
      Elo
      Wins
      Losses

    <% @competitors.each do |competitor| %>

        <% shown_name = competitor.broken ? "#{competitor.name} - Broken" : competitor.name %>
        <%= link_to shown_name, competitor %>
        <%= competitor.team %>
        <%= competitor.Elo %>
        <%= competitor.wins %>
        <%= competitor.losses %>

    <% end %>

<%= render 'layouts/sortable_table_footer' %>

<%= render 'layouts/sortable_table_header' %>

      Name
      Team
      Wins
      Losses

    <% @competitors.each do |competitor| %>

        <% shown_name = competitor.broken ? "#{competitor.name} - Broken" : competitor.name %>
        <%= link_to shown_name, competitor %>
        <%= competitor.team %>
        <%= competitor.wins %>
        <%= competitor.losses %>

    <% end %>

<%= render 'layouts/sortable_table_footer' %>

Remove Elo. it's pointless in current design


<input type="button" id="start" value="Add Bank">

Add delay to redirect in user banking edit page


---
- scm:
    name: govuk-taxonomy-supervised-learning
    scm:
        - git:
            url: git@github.com:alphagov/govuk-taxonomy-supervised-learning.git
            branches:
              - master

- job:
    name: govuk_taxonomy_supervised_learning
    display-name: Taxonomy Supervised Learning Pipeline
    project-type: freestyle
    description: |
      This job runs the taxonomy supervised learning pipeline
    logrotate:
      numToKeep: 20
    scm:
      - govuk-taxonomy-supervised-learning
    triggers:
        - timed: 'H 2 * * 1-5'
    builders:
      - shell: |
          #!/bin/bash
          git checkout -B ${GIT_BRANCH} origin/${GIT_BRANCH}

          rm -rf ./venv
          virtualenv --python=python3 --no-site-packages ./venv
          export VIRTUAL_ENV="$PWD/venv"
          export PATH="$PWD/venv/bin:$PATH"
          pip3 install --upgrade pip

          make pip_install

          export PLEK_SERVICE_RUMMAGER_URI=https://<%= @rummager_api %>
          export PLEK_SERVICE_DRAFT_CONTENT_STORE_URI=https://<%= @draft_content_store_api %>

          make clean
          make data/taxons.json.gz
          make data/content.json.gz
          make measure_average_taxons
    parameters:
        - string:
            name: GIT_BRANCH
            description: The Git branch of the govuk-taxonomy-supervised-learning repository to use.
            default: master

---
- scm:
    name: govuk-taxonomy-supervised-learning
    scm:
        - git:
            url: git@github.com:alphagov/govuk-taxonomy-supervised-learning.git
            branches:
              - master

- job:
    name: govuk_taxonomy_supervised_learning
    display-name: Taxonomy Supervised Learning Pipeline
    project-type: freestyle
    description: |
      This job runs the taxonomy supervised learning pipeline
    logrotate:
      numToKeep: 20
    scm:
      - govuk-taxonomy-supervised-learning
    triggers:
        - timed: 'H 2 * * 1-5'
    builders:
      - shell: |
          #!/bin/bash
          git checkout -B ${GIT_BRANCH} origin/${GIT_BRANCH}

          export PLEK_SERVICE_RUMMAGER_URI=https://<%= @rummager_api %>
          export PLEK_SERVICE_DRAFT_CONTENT_STORE_URI=https://<%= @draft_content_store_api %>

          source bin/govuk_taxonomy_supervised_learning_jenkins_script
    parameters:
        - string:
            name: GIT_BRANCH
            description: The Git branch of the govuk-taxonomy-supervised-learning repository to use.
            default: master

Simplify the govuk_taxonomy_supervised_learning Jenkins job

Most of the stuff is worth keeping in the
govuk-taxonomy-supervised-learning repository, so that it's easier to change.


В инициативата участват

      <% @companies.each do |company| %>

          <% if company.url.present? %>
            <%= link_to company.url, target: '_blank', rel: 'nofollow', class: 'company' do %>
              <%= image_tag company.logo.url(:small), alt: company.name, title: company.name %>
            <% end %>
          <% else %>
            <%= image_tag company.logo.url(:small), alt: company.name, title: company.name %>
          <% end %>

      <% end %>

      <%= link_to 'А вие? Пишете ни →', contacts_path, class: 'btn light' %>

В инициативата участват

      <% @companies.each do |company| %>

          <% if company.url.present? %>
            <%= link_to company.url, target: '_blank', rel: 'nofollow', class: 'company' do %>
              <%= image_tag company.logo.url(:medium), alt: company.name, title: company.name %>
            <% end %>
          <% else %>
            <%= image_tag company.logo.url(:medium), alt: company.name, title: company.name %>
          <% end %>

      <% end %>

      <%= link_to 'А вие? Пишете ни →', contacts_path, class: 'btn light' %>

Use a larger logo for supporter companies on the homepage

Some logos are too wide and the small size is not enough.


description "Start rabbitmq on startup"
start on started networking and remote-filesystems
limit nofile <%= @max_file_descriptors %> <%= @max_file_descriptors %>

respawn
respawn limit 5 60

env HOME=""
env RABBITMQ_PID_FILE="/var/run/rabbitmq/pid"

pre-start script
    PID_DIR=`dirname ${RABBITMQ_PID_FILE}`

    if [ ! -d ${PID_DIR} ];
    then
        mkdir -p ${PID_DIR}
        chown -R rabbitmq:rabbitmq ${PID_DIR}
        chmod 755 ${PID_DIR}
    fi
end script

exec /usr/sbin/rabbitmq-server > /var/log/rabbitmq/startup_log \
                              2> /var/log/rabbitmq/startup_err

post-start exec /usr/sbin/rabbitmqctl wait $RABBITMQ_PID_FILE >/dev/null 2>&1

description "Start rabbitmq on startup"
start on started networking and started remote-filesystems
limit nofile <%= @max_file_descriptors %> <%= @max_file_descriptors %>

respawn
respawn limit 5 60

env HOME=""
env RABBITMQ_PID_FILE="/var/run/rabbitmq/pid"

pre-start script
    PID_DIR=`dirname ${RABBITMQ_PID_FILE}`

    if [ ! -d ${PID_DIR} ];
    then
        mkdir -p ${PID_DIR}
        chown -R rabbitmq:rabbitmq ${PID_DIR}
        chmod 755 ${PID_DIR}
    fi
end script

exec /usr/sbin/rabbitmq-server > /var/log/rabbitmq/startup_log \
                              2> /var/log/rabbitmq/startup_err

post-start exec /usr/sbin/rabbitmqctl wait $RABBITMQ_PID_FILE >/dev/null 2>&1

Fix "start on" conditional to wait for remote filesystems to be mounted


  <% data_attributes = {
      module: "track-button-click",
      "tracking-category": "form-button",
      "tracking-action": "#{edition.class.name.demodulize.underscore.dasherize}-button",
    }
  %>
  <%= render "govuk_publishing_components/components/button", {
    text: "Save",
    value: "save",
    name: "save",
    data_attributes: data_attributes
  } %>

  <%= render "govuk_publishing_components/components/button", {
    text: "Save and continue",
    secondary_solid: true,
    data_attributes: data_attributes
  } %>

    or <%= link_to "cancel", edition.persisted? ? admin_edition_path(edition) : admin_editions_path, class: "govuk-link", data_attributes: data_attributes %>

  <% data_attributes = {
      module: "track-button-click",
      "tracking-category": "form-button",
      "tracking-action": "#{edition.class.name.demodulize.underscore.dasherize}-button",
    }
  %>
  <%= render "govuk_publishing_components/components/button", {
    text: "Save",
    value: "save",
    name: "save",
    data_attributes: data_attributes
  } %>

  <%= render "govuk_publishing_components/components/button", {
    text: "Save and continue",
    secondary_solid: true,
    data_attributes: data_attributes
  } %>

  <%= link_to "Cancel", admin_cancel_path(edition), class: "govuk-link", data_attributes: data_attributes %>

Update the save or continue template to use the new cancel path helper

The previous logic did not account for all page variations needed in the long term.


<% if @build == 'master' -%>
https://s3-us-west-2.amazonaws.com/education-packages/gitea-1.1.3-0.x86_64.rpm
<% end -%>
https://s3-us-west-2.amazonaws.com/education-packages/google-droid-sans-mono-1.0-1.x86_64.rpm
https://puppet-pdk.s3.amazonaws.com/pdk/1.0.1.0/repos/el/7/PC1/x86_64/pdk-1.0.1.0-1.el7.x86_64.rpm

Add PDK package to caching

Add PDK package to caching

Make the PDK available on the VM. We'll use it in the classroom and users of the LVM might like to try it out.

COURSES-3099


<% if transaction.transaction_type == 'request' %>
<% request_text = ['cried out for help', 'sent an SOS', 'made a request', 'shouted for aid', 'sent out a smoke signal', 'pinged neighbors', 'lit the beacons'] %>

<%= link_to transaction.request.requester.first_name, user_path(transaction.request.requester) %> <%= request_text.sample %> <%= time_ago_in_words(transaction.created_at) %> ago.

<% elsif transaction.transaction_type == 'response' %>

<%= link_to transaction.request.responder.first_name, user_path(transaction.request.responder) %> responded to <%= link_to transaction.request.requester.first_name, user_path(transaction.request.requester) %>'s request <%= time_ago_in_words(transaction.created_at) %> ago!

<% elsif transaction.transaction_type == 'fulfillment' %>

<%= link_to transaction.request.responder.first_name, user_path(transaction.request.responder) %> fulfilled <%= link_to transaction.request.requester.first_name, user_path(transaction.request.requester) %>'s request <%= time_ago_in_words(transaction.created_at) %> ago!
<% else %>
<% end %>

Add users_transaction partial to differentiate between homepage river and user profile river


Update mas-cms-editor bower dep SHA

Update mas-cms-editor bower dep SHA


Question: min(last_5m):avg:datadog.nozzle.bbs.LRPsMissing{deployment:<%= metron_agent_diego_deployment %>} > 70

<%= cloudops_pagerduty %>

<%= environment %> Diego: Missing LRPs are too high

Question: min(last_5m):avg:datadog.nozzle.bbs.LRPsMissing{deployment:<%= metron_agent_diego_deployment %>} > 70

## Description:
Some of the apps are not running.
## Escalation Path:
Diego
## Possible Causes:
A cell failed to report status to the bbs, due to network or Consul.
Multiple auctioneers aren't running.
## Potential Solutions:
Escalate to Diego team <%= cloudops_pagerduty %> <%= diego_oncall %>

Add verbiage to LRPsMissing alert

Add verbiage to LRPsMissing alert

[#138007355] Add alerts so we can have a cleaner dashboard

Signed-off-by: James Young <9a444a4c06c3f9735f2e8ac5c0dcccd82c90ce93@pivotal.io>


  <%= render 'subscribe' %>

    <% @categories.each do |cat| %>

<%= cat.name.camelize %>

        <a class="dropdown-toggle" id="catDD<%= cat.id %>" href="#" role="button" data-toggle="dropdown">

        <ul class="dropdown-menu" role="menu" aria-labelledby="catDD<%= cat.id %>">

<%= link_to "Mark as read", "#" %>

<%= link_to "Refresh feeds", "#" %>

          <% unless cat.name == Category.default %>

<%= link_to "Remove category", "#", :'data-id' => cat.id, :class => "rm-cat" %>

          <% end %>

        <%= render 'feeds_title', feeds: cat.feeds %>

    <% end %>

Set pre-scrollable for sidebar navigation


<%= @pokemon.parent_name %> 様

ポケモン素材の利用規約にご同意して頂きありがとうございます！

  ポケモン素材は<%= link_to 'コチラ', pokemon_download_url(key: @pokemon.download_key) %>からダウンロードできます。

  ※
    ダウンロードの有効期間は６０分です。

プログラミングでポケモンを動かし、楽しんでいただけると嬉しいです！

  一般社団法人CoderDojo Japan

  https://coderdojo.jp/

<%= @pokemon.parent_name %> 様

ポケモン素材の利用規約にご同意して頂きありがとうございます。

  ポケモン素材は<%= link_to 'コチラ', pokemon_download_url(key: @pokemon.download_key) %>からダウンロードできます。

  ※
    ダウンロードの有効期間は６０分です。

プログラミングでポケモンを動かし、楽しんでいただけると嬉しいです。

  一般社団法人CoderDojo Japan

  https://coderdojo.jp/

Tweak style of mail text

Tweak style of mail text


What's not included?

Not everything we have at the Libraries appears in these search results - specialized sources like full-text business reports, images, theses, or archival materials, can best be found using other tools.

How to find the other stuff

Ask our expert librarians

Browse specialized search tools by subject

Popular search tools

Course reserves search

Vera: Search e-journals and databases

WorldCat: Borrow from libraries worldwide

Google Scholar (see also: Setting MIT preferences)

Other popular search tools

Fix course reserves link in bento "what's not included"

https://mitlibraries.atlassian.net/browse/DI-355


<%= conversation.subject %>

From: <%= conversation.originator.username %>

  Date: <%=  conversation.messages.last.created_at.strftime("%A, %b %d, %Y at %I:%M%p") %>

    <%= truncate conversation.messages.last.body, length: 145 %>

  <%= link_to "View Conversation", conversation_path(conversation)  %>

  <%= link_to trash_conversation_path(conversation), class: 'btn btn-floating', method: :post, data: {confirm: 'Are you sure?'} do %>
    delete
  <% end %>

Add trash icon to trash messages

Add trash icon to trash messages


<%= simple_form_for(@event) do |f| %>
  <% if @event.errors.any? %>

<%= pluralize(@event.errors.count, "error") %> prohibited this event from being saved:

      <% @event.errors.full_messages.each do |message| %>

<%= message %>

      <% end %>

  <% end %>

    <%= f.input :date %>
    <%= I18n.l(@event.date) %>

    <%= @event.date.to_s %>

    <%= f.input :datetime %>
    <%= I18n.l(@event.datetime) %>

    <%= @event.datetime.to_s %>

    <%= f.input :time %>
    <%= I18n.l(@event.time, format: :only_time) %>

    <%= @event.time.to_s %>

    <%= f.submit nil, class: 'btn btn-default' %>

<% end %>

<%= simple_form_for(@event) do |f| %>
  <% if @event.errors.any? %>

<%= pluralize(@event.errors.count, "error") %> prohibited this event from being saved:

      <% @event.errors.full_messages.each do |message| %>

<%= message %>

      <% end %>

  <% end %>

    <%= f.input :date, as: :date_picker %>
    <%= I18n.l(@event.date) %>

    <%= @event.date.to_s %>

    <%= f.input :datetime, as: :date_picker %>
    <%= I18n.l(@event.datetime) %>

    <%= @event.datetime.to_s %>

    <%= f.input :time, as: :date_picker %>
    <%= I18n.l(@event.time, format: :only_time) %>

    <%= @event.time.to_s %>

    <%= f.submit nil, class: 'btn btn-default' %>

<% end %>

Use as: :date_picker in form

Use as: :date_picker in form


<%= @cargo_status %>

    Type
    Location
    Completion Date
    Tracking ID

  <% @handling_events_history.each do |handling_event| %>

    <%= handling_event.event_type %>
    <%= handling_event.location.name %>
    <%= handling_event.completion_date %>
    <%= handling_event.tracking_id %>

  <% end %>

<%= @cargo_status %>

Estimated time of arrival in <%= @cargo.route_specification.destination %>: <%= @cargo.delivery.eta %>

<% if @cargo.delivery.is_misdirected %>

<%= Cargo is misdirected! %>

<% end %>
<% if @cargo.delivery.next_expected_activity %>

Next expected activity is to <%= @cargo.delivery.next_expected_activity.handling_event_type %> in <%= @cargo.delivery.next_expected_activity.location.name %>

<% end %>

    Type
    Location
    Completion Date
    Tracking ID

  <% @handling_events_history.each do |handling_event| %>

    <%= handling_event.event_type %>
    <%= handling_event.location.name %>
    <%= handling_event.completion_date %>
    <%= handling_event.tracking_id %>

  <% end %>

Update view for tracking cargo.

Update view for tracking cargo.


<% provide(:title, "Teilnehmerliste") %>

  <%= link_to "Wettbewerbsdetails anzeigen", jmd_competition_path(@competition), class: "btn" %>

      Nachname
      Vorname
      Geburtsdatum
      Land
      Auftritte

    <% @participants.each do |participant| %>

        <%= participant.last_name %>
        <%= participant.first_name %>
        <%= l participant.birthdate %>
        <%= flag_tag participant.country.country_code %>

          <%= participant.appearances.joins(:performance).where(performances: { competition_id: @competition }).size %>

          <%= link_to_modal icon_tag("eye-open", title: "Teilnehmerdetails anzeigen"), :participant, participant.id %>

      <%= render partial: "participant_modal", locals: { participant: participant } %>
    <% end %>

<% provide(:title, "Teilnehmer für #{@competition.name}") %>

  <%= link_to "Wettbewerbsdetails anzeigen", jmd_competition_path(@competition), class: "btn" %>

      Nachname
      Vorname
      Geburtsdatum
      Land
      Kategorien

    <% @participants.each do |participant| %>

        <%= participant.last_name %>
        <%= participant.first_name %>
        <%= l participant.birthdate %>
        <%= flag_tag participant.country.country_code %>

          <% participant.performances.in_competition(@competition).includes(:category).each do |performance| %>
            <%= link_to performance.category.name, jmd_performance_path(performance) %>

          <% end %>

          <%= link_to_modal icon_tag("eye-open", title: "Teilnehmerdetails anzeigen"), :participant, participant.id %>

      <%= render partial: "participant_modal", locals: { participant: participant } %>
    <% end %>

Add links to performances of each participant in list


<%= provide(:header, "Seus O.A.'s") %>

<%= link_to "Criar novo O.A.", new_learning_object_path, class: "btn btn-primary pull-right" %>

<% @learning_objects.each do |lo| %>

<%= lo.title %></h>

      <%= truncate(lo.description, length: 400, separator: ' ') %>

      <%= available_text(lo.available) %>

        <%= link_to "Ver", lo %> |
        <%= link_to "Deletar", lo, method: :delete,
                    data: { confirm: "Tem certeza que deseja excluir?" } %>

<% end %>

<%= provide(:header, "Seus O.A.'s") %>

<%= link_to "Criar novo O.A.", new_learning_object_path, class: "btn btn-primary pull-right" %>

<% @learning_objects.each do |lo| %>

<%= lo.title %></h>

      <%= truncate(lo.description, length: 400, separator: ' ') %>

      <%= available_text(lo.available) %>

        <%= link_to "Ver", lo %> |
        <%= link_to "Excluir", lo, method: :delete,
                    data: { confirm: "Tem certeza que deseja excluir?" } %>

<% end %>

Change delete link text display

Change delete link text display