소스 검색

Merge pull request #31 from gigaSproule/master

Allow gravatar to be used for the images, about section to exist under the profile and able to hide the logo on the header
ppoffice 10 년 전
부모
커밋
8b78173fa3
6개의 변경된 파일68개의 추가작업 그리고 25개의 파일을 삭제
  1. 19 0
      .editorconfig
  2. 3 1
      .gitignore
  3. 2 0
      _config.yml.example
  4. 12 12
      layout/_partial/header.ejs
  5. 15 9
      layout/_partial/profile.ejs
  6. 17 3
      source/css/_partial/profile.styl

+ 19 - 0
.editorconfig

@@ -0,0 +1,19 @@
+# EditorConfig is awesome: http://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+# Unix-style newlines with a newline ending every file
+[*]
+end_of_line = lf
+insert_final_newline = true
+
+# Matches multiple files with brace expansion notation
+# Set default charset
+[*.{js,py}]
+charset = utf-8
+
+# 4 space indentation
+[{*.json,*.yml,*.styl,*.ejs}]
+indent_style = space
+indent_size = 2

+ 3 - 1
.gitignore

@@ -1 +1,3 @@
-_config.yml
+_config.yml
+*.iml
+.idea

+ 2 - 0
_config.yml.example

@@ -12,6 +12,8 @@ fancybox: true
 
 # Profile
 profile: true # whether to show profile bar
+gravatar: false # whether to use gravatar with the email
+showlogo: false # whether to show the logo in the header
 
 # Sidebar
 sidebar: right # set to false if you don't want a sidebar

+ 12 - 12
layout/_partial/header.ejs

@@ -1,18 +1,18 @@
 <header id="header">
   <div id="header-main" class="header-inner">
     <div class="outer">
-      <a href="<%- url_for('.') %>" id="logo"><i class="logo"></i><span class="site-title"><%= config.title %></span></a>
+      <a href="<%- url_for() %>" id="logo"><%=(theme.showlogo? '<i class="logo"></i>':'')%><span class="site-title"><%= config.title %></span></a>
       <nav id="main-nav">
         <% for (var i in theme.menu){ %>
           <a class="main-nav-link" href="<%- url_for(theme.menu[i]) %>"><%= i %></a>
         <% } %>
       </nav>
       <% if(theme.profile) { %>
-      <nav id="sub-nav">
-        <div class="profile" id="profile-nav">
-          <a id="profile-anchor" href="javascript:;"><img class="avatar" src="<%- url_for(config.avatar) %>"><i class="fa fa-caret-down"></i></a>
-        </div>
-      </nav>
+        <nav id="sub-nav">
+          <div class="profile" id="profile-nav">
+            <a id="profile-anchor" href="javascript:;"><img class="avatar" src="<%= ( theme.gravatar ? gravatar(theme.email) : url_for(config.avatar)) %>"><i class="fa fa-caret-down"></i></a>
+          </div>
+        </nav>
       <% } %>
       <div id="search-form-wrap">
         <%- search_form({button: ' '}) %>
@@ -22,12 +22,12 @@
   <div id="main-nav-mobile" class="header-sub header-inner">
     <table class="menu outer">
       <tr>
-      <% for (var i in theme.menu){ %>
-        <td><a class="main-nav-link" href="<%- url_for(theme.menu[i]) %>"><%= i %></a></td>
-      <% } %>
-      <td>
-        <%- search_form() %>
-      </td>
+        <% for (var i in theme.menu){ %>
+          <td><a class="main-nav-link" href="<%- url_for(theme.menu[i]) %>"><%= i %></a></td>
+        <% } %>
+        <td>
+          <%- search_form() %>
+        </td>
       </tr>
     </table>
   </div>

+ 15 - 9
layout/_partial/profile.ejs

@@ -1,32 +1,38 @@
 <aside id="profile">
   <div class="inner profile-inner">
-  	<div class="base-info profile-block">
-		  <img id="avatar" src="<%- url_for(config.avatar) %>">
+    <div class="base-info profile-block">
+      <img id="avatar" src="<%= ( theme.gravatar ? gravatar(theme.email) : url_for(config.avatar)) %>">
       <h2 id="name"><%= config.author %></h2>
       <h3 id="title"><%= config.author_title %></h3>
       <span id="location"><i class="fa fa-map-marker"></i><%= config.location %></span>
-      <a id="follow" href="<%= config.follow %>"><%=__('profile.follow')%></a>
-  	</div>
+      <a id="follow" href="<%= config.follow %>"><%= __('profile.follow') %></a>
+    </div>
     <div class="article-info profile-block">
       <div class="article-info-block">
         <%= site.posts.length %>
-        <span><%= (site.posts.length > 1?__('profile.posts'):__('profile.post')) %></span>
+        <span><%= (site.posts.length > 1 ? __('profile.posts') : __('profile.post')) %></span>
       </div>
       <div class="article-info-block">
         <%= site.tags.length %>
-        <span><%= (site.tags.length > 1?__('profile.tags'):__('profile.tag')) %></span>
+        <span><%= (site.tags.length > 1 ? __('profile.tags') : __('profile.tag')) %></span>
       </div>
     </div>
     <% if(theme.contacts) { %>
     <div class="contact-info profile-block">
       <table class="contact-list">
         <tr>
-        <% for(var i in theme.contacts) { %>
+          <% for(var i in theme.contacts) { %>
           <td><a href="<%- url_for(theme.contacts[i]) %>" target="_blank" title="<%= i %>"><i class="fa fa-<%= i %>"></i></a></td>
-        <% } %>
+          <% } %>
         </tr>
       </table>
     </div>
     <% } %>
+    <% if(theme.about) { %>
+    <div class="article-info profile-block bio">
+      <h2>About</h2>
+      <p><%- theme.about %></p>
+    </div>
+    <% } %>
   </div>
-</aside>
+</aside>

+ 17 - 3
source/css/_partial/profile.styl

@@ -1,3 +1,17 @@
+.bio
+  text-align: center
+
+#profile .inner .bio h2
+  font-size: 1.3em
+  font-weight: bold
+  margin-top: 15px
+
+#profile .inner .bio p
+  margin: 5px 20px 10px 20px
+  text-align: justify
+  max-width: 300px
+  line-height: 1.5em
+
 .profile-block
   padding: 15px 20px
   border-bottom: 1px solid color-border
@@ -8,7 +22,7 @@
   display: none
   @media mq-normal
     display: block
-    column(profile-column)
+  column(profile-column)
   .inner
     @extend $block
     margin-top: block-margin
@@ -86,7 +100,7 @@
                 white-space: nowrap
                 border-radius: 2px
                 text-transform: uppercase
-                box-shadow: 0 0 2px rgba(0,0,0,0.2)
+                box-shadow: 0 0 2px rgba(0, 0, 0, 0.2)
                 z-index: 1
               &:before
                 top: -12px
@@ -107,7 +121,7 @@
     position: absolute
     .profile-inner
       position: relative
-      box-shadow: 0 2px 5px rgba(0,0,0,0.2)
+      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2)
       &:before, &:after
         z-index: 1
         content: ''