Browse Source

improve PersonalDropdown

Yuki Takei 5 years ago
parent
commit
2837147b5c

+ 2 - 2
resource/locales/en-US/translation.json

@@ -60,8 +60,8 @@
   "No diff": "No diff",
   "No diff": "No diff",
   "Shrink versions that have no diffs": "Shrink versions that have no diffs",
   "Shrink versions that have no diffs": "Shrink versions that have no diffs",
   "User ID": "User ID",
   "User ID": "User ID",
-  "User's Home": "User's Home",
-  "User Settings": "User Settings",
+  "Home": "Home",
+  "Settings": "Settings",
   "User Information": "User information",
   "User Information": "User information",
   "Basic Info": "Basic info",
   "Basic Info": "Basic info",
   "Name": "Name",
   "Name": "Name",

+ 2 - 2
resource/locales/ja/translation.json

@@ -60,8 +60,8 @@
   "No diff": "差分なし",
   "No diff": "差分なし",
   "Shrink versions that have no diffs": "差分のないバージョンをコンパクトに表示する",
   "Shrink versions that have no diffs": "差分のないバージョンをコンパクトに表示する",
   "User ID": "ユーザーID",
   "User ID": "ユーザーID",
-  "User's Home": "ユーザーホーム",
-  "User Settings": "ユーザー設定",
+  "Home": "ホーム",
+  "Settings": "設定",
   "User Information": "ユーザー情報",
   "User Information": "ユーザー情報",
   "Basic Info": "ユーザーの基本情報",
   "Basic Info": "ユーザーの基本情報",
   "Name": "名前",
   "Name": "名前",

+ 17 - 2
src/client/js/components/Navbar/PersonalDropdown.jsx

@@ -65,8 +65,23 @@ const PersonalDropdown = (props) => {
       {/* Menu */}
       {/* Menu */}
       <div className="dropdown-menu dropdown-menu-right">
       <div className="dropdown-menu dropdown-menu-right">
 
 
-        <a className="dropdown-item" href={`/user/${user.username}`}><i className="icon-fw icon-user"></i>{ t('User\'s Home') }</a>
-        <a className="dropdown-item" href="/me"><i className="icon-fw icon-wrench"></i>{ t('User Settings') }</a>
+        <div className="px-4 pt-3 pb-2 text-center">
+          <UserPicture user={user} size="lg" noLink noTooltip />
+
+          <h5 className="mt-2">
+            {user.name}
+          </h5>
+
+          <div className="my-2">
+            <i className="icon-user icon-fw"></i>{user.username}<br />
+            <i className="icon-envelope icon-fw"></i><span className="grw-email-sm">{user.email}</span>
+          </div>
+
+          <div className="btn-group btn-block mt-2" role="group">
+            <a className="btn btn-sm btn-outline-secondary" href={`/user/${user.username}`}><i className="icon-fw icon-home"></i>{ t('Home') }</a>
+            <a className="btn btn-sm btn-outline-secondary" href="/me"><i className="icon-fw icon-wrench"></i>{ t('Settings') }</a>
+          </div>
+        </div>
 
 
         <div className="dropdown-divider"></div>
         <div className="dropdown-divider"></div>
 
 

+ 6 - 5
src/client/styles/scss/_navbar.scss

@@ -27,11 +27,6 @@
     padding: 0 1rem;
     padding: 0 1rem;
   }
   }
 
 
-  #personal-dropdown::after {
-    // hide caret
-    content: none;
-  }
-
   .nav-link {
   .nav-link {
     &:hover {
     &:hover {
       background: rgba(0, 0, 0, 0.1);
       background: rgba(0, 0, 0, 0.1);
@@ -44,4 +39,10 @@
   .nav-item.confidential {
   .nav-item.confidential {
     background: rgba(0, 0, 0, 0.2);
     background: rgba(0, 0, 0, 0.2);
   }
   }
+
+  .grw-personal-dropdown {
+    .grw-email-sm {
+      font-size: 0.75em;
+    }
+  }
 }
 }

+ 3 - 3
src/client/styles/scss/_override-bootstrap.scss

@@ -77,13 +77,13 @@
   }
   }
 
 
   // Dropdowns
   // Dropdowns
-  .dropdown {
-    .dropdown-toggle.btn.disabled {
+  .dropdown-toggle {
+    &.btn.disabled {
       cursor: not-allowed;
       cursor: not-allowed;
     }
     }
 
 
     // hide caret
     // hide caret
-    .dropdown-toggle.dropdown-toggle-no-caret::after {
+    &.dropdown-toggle-no-caret::after {
       content: none;
       content: none;
     }
     }
   }
   }

+ 1 - 1
src/server/views/layout/layout.html

@@ -99,7 +99,7 @@
             </a>
             </a>
           </li>
           </li>
         {% endif %}
         {% endif %}
-        <li id="personal-dropdown" class="nav-item dropdown dropdown-toggle"></li>
+        <li id="personal-dropdown" class="grw-personal-dropdown nav-item dropdown dropdown-toggle dropdown-toggle-no-caret"></li>
       {% else %}
       {% else %}
         <li id="login-user" class="nav-item"><a class="nav-link" href="/login">Login</a></li>
         <li id="login-user" class="nav-item"><a class="nav-link" href="/login">Login</a></li>
       {% endif %}
       {% endif %}