From bc279557909464fe013fe206594dd022bba22bf2 Mon Sep 17 00:00:00 2001 From: Amir Chaudhry Date: Fri, 14 Jun 2013 01:04:21 +0100 Subject: [PATCH] commit website draft --- .gitignore | 97 + 404.html | 76 + Rakefile | 309 + _config.yml | 127 + _includes/JB/analytics | 14 + _includes/JB/analytics-providers/getclicky | 12 + _includes/JB/analytics-providers/google | 11 + _includes/JB/analytics-providers/mixpanel | 11 + _includes/JB/categories_list | 37 + _includes/JB/comments | 16 + _includes/JB/comments-providers/disqus | 14 + _includes/JB/comments-providers/facebook | 9 + _includes/JB/comments-providers/intensedebate | 6 + _includes/JB/comments-providers/livefyre | 6 + _includes/JB/liquid_raw | 32 + _includes/JB/pages_list | 39 + _includes/JB/posts_collate | 55 + _includes/JB/setup | 22 + _includes/JB/sharing | 8 + _includes/JB/tags_list | 33 + _includes/amc/atom_entry.xml | 8 + _includes/amc/mailchimp.html | 16 + _includes/amc/make_gallery | 51 + _includes/amc/nav_list | 7 + _includes/amc/posts_collate | 55 + _includes/amc/tags_list | 33 + _includes/themes/twitter-mod/default.html | 67 + _includes/themes/twitter-mod/page.html | 9 + _includes/themes/twitter-mod/post.html | 44 + _includes/themes/twitter-mod/settings.yml | 2 + _layouts/default.html | 6 + _layouts/page.html | 5 + _layouts/post.html | 5 + _plugins/debug.rb | 38 + _wip/old/404-page/index.md | 13 + _wip/old/categories.html | 22 + _wip/old/pages.html | 13 + _wip/possible-images.md | 21 + _wip/template.md | 18 + about/index.md | 27 + archive/index.html | 11 + .../bootstrap/css/bootstrap.2.2.2.min.css | 782 +++ .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../bootstrap/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../twitter-mod/css/bootstrap-responsive.css | 1109 +++ .../css/bootstrap-responsive.min.css | 9 + assets/themes/twitter-mod/css/readable.css | 6212 +++++++++++++++++ .../themes/twitter-mod/css/readable.min.css | 9 + .../themes/twitter-mod/css/style-custom.css | 80 + assets/themes/twitter-mod/css/style-old.css | 58 + assets/themes/twitter-mod/css/style.css | 65 + .../twitter-mod/less/bootswatch-readable.less | 59 + assets/themes/twitter-mod/less/variables.less | 301 + atom.xml | 28 + blog/_posts/2010-03-29-intro.md | 22 + blog/_posts/2010-04-15-uiprototype.md | 27 + .../2010-04-29-yurts-for-digital-nomads.md | 24 + ...1-20-growing-awareness-of-personal-data.md | 29 + blog/_posts/2012-01-25-o2-privacy-leak.md | 24 + ...012-01-26-queries-over-distributed-data.md | 25 + ...12-02-08-connected-devices-and-signpost.md | 51 + ...ecommendations-and-address-book-privacy.md | 77 + ...012-03-16-erosion-of-rights-via-sharing.md | 33 + blog/index.md | 37 + docs/index.md | 37 + images/404-alpha.png | Bin 0 -> 103401 bytes images/cloudHouse.jpg | Bin 0 -> 207261 bytes images/gear-cloud-thumb.png | Bin 0 -> 17681 bytes images/gear-cloud.png | Bin 0 -> 52141 bytes images/networked-devices-thumb.png | Bin 0 -> 35706 bytes images/networked-devices.png | Bin 0 -> 118126 bytes images/tree_of_digital_life-thumb.png | Bin 0 -> 11735 bytes images/tree_of_digital_life.png | Bin 0 -> 30803 bytes index.md | 38 + overview/index.md | 15 + robots.txt | 2 + rss.xml | 28 + sitemap.txt | 8 + tags/index.md | 20 + tags/mkatom.sh | 36 + tools/index.md | 48 + tools/irminsule/index.md | 17 + tools/mirage/index.md | 16 + tools/signpost/index.md | 34 + 84 files changed, 10765 insertions(+) create mode 100644 .gitignore create mode 100644 404.html create mode 100644 Rakefile create mode 100644 _config.yml create mode 100644 _includes/JB/analytics create mode 100644 _includes/JB/analytics-providers/getclicky create mode 100644 _includes/JB/analytics-providers/google create mode 100644 _includes/JB/analytics-providers/mixpanel create mode 100644 _includes/JB/categories_list create mode 100644 _includes/JB/comments create mode 100644 _includes/JB/comments-providers/disqus create mode 100644 _includes/JB/comments-providers/facebook create mode 100644 _includes/JB/comments-providers/intensedebate create mode 100644 _includes/JB/comments-providers/livefyre create mode 100644 _includes/JB/liquid_raw create mode 100644 _includes/JB/pages_list create mode 100644 _includes/JB/posts_collate create mode 100644 _includes/JB/setup create mode 100644 _includes/JB/sharing create mode 100644 _includes/JB/tags_list create mode 100644 _includes/amc/atom_entry.xml create mode 100644 _includes/amc/mailchimp.html create mode 100644 _includes/amc/make_gallery create mode 100644 _includes/amc/nav_list create mode 100644 _includes/amc/posts_collate create mode 100644 _includes/amc/tags_list create mode 100644 _includes/themes/twitter-mod/default.html create mode 100644 _includes/themes/twitter-mod/page.html create mode 100644 _includes/themes/twitter-mod/post.html create mode 100644 _includes/themes/twitter-mod/settings.yml create mode 100644 _layouts/default.html create mode 100644 _layouts/page.html create mode 100644 _layouts/post.html create mode 100644 _plugins/debug.rb create mode 100644 _wip/old/404-page/index.md create mode 100644 _wip/old/categories.html create mode 100644 _wip/old/pages.html create mode 100644 _wip/possible-images.md create mode 100644 _wip/template.md create mode 100644 about/index.md create mode 100644 archive/index.html create mode 100644 assets/themes/twitter-mod/bootstrap/css/bootstrap.2.2.2.min.css create mode 100644 assets/themes/twitter-mod/bootstrap/img/glyphicons-halflings-white.png create mode 100644 assets/themes/twitter-mod/bootstrap/img/glyphicons-halflings.png create mode 100644 assets/themes/twitter-mod/css/bootstrap-responsive.css create mode 100644 assets/themes/twitter-mod/css/bootstrap-responsive.min.css create mode 100644 assets/themes/twitter-mod/css/readable.css create mode 100644 assets/themes/twitter-mod/css/readable.min.css create mode 100644 assets/themes/twitter-mod/css/style-custom.css create mode 100644 assets/themes/twitter-mod/css/style-old.css create mode 100644 assets/themes/twitter-mod/css/style.css create mode 100644 assets/themes/twitter-mod/less/bootswatch-readable.less create mode 100644 assets/themes/twitter-mod/less/variables.less create mode 100644 atom.xml create mode 100644 blog/_posts/2010-03-29-intro.md create mode 100644 blog/_posts/2010-04-15-uiprototype.md create mode 100644 blog/_posts/2010-04-29-yurts-for-digital-nomads.md create mode 100644 blog/_posts/2012-01-20-growing-awareness-of-personal-data.md create mode 100644 blog/_posts/2012-01-25-o2-privacy-leak.md create mode 100644 blog/_posts/2012-01-26-queries-over-distributed-data.md create mode 100644 blog/_posts/2012-02-08-connected-devices-and-signpost.md create mode 100644 blog/_posts/2012-02-23-friend-recommendations-and-address-book-privacy.md create mode 100644 blog/_posts/2012-03-16-erosion-of-rights-via-sharing.md create mode 100644 blog/index.md create mode 100644 docs/index.md create mode 100644 images/404-alpha.png create mode 100644 images/cloudHouse.jpg create mode 100644 images/gear-cloud-thumb.png create mode 100644 images/gear-cloud.png create mode 100644 images/networked-devices-thumb.png create mode 100644 images/networked-devices.png create mode 100644 images/tree_of_digital_life-thumb.png create mode 100644 images/tree_of_digital_life.png create mode 100644 index.md create mode 100644 overview/index.md create mode 100644 robots.txt create mode 100644 rss.xml create mode 100644 sitemap.txt create mode 100644 tags/index.md create mode 100755 tags/mkatom.sh create mode 100644 tools/index.md create mode 100644 tools/irminsule/index.md create mode 100644 tools/mirage/index.md create mode 100644 tools/signpost/index.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9a297fe --- /dev/null +++ b/.gitignore @@ -0,0 +1,97 @@ +## +## generic gitignore file. +## - amirmc +## + +################################################# +# OS Specific # +################################################# + # Linux +*~ + # Mac OSX +.DS_Store +.Thumbs +.AppleDouble +.LSOverride +Icon +._* +.Spotlight-V100 +.Trashes + # Windows +Thumbs.db +ehthumbs.db +Desktop.ini +$RECYCLE.BIN/ + +################################################# +# Jekyll # +################################################# +_site/* +_theme_packages/* + +################################################# +# Code # +################################################# + # OCaml +*.annot +*.cmo +*.cma +*.cmi +*.a +*.o +*.cmx +*.cmxs +*.cmxa + # Ruby +.rbenv-version +.rvmrc + +################################################# +# Editors # +################################################# + # LaTeX +*.acn +*.acr +*.alg +*.aux +*.bbl +*.blg +*.dvi +*.fdb_latexmk +*.glg +*.glo +*.gls +*.idx +*.ilg +*.ind +*.ist +*.lof +*.log +*.lot +*.maf +*.mtc +*.mtc0 +*.nav +*.nlo +*.out +*.pdfsync +*.ps +*.snm +*.synctex.gz +*.toc +*.vrb +*.xdy +*.tdo + # Sublime Text +*.sublime-workspace + # vim +.*.sw[a-z] +*.un~ +Session.vim +.netrwhist + +################################################# +# Misc # +################################################# + # No idea... +!.gitkeep diff --git a/404.html b/404.html new file mode 100644 index 0000000..1a83eb6 --- /dev/null +++ b/404.html @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + +
+
+

Page not found

+

Sorry, the content you’re looking for doesn’t seem to be here.

+

Perhaps you could try looking from the front page at nymote.org.

+

+
+
+
+
+
+

© 2012-2013 Nymote

+
+
+ + + diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..18bc7c5 --- /dev/null +++ b/Rakefile @@ -0,0 +1,309 @@ +require "rubygems" +require 'rake' +require 'yaml' +require 'time' + +SOURCE = "." +CONFIG = { + 'version' => "0.3.0", + 'themes' => File.join(SOURCE, "_includes", "themes"), + 'layouts' => File.join(SOURCE, "_layouts"), + 'posts' => File.join(SOURCE, "_posts"), + 'post_ext' => "md", + 'theme_package_version' => "0.1.0" +} + +# Path configuration helper +module JB + class Path + SOURCE = "." + Paths = { + :layouts => "_layouts", + :themes => "_includes/themes", + :theme_assets => "assets/themes", + :theme_packages => "_theme_packages", + :posts => "_posts" + } + + def self.base + SOURCE + end + + # build a path relative to configured path settings. + def self.build(path, opts = {}) + opts[:root] ||= SOURCE + path = "#{opts[:root]}/#{Paths[path.to_sym]}/#{opts[:node]}".split("/") + path.compact! + File.__send__ :join, path + end + + end #Path +end #JB + +# Usage: rake post title="A Title" [date="2012-02-09"] [tags=[tag1, tag2]] +desc "Begin a new post in #{CONFIG['posts']}" +task :post do + abort("rake aborted: '#{CONFIG['posts']}' directory not found.") unless FileTest.directory?(CONFIG['posts']) + title = ENV["title"] || "new-post" + tags = ENV["tags"] || "[]" + slug = title.downcase.strip.gsub(' ', '-').gsub(/[^\w-]/, '') + begin + date = (ENV['date'] ? Time.parse(ENV['date']) : Time.now).strftime('%Y-%m-%d') + rescue Exception => e + puts "Error - date format must be YYYY-MM-DD, please check you typed it correctly!" + exit -1 + end + filename = File.join(CONFIG['posts'], "#{date}-#{slug}.#{CONFIG['post_ext']}") + if File.exist?(filename) + abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n' + end + + puts "Creating new post: #{filename}" + open(filename, 'w') do |post| + post.puts "---" + post.puts "layout: post" + post.puts "title: \"#{title.gsub(/-/,' ')}\"" + post.puts 'description: ""' + post.puts "category: " + post.puts "tags: []" + post.puts "---" + post.puts "{% include JB/setup %}" + end +end # task :post + +# Usage: rake page name="about.html" +# You can also specify a sub-directory path. +# If you don't specify a file extention we create an index.html at the path specified +desc "Create a new page." +task :page do + name = ENV["name"] || "new-page.md" + filename = File.join(SOURCE, "#{name}") + filename = File.join(filename, "index.html") if File.extname(filename) == "" + title = File.basename(filename, File.extname(filename)).gsub(/[\W\_]/, " ").gsub(/\b\w/){$&.upcase} + if File.exist?(filename) + abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n' + end + + mkdir_p File.dirname(filename) + puts "Creating new page: #{filename}" + open(filename, 'w') do |post| + post.puts "---" + post.puts "layout: page" + post.puts "title: \"#{title}\"" + post.puts 'description: ""' + post.puts "---" + post.puts "{% include JB/setup %}" + end +end # task :page + +desc "Launch preview environment" +task :preview do + system "jekyll --auto --server" +end # task :preview + +# Public: Alias - Maintains backwards compatability for theme switching. +task :switch_theme => "theme:switch" + +namespace :theme do + + # Public: Switch from one theme to another for your blog. + # + # name - String, Required. name of the theme you want to switch to. + # The the theme must be installed into your JB framework. + # + # Examples + # + # rake theme:switch name="the-program" + # + # Returns Success/failure messages. + desc "Switch between Jekyll-bootstrap themes." + task :switch do + theme_name = ENV["name"].to_s + theme_path = File.join(CONFIG['themes'], theme_name) + settings_file = File.join(theme_path, "settings.yml") + non_layout_files = ["settings.yml"] + + abort("rake aborted: name cannot be blank") if theme_name.empty? + abort("rake aborted: '#{theme_path}' directory not found.") unless FileTest.directory?(theme_path) + abort("rake aborted: '#{CONFIG['layouts']}' directory not found.") unless FileTest.directory?(CONFIG['layouts']) + + Dir.glob("#{theme_path}/*") do |filename| + next if non_layout_files.include?(File.basename(filename).downcase) + puts "Generating '#{theme_name}' layout: #{File.basename(filename)}" + + open(File.join(CONFIG['layouts'], File.basename(filename)), 'w') do |page| + if File.basename(filename, ".html").downcase == "default" + page.puts "---" + page.puts File.read(settings_file) if File.exist?(settings_file) + page.puts "---" + else + page.puts "---" + page.puts "layout: default" + page.puts "---" + end + page.puts "{% include JB/setup %}" + page.puts "{% include themes/#{theme_name}/#{File.basename(filename)} %}" + end + end + + puts "=> Theme successfully switched!" + puts "=> Reload your web-page to check it out =)" + end # task :switch + + # Public: Install a theme using the theme packager. + # Version 0.1.0 simple 1:1 file matching. + # + # git - String, Optional path to the git repository of the theme to be installed. + # name - String, Optional name of the theme you want to install. + # Passing name requires that the theme package already exist. + # + # Examples + # + # rake theme:install git="https://github.com/jekyllbootstrap/theme-twitter.git" + # rake theme:install name="cool-theme" + # + # Returns Success/failure messages. + desc "Install theme" + task :install do + if ENV["git"] + manifest = theme_from_git_url(ENV["git"]) + name = manifest["name"] + else + name = ENV["name"].to_s.downcase + end + + packaged_theme_path = JB::Path.build(:theme_packages, :node => name) + + abort("rake aborted! + => ERROR: 'name' cannot be blank") if name.empty? + abort("rake aborted! + => ERROR: '#{packaged_theme_path}' directory not found. + => Installable themes can be added via git. You can find some here: http://github.com/jekyllbootstrap + => To download+install run: `rake theme:install git='[PUBLIC-CLONE-URL]'` + => example : rake theme:install git='git@github.com:jekyllbootstrap/theme-the-program.git' + ") unless FileTest.directory?(packaged_theme_path) + + manifest = verify_manifest(packaged_theme_path) + + # Get relative paths to packaged theme files + # Exclude directories as they'll be recursively created. Exclude meta-data files. + packaged_theme_files = [] + FileUtils.cd(packaged_theme_path) { + Dir.glob("**/*.*") { |f| + next if ( FileTest.directory?(f) || f =~ /^(manifest|readme|packager)/i ) + packaged_theme_files << f + } + } + + # Mirror each file into the framework making sure to prompt if already exists. + packaged_theme_files.each do |filename| + file_install_path = File.join(JB::Path.base, filename) + if File.exist? file_install_path and ask("#{file_install_path} already exists. Do you want to overwrite?", ['y', 'n']) == 'n' + next + else + mkdir_p File.dirname(file_install_path) + cp_r File.join(packaged_theme_path, filename), file_install_path + end + end + + puts "=> #{name} theme has been installed!" + puts "=> ---" + if ask("=> Want to switch themes now?", ['y', 'n']) == 'y' + system("rake switch_theme name='#{name}'") + end + end + + # Public: Package a theme using the theme packager. + # The theme must be structured using valid JB API. + # In other words packaging is essentially the reverse of installing. + # + # name - String, Required name of the theme you want to package. + # + # Examples + # + # rake theme:package name="twitter" + # + # Returns Success/failure messages. + desc "Package theme" + task :package do + name = ENV["name"].to_s.downcase + theme_path = JB::Path.build(:themes, :node => name) + asset_path = JB::Path.build(:theme_assets, :node => name) + + abort("rake aborted: name cannot be blank") if name.empty? + abort("rake aborted: '#{theme_path}' directory not found.") unless FileTest.directory?(theme_path) + abort("rake aborted: '#{asset_path}' directory not found.") unless FileTest.directory?(asset_path) + + ## Mirror theme's template directory (_includes) + packaged_theme_path = JB::Path.build(:themes, :root => JB::Path.build(:theme_packages, :node => name)) + mkdir_p packaged_theme_path + cp_r theme_path, packaged_theme_path + + ## Mirror theme's asset directory + packaged_theme_assets_path = JB::Path.build(:theme_assets, :root => JB::Path.build(:theme_packages, :node => name)) + mkdir_p packaged_theme_assets_path + cp_r asset_path, packaged_theme_assets_path + + ## Log packager version + packager = {"packager" => {"version" => CONFIG["theme_package_version"].to_s } } + open(JB::Path.build(:theme_packages, :node => "#{name}/packager.yml"), "w") do |page| + page.puts packager.to_yaml + end + + puts "=> '#{name}' theme is packaged and available at: #{JB::Path.build(:theme_packages, :node => name)}" + end + +end # end namespace :theme + +# Internal: Download and process a theme from a git url. +# Notice we don't know the name of the theme until we look it up in the manifest. +# So we'll have to change the folder name once we get the name. +# +# url - String, Required url to git repository. +# +# Returns theme manifest hash +def theme_from_git_url(url) + tmp_path = JB::Path.build(:theme_packages, :node => "_tmp") + abort("rake aborted: system call to git clone failed") if !system("git clone #{url} #{tmp_path}") + manifest = verify_manifest(tmp_path) + new_path = JB::Path.build(:theme_packages, :node => manifest["name"]) + if File.exist?(new_path) && ask("=> #{new_path} theme package already exists. Override?", ['y', 'n']) == 'n' + remove_dir(tmp_path) + abort("rake aborted: '#{manifest["name"]}' already exists as theme package.") + end + + remove_dir(new_path) if File.exist?(new_path) + mv(tmp_path, new_path) + manifest +end + +# Internal: Process theme package manifest file. +# +# theme_path - String, Required. File path to theme package. +# +# Returns theme manifest hash +def verify_manifest(theme_path) + manifest_path = File.join(theme_path, "manifest.yml") + manifest_file = File.open( manifest_path ) + abort("rake aborted: repo must contain valid manifest.yml") unless File.exist? manifest_file + manifest = YAML.load( manifest_file ) + manifest_file.close + manifest +end + +def ask(message, valid_options) + if valid_options + answer = get_stdin("#{message} #{valid_options.to_s.gsub(/"/, '').gsub(/, /,'/')} ") while !valid_options.include?(answer) + else + answer = get_stdin(message) + end + answer +end + +def get_stdin(message) + print message + STDIN.gets.chomp +end + +#Load custom rake scripts +Dir['_rake/*.rake'].each { |r| load r } diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..55c1772 --- /dev/null +++ b/_config.yml @@ -0,0 +1,127 @@ +# This is the default format. +# For more see: https://github.com/mojombo/jekyll/wiki/Permalinks +permalink: /:categories/:year/:title + +exclude: [".rvmrc", ".rbenv-version", "README.md", "Rakefile", "changelog.md"] +pygments: true + +# Themes are encouraged to use these universal variables +# so be sure to set them if your theme uses them. +# +title : Nymote +tagline: Your conductor in the cloud +author : + name : Nymote + email : amir@nymote.com + github : nymote + twitter : nymote + feedburner : nymote + +# The production_url is only used when full-domain names are needed +# such as sitemap.txt +# Most places will/should use BASE_PATH to make the urls +# +# If you have set a CNAME (pages.github.com) set your custom domain here. +# Else if you are pushing to username.github.io, replace with your username. +# Finally if you are pushing to a GitHub project page, include the project name at the end. +# +production_url : http://nymote.github.io + +# All Jekyll-Bootstrap specific configurations are namespaced into this hash +# +JB : + version : 0.3.0 + + # All links will be namespaced by BASE_PATH if defined. + # Links in your website should always be prefixed with {{BASE_PATH}} + # however this value will be dynamically changed depending on your deployment situation. + # + # CNAME (http://yourcustomdomain.com) + # DO NOT SET BASE_PATH + # (urls will be prefixed with "/" and work relatively) + # + # GitHub Pages (http://username.github.io) + # DO NOT SET BASE_PATH + # (urls will be prefixed with "/" and work relatively) + # + # GitHub Project Pages (http://username.github.io/project-name) + # + # A GitHub Project site exists in the `gh-pages` branch of one of your repositories. + # REQUIRED! Set BASE_PATH to: http://username.github.io/project-name + # + # CAUTION: + # - When in Localhost, your site will run from root "/" regardless of BASE_PATH + # - Only the following values are falsy: ["", null, false] + # - When setting BASE_PATH it must be a valid url. + # This means always setting the protocol (http|https) or prefixing with "/" + BASE_PATH : false + + # By default, the asset_path is automatically defined relative to BASE_PATH plus the enabled theme. + # ex: [BASE_PATH]/assets/themes/[THEME-NAME] + # + # Override this by defining an absolute path to assets here. + # ex: + # http://s3.amazonaws.com/yoursite/themes/watermelon + # /assets + # + ASSET_PATH : false + + # These paths are to the main pages Jekyll-Bootstrap ships with. + # Some JB helpers refer to these paths; change them here if needed. + # + archive_path: /archive/ + categories_path : #/categories.html + tags_path : /tags/ + atom_path : /atom.xml + rss_path : /rss.xml + + # Settings for comments helper + # Set 'provider' to the comment provider you want to use. + # Set 'provider' to false to turn commenting off globally. + # + comments : + provider : livefyre +# disqus : +# short_name : jekyllbootstrap + livefyre : + site_id : 336188 +# intensedebate : +# account : 123abc +# facebook : +# appid : 123 +# num_posts: 5 +# width: 580 +# colorscheme: light + + # Settings for analytics helper + # Set 'provider' to the analytics provider you want to use. + # Set 'provider' to false to turn analytics off globally. + # + analytics : + provider : google + google : + tracking_id : 'UA-41508244-1' + getclicky : + site_id : + mixpanel : + token : '_MIXPANEL_TOKEN_' + + # Settings for sharing helper. + # Sharing is for things like tweet, plusone, like, reddit buttons etc. + # Set 'provider' to the sharing provider you want to use. + # Set 'provider' to false to turn sharing off globally. + # + sharing : + provider : false + + # Settings for all other include helpers can be defined by creating + # a hash with key named for the given helper. ex: + # + # pages_list : + # provider : "custom" + # + # Setting any helper's provider to 'custom' will bypass the helper code + # and include your custom code. Your custom file must be defined at: + # ./_includes/custom/[HELPER] + # where [HELPER] is the name of the helper you are overriding. + diff --git a/_includes/JB/analytics b/_includes/JB/analytics new file mode 100644 index 0000000..4b04ec9 --- /dev/null +++ b/_includes/JB/analytics @@ -0,0 +1,14 @@ +{% if site.safe and site.JB.analytics.provider and page.JB.analytics != false %} + +{% case site.JB.analytics.provider %} +{% when "google" %} + {% include JB/analytics-providers/google %} +{% when "getclicky" %} + {% include JB/analytics-providers/getclicky %} +{% when "mixpanel" %} + {% include JB/analytics-providers/mixpanel %} +{% when "custom" %} + {% include custom/analytics %} +{% endcase %} + +{% endif %} \ No newline at end of file diff --git a/_includes/JB/analytics-providers/getclicky b/_includes/JB/analytics-providers/getclicky new file mode 100644 index 0000000..e9462f4 --- /dev/null +++ b/_includes/JB/analytics-providers/getclicky @@ -0,0 +1,12 @@ + + diff --git a/_includes/JB/analytics-providers/google b/_includes/JB/analytics-providers/google new file mode 100644 index 0000000..9014866 --- /dev/null +++ b/_includes/JB/analytics-providers/google @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/_includes/JB/analytics-providers/mixpanel b/_includes/JB/analytics-providers/mixpanel new file mode 100644 index 0000000..4406eb0 --- /dev/null +++ b/_includes/JB/analytics-providers/mixpanel @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/_includes/JB/categories_list b/_includes/JB/categories_list new file mode 100644 index 0000000..83be2e2 --- /dev/null +++ b/_includes/JB/categories_list @@ -0,0 +1,37 @@ +{% comment %}{% endcomment %} + +{% if site.JB.categories_list.provider == "custom" %} + {% include custom/categories_list %} +{% else %} + {% if categories_list.first[0] == null %} + {% for category in categories_list %} +
  • + {{ category | join: "/" }} {{ site.categories[category].size }} +
  • + {% endfor %} + {% else %} + {% for category in categories_list %} +
  • + {{ category[0] | join: "/" }} {{ category[1].size }} +
  • + {% endfor %} + {% endif %} +{% endif %} +{% assign categories_list = nil %} \ No newline at end of file diff --git a/_includes/JB/comments b/_includes/JB/comments new file mode 100644 index 0000000..4e9e600 --- /dev/null +++ b/_includes/JB/comments @@ -0,0 +1,16 @@ +{% if site.JB.comments.provider and page.comments != false %} + +{% case site.JB.comments.provider %} +{% when "disqus" %} + {% include JB/comments-providers/disqus %} +{% when "livefyre" %} + {% include JB/comments-providers/livefyre %} +{% when "intensedebate" %} + {% include JB/comments-providers/intensedebate %} +{% when "facebook" %} + {% include JB/comments-providers/facebook %} +{% when "custom" %} + {% include custom/comments %} +{% endcase %} + +{% endif %} \ No newline at end of file diff --git a/_includes/JB/comments-providers/disqus b/_includes/JB/comments-providers/disqus new file mode 100644 index 0000000..618a7b7 --- /dev/null +++ b/_includes/JB/comments-providers/disqus @@ -0,0 +1,14 @@ +
    + + +blog comments powered by Disqus diff --git a/_includes/JB/comments-providers/facebook b/_includes/JB/comments-providers/facebook new file mode 100644 index 0000000..6b3e5e0 --- /dev/null +++ b/_includes/JB/comments-providers/facebook @@ -0,0 +1,9 @@ +
    + +
    \ No newline at end of file diff --git a/_includes/JB/comments-providers/intensedebate b/_includes/JB/comments-providers/intensedebate new file mode 100644 index 0000000..ab0c3c9 --- /dev/null +++ b/_includes/JB/comments-providers/intensedebate @@ -0,0 +1,6 @@ + + diff --git a/_includes/JB/comments-providers/livefyre b/_includes/JB/comments-providers/livefyre new file mode 100644 index 0000000..704b803 --- /dev/null +++ b/_includes/JB/comments-providers/livefyre @@ -0,0 +1,6 @@ + + \ No newline at end of file diff --git a/_includes/JB/liquid_raw b/_includes/JB/liquid_raw new file mode 100644 index 0000000..a5c1783 --- /dev/null +++ b/_includes/JB/liquid_raw @@ -0,0 +1,32 @@ +{% comment%}{% endcomment%} + +{% if site.JB.liquid_raw.provider == "custom" %} + {% include custom/liquid_raw %} +{% else %} +
    {{text | replace:"|.", "{" | replace:".|", "}" | replace:">", ">" | replace:"<", "<" }}
    +{% endif %} +{% assign text = nil %} \ No newline at end of file diff --git a/_includes/JB/pages_list b/_includes/JB/pages_list new file mode 100644 index 0000000..42f827a --- /dev/null +++ b/_includes/JB/pages_list @@ -0,0 +1,39 @@ +{% comment %}{% endcomment %} + +{% if site.JB.pages_list.provider == "custom" %} + {% include custom/pages_list %} +{% else %} + {% for node in pages_list %} + {% if node.title != null %} + {% if group == null or group == node.group %} + {% if page.url == node.url %} +
  • {{node.title}}
  • + {% else %} +
  • {{node.title}}
  • + {% endif %} + {% endif %} + {% endif %} + {% endfor %} +{% endif %} +{% assign pages_list = nil %} +{% assign group = nil %} \ No newline at end of file diff --git a/_includes/JB/posts_collate b/_includes/JB/posts_collate new file mode 100644 index 0000000..f612ade --- /dev/null +++ b/_includes/JB/posts_collate @@ -0,0 +1,55 @@ +{% comment %}{% endcomment %} + +{% if site.JB.posts_collate.provider == "custom" %} + {% include custom/posts_collate %} +{% else %} + {% for post in posts_collate %} + {% capture this_year %}{{ post.date | date: "%Y" }}{% endcapture %} + {% capture this_month %}{{ post.date | date: "%B" }}{% endcapture %} + {% capture next_year %}{{ post.previous.date | date: "%Y" }}{% endcapture %} + {% capture next_month %}{{ post.previous.date | date: "%B" }}{% endcapture %} + + {% if forloop.first %} +

    {{this_year}}

    +

    {{this_month}}

    + + {% else %} + {% if this_year != next_year %} + +

    {{next_year}}

    +

    {{next_month}}

    + +

    {{next_month}}

    + +

    {{next_year}}

    + {% comment %}

    {{next_month}}

    {% endcomment %} + + {% comment %}

    {{next_month}}

    {% endcomment %} +