wahyd4/ocelots

View on GitHub
app/views/profile/edit.html.slim

Summary

Maintainability
Test Coverage
- content_for :javascript_includes do
  = javascript_include_tag 'profile'
  = javascript_include_tag 'soundcloud'
  = javascript_include_tag 'https://connect.soundcloud.com/sdk.js'
  = javascript_include_tag "http://maps.googleapis.com/maps/api/js?key=#{ENV['GOOGLE_API']}&sensor=false"
  = javascript_include_tag 'google_map'
- content_for :style_includes do
  = stylesheet_link_tag 'soundcloud'

div.hero-unit.highlight.sexy-bg
  div.row
    div.span4
      a href="/profiles/#{@current_person.account}"
          =image_for @current_person
    div.span6
      = render partial: 'shared/person', locals: {person: @current_person}
      p
        = phone_link_to @current_person.phone
      - if @current_person.track
        = render partial: 'shared/soundcloud_iframe', locals: {object: @current_person}
      = render partial: 'shared/person_social_media', locals: {person: @current_person}

- if flash[:notice]
    div.alert.alert-success =flash[:notice]
- messages = @current_person.errors.full_messages
- unless messages.empty?
    ul.alert.alert-error
      - messages.each do |msg|
        li style='margin-left:8px;' = msg
h1 Edit

= form_for @current_person, url: profile_url, html: {class: 'form-horizontal'} do |form|
  fieldset
    div.span8
      div.control-group
        label.control-label for="show_avatar" Allow to show avatar
        div.controls
          =form.check_box :show_avatar
      div.control-group
        label.control-label for="photo" Photo
        div.controls
          = form.file_field :photo
        div.controls style="margin-top:8px;"
          span Or Set Your
          span  
          a href="http://en.gravatar.com/" target="_blank" Gravatar
      div.control-group
        label.control-label for="person_account" Profile
        div.controls
          p #{form.text_field :account , class:'profile-url'}
        label.control-label  Preview Profile URL:
        div.controls.url-font
          span.profile-url-base #{ENV['BASE_URL']}/profiles/
          span.profile-url-dis #{@current_person.account}
      div.control-group
        label.control-label for="person_full_name" Full Name
        div.controls
          = form.text_field :full_name, id: "full_name"
      div.control-group
        label.control-label for="person_chinese_name" Chinese Name
        div.controls
          = form.text_field :chinese_name
      div.control-group
        label.control-label for="person_pinyin_name" Pīnyīn Name
        div.controls
          = form.text_field :pinyin_name
      div.control-group
        label.control-label for="person_preferred_name" Preferred Name
        div.controls
          = form.text_field :preferred_name
      div.control-group
        label.control-label for="person_sc_embed_code" Record Your Voice
        div.controls
          = form.text_field :track, id:'track', type:'hidden'
          = form.text_field :secret, id:'secret', type:'hidden'
          div id="recorderUI" class="reset"
            a href="#" id="controlButton" class="record"
              span id="timer" class="hidden" 0:00
            div id="otherControls"
              a href="#" id="reset" class="button" Reset
              a href="#" id="upload" class="button" Upload
            div id="uploadStatus"
      div.control-group
        label.control-label for="person_phone" Phone
        div.controls
          = form.text_field :phone
      div.control-group
              label.control-label for="person_phone" Job Title
              div.controls
                = form.text_field :job_title
      div.control-group
        label.control-label for="person_url" Personal site
        div.controls
          p #{form.text_field :url,placeholder:'Without http://'}
      div.control-group
        label.control-label for="person_twitter" Twitter
        div.controls
          p #{form.text_field :twitter,class:'twitter-url'}
      div.control-group
        label.control-label for="person_twitter" Twitter Preview
        div.controls.url-font
          span http://twitter.com/
          span.twitter-preview #{@current_person.twitter}
      div.control-group
        label.control-label for="person_facebook" Facebook
        div.controls
          p #{form.text_field :facebook,class:'facebook-url'}
      div.control-group
        label.control-label for="person_facebook" Facebook Preview
        div.controls.url-font
          span http://facebook.com/
          span.facebook-preview #{@current_person.facebook}
      div.control-group
        label.control-label for="person_weibo" Weibo
        div.controls
          p #{form.text_field :weibo,class:'weibo-url'}
      div.control-group
        label.control-label for="person_weibo" Weibo Preview
        div.controls.url-font
          span http://weibo.com/
          span.weibo-preview #{@current_person.weibo}
      div.control-group
        label.control-label for="person_appnet" Appnet
        div.controls
          p #{form.text_field :appnet,class:'appnet-url'}
      div.control-group
        label.control-label for="person_appnet" Appnet Preview
        div.controls.url-font
          span http://alpha.app.net/
          span.appnet-preview #{@current_person.appnet}
      div.control-group
        label.control-label for="person_github" Github
        div.controls
          p #{form.text_field :github,class:'github-url'}
      div.control-group
        label.control-label for="person_github" Github Preview
        div.controls.url-font
          span http://github.com/
          span.github-preview #{@current_person.github}
      div.control-group
        label.control-label for="person_flickr" Flickr
        div.controls
          p #{form.text_field :flickr,class:'flickr-url'}
      div.control-group
        label.control-label for="person_flickr" Flickr Preview
        div.controls.url-font
          span http://flickr.com/photos/
          span.flickr-preview #{@current_person.flickr}
      div.control-group
        label.control-label for="lat" Location
        div.controls
          input#address type="text"
          button#address_btn style='margin-left:1em' Search
          p #{form.text_field :lat,:type => 'hidden', :id => 'person_lat'} #{form.text_field :lng,:type=> 'hidden', :id => 'person_lng'}
        div.error_maps.alert.alert-error.hidden style="color:red;margin-left: 13em" The place you just searched does not exist.
        div id="map_canvas" style="width: 600px; height: 300px;margin-left: 13em"
      div.form-actions
        = form.submit 'Update Profile', class: 'btn btn-primary'
      div.control-group
        label.control-label for="person_auth_token" Auth Token
        div.controls
          span.auth-token-display = @current_person.auth_token
          span.refresh-token.icon-refresh title="refresh auth token"  style="margin-left:20px"

h1 Facts

div.span6
  table class='table-striped'
    - @current_person.facts.each do |fact|
      tr
        td
          p = 'I ' + fact.content
        td
          = link_to "/fact/#{fact.id}", class: 'd', method: :delete do
            i.icon-remove-circle
    tr
      = form_tag "/fact", class: 'form-inline' do
        td
          p I #{text_field_tag :content, nil, placeholder: 'drive a truck'}