From ede4d77cfd882ea37ae2bd331d14a95af9129205 Mon Sep 17 00:00:00 2001
From: shpuld <shpuld@gmail.com>
Date: Wed, 22 Feb 2017 23:08:14 +0200
Subject: [PATCH] Move profile picture to right side, make the names appear
 next to it, extend profile background pic further and fade it out with
 gradients, fix the crappy borders around the inline user card.

---
 src/App.scss                                  |  36 -----
 src/components/status/status.vue              |   2 +-
 .../user_card_content/user_card_content.vue   | 131 ++++++++++++++++--
 src/components/user_profile/user_profile.vue  |  43 +-----
 4 files changed, 127 insertions(+), 85 deletions(-)

diff --git a/src/App.scss b/src/App.scss
index 431aeb32..b0888ac7 100644
--- a/src/App.scss
+++ b/src/App.scss
@@ -142,46 +142,10 @@ main-router {
     min-width: 0px;
 }
 
-.user-info {
-	color: white;
-    padding: 1em;
-    img {
-        border: 2px solid;
-        border-radius: 0.5em
-    }
-	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
-	.user-name{
-		margin-top: 0.2em;
-	}
-    .user-screen-name {
-        margin-top: 0.3em;
-        font-weight: lighter;
-        padding-right: 0.1em;
-    }
-}
-
-.user-counts {
-    display: flex;
-    line-height:16px;
-    padding: 1em 1.5em 0em 1em;
-    text-align: center;
-}
-
-.user-count {
-    flex: 1;
-
-    h5 {
-    	font-size:1em;
-        font-weight: bolder;
-        margin: 0 0 0.25em;
-    }
-}
-
 .fa {
     color: grey;
 }
 
-
 .status-actions {
     width: 50%;
     display: flex;
diff --git a/src/components/status/status.vue b/src/components/status/status.vue
index f111c2d5..a97e6b75 100644
--- a/src/components/status/status.vue
+++ b/src/components/status/status.vue
@@ -157,7 +157,7 @@
  .usercard {
    border-style: solid;
    border-width: 1px;
-   border-radius: 1em;
+   border-radius: 0.5em;
    margin-bottom: 1em;
  }
 </style>
diff --git a/src/components/user_card_content/user_card_content.vue b/src/components/user_card_content/user_card_content.vue
index ee4384fa..befe8bf2 100644
--- a/src/components/user_card_content/user_card_content.vue
+++ b/src/components/user_card_content/user_card_content.vue
@@ -1,11 +1,13 @@
 <template>
-  <div>
-    <div class="base00-background panel-heading text-center" v-bind:style="style">
+  <div id="heading" class="profile-panel-background base00-background" :style="headingStyle">
+    <div class="panel-heading text-center">
       <div class='user-info'>
-        <img :src="user.profile_image_url">
-        <span class="glyphicon glyphicon-user"></span>
-        <div class='user-name'>{{user.name}}</div>
-        <div class='user-screen-name'>@{{user.screen_name}}</div>
+        <div class='container'>
+          <img :src="user.profile_image_url">
+          <span class="glyphicon glyphicon-user"></span>
+          <div class='user-name'>{{user.name}}</div>
+          <div class='user-screen-name'>@{{user.screen_name}}</div>
+        </div>
         <div v-if="isOtherUser" class="user-interactions">
           <div v-if="user.follows_you && loggedIn" class="following base06">
             Follows you!
@@ -34,7 +36,7 @@
         </div>
       </div>
     </div>
-    <div class="panel-body base00-background">
+    <div class="panel-body profile-panel-body" :style="bodyStyle">
       <div class="user-counts">
         <div class="user-count">
           <h5>Statuses</h5>
@@ -58,12 +60,18 @@
   export default {
     props: [ 'user' ],
     computed: {
-      style () {
+      headingStyle () {
         return {
-          color: `#${this.user.profile_link_color}`,
           'background-image': `url(${this.user.cover_photo})`
         }
       },
+      bodyStyle () {
+        let color = '#1C2023'
+        console.log(this.color)
+        return {
+          background: 'linear-gradient(to bottom, rgba(0, 0, 0, 0), ' + color + ' 70%)'
+        }
+      },
       isOtherUser () {
         return this.user !== this.$store.state.users.currentUser
       },
@@ -90,3 +98,108 @@
     }
   }
 </script>
+
+<style lang="scss">
+
+.profile-panel-background {
+  background-size: cover;
+  border-radius: 0.5em 0.5em 0 0;
+}
+
+.profile-panel-body {
+  padding-top: 0em;
+  top: -0em;
+  padding-top: 4em;
+}
+
+.user-info {
+	color: white;
+  padding: 1em 1em 1em 1em;
+  margin-bottom: -4em;
+
+  .container{
+    display: flex;
+    flex-wrap: wrap;
+    flex-direction: column;
+    align-content: flex-start;
+    justify-content: center;
+    max-height: 60px;
+  }
+
+  img {
+      border: 2px solid;
+      border-radius: 0.5em;
+      flex: 1 0 100%;
+      max-width: 48px;
+      max-height: 48px;
+  }
+
+	text-shadow: 0 2px 2px rgba(0, 0, 0, 1.0);
+
+	.user-name{
+		margin-top: 0.0em;
+    margin-left: 0.6em;
+    flex: 0 0 auto;
+    align-self: flex-start;
+	}
+
+  .user-screen-name {
+      margin-top: 0.0em;
+      margin-left: 0.6em;
+      font-weight: lighter;
+      font-size: 15px;
+      padding-right: 0.1em;
+      flex: 0 0 auto;
+      align-self: flex-start;
+  }
+  
+  .user-interactions {
+    display: flex;
+    flex-flow: row wrap;
+    justify-content: center;
+
+    div {
+      flex: 1;
+    }
+    margin-top: 0.5em;
+    margin-bottom: -1.2em;
+
+    .following {
+      font-size: 14px;
+      flex: 0 0 100%;
+      margin-bottom: 0.5em;
+    }
+
+    .mute {
+      max-width: 200px;
+    }
+
+    .follow {
+      max-width: 200px;
+    }
+
+    button {
+      width: 80%;
+      height: 100%;
+      border: 1px solid;
+    }
+  }
+}
+
+.user-counts {
+    display: flex;
+    line-height:16px;
+    padding: 1em 1.5em 0em 1em;
+    text-align: center;
+}
+
+.user-count {
+    flex: 1;
+
+    h5 {
+    	font-size:1em;
+        font-weight: bolder;
+        margin: 0 0 0.25em;
+    }
+}
+</style>
diff --git a/src/components/user_profile/user_profile.vue b/src/components/user_profile/user_profile.vue
index b0d6db85..11a61bfc 100644
--- a/src/components/user_profile/user_profile.vue
+++ b/src/components/user_profile/user_profile.vue
@@ -7,45 +7,10 @@
 <script src="./user_profile.js"></script>
 
 <style lang="scss">
- .user-profile {
-   flex: 2;
-   flex-basis: 500px;
- }
 
- .user-info {
-     .user-interactions {
-         display: flex;
-         flex-flow: row wrap;
-         justify-content: center;
+.user-profile {
+  flex: 2;
+  flex-basis: 500px;
+}
 
-         div {
-             flex: 1;
-         }
-         margin-top: 0.5em;
-         margin-bottom: -1.2em;
-
-         .following {
-             font-size: 14px;
-             flex: 0 0 100%;
-             margin-bottom: 0.5em;
-         }
-
-         .mute {
-             max-width: 200px;
-         }
-
-         .follow {
-             max-width: 200px;
-         }
-
-         button {
-             width: 80%;
-             height: 100%;
-             border: 1px solid;
-         }
-     }
-     .user-screen-name {
-     	margin-top: 0.4em;
-     }
- }
 </style>