Difference between revisions of "Custom splash page"

From diaspora* project wiki
Jump to: navigation, search
(Do not clutter with "personal experience" notes.)
Line 2: Line 2:
 
All you have to do is to create a <tt>app/views/home/_show.html.haml</tt> to define your own splash page for your Diaspora pod. Or <tt>app/views/home/_show.html.erb</tt> if you prefer to write plain HTML instead of [http://haml-lang.com/ HAML]. Do not copy or overwrite <tt>app/views/home/show.html.haml</tt> (note the missing underscore) or <tt>public/default.html</tt>!
 
All you have to do is to create a <tt>app/views/home/_show.html.haml</tt> to define your own splash page for your Diaspora pod. Or <tt>app/views/home/_show.html.erb</tt> if you prefer to write plain HTML instead of [http://haml-lang.com/ HAML]. Do not copy or overwrite <tt>app/views/home/show.html.haml</tt> (note the missing underscore) or <tt>public/default.html</tt>!
  
If you create this file, be sure to restart diaspora. I (techdruid/Richard) kept getting internal server errors until I restarted diaspora after adding this custom splash page.
+
If you create or change this file, be sure to restart Diaspora, you will get server errors or simply no effect otherwise.
  
 
A very basic example of a <tt>_show.html.haml</tt> would be something like:
 
A very basic example of a <tt>_show.html.haml</tt> would be something like:

Revision as of 16:29, 2 September 2013

All you have to do is to create a app/views/home/_show.html.haml to define your own splash page for your Diaspora pod. Or app/views/home/_show.html.erb if you prefer to write plain HTML instead of HAML. Do not copy or overwrite app/views/home/show.html.haml (note the missing underscore) or public/default.html!

If you create or change this file, be sure to restart Diaspora, you will get server errors or simply no effect otherwise.

A very basic example of a _show.html.haml would be something like:

#content
  .center
    %h2 Welcome to my pod!

A more complete example using the Twitter Bootstrap "Hero" template would look like the following:

.navbar.navbar-fixed-top
  .navbar-inner
    .container-fluid
      %a.btn.btn-navbar{"data-target" => ".nav-collapse", "data-toggle" => "collapse"}
        %span.icon-bar
        %span.icon-bar
        %span.icon-bar
      %a.btn.btn-success.pull-left{:href => "/users/sign_in"} Login
      %a.brand{:href => "/"} Diaspora*
      .nav-collapse
        %ul.nav
          %li
            %a{:href => "/about.html"} About
          %li
            %a{:href => "/privacy.html"} Privacy
          %li
            %a{:href => "/terms.html"} Terms

  .subnav
    %ul.nav.nav-pills
      %li
        %a{:href => "https://twitter.com/joindiaspora"} @joindiaspora
      %li
        %a{:href => "https://github.com/diaspora/diaspora"} GitHub
      %li
        %a{:href => "/source.tar.gz"} Code
      %li
        %a{:href => "https://github.com/diaspora/diaspora/tree/master/Changelog.md"} What's New?

   
  .container{:style => "padding-top: 5%;"}
    .hero-unit
      %img{:alt => "Logo", :src => "/assets/branding/logo_caps.png"}/
      %hr/
      %p
        %b You're about to change the Internet. Let's get you set up, shall we?
      %p
        %a.btn.btn-primary.btn-large{:href => "/users/sign_up"} Start an account! »
    .row
      .span4
        %h2 Heading
        %p Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh.
        %p
          %a.btn{:href => "#"} View details »
      .span4
        %h2 Heading
        %p Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum ni.
        %p
          %a.btn{:href => "#"} View details »
      .span4
        %h2 Heading
        %p Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis.
        %p
          %a.btn{:href => "#"} View details »

  %script{:src => "/js/jquery.js"}
  %script{:src => "/js/bootstrap.js"}

Diaspora already uses Bootstrap CSS so no need to add it yourself, and examples of use are readily available in the previous link. More examples can be found here. but will need to be tweaked similar to the one below. (Linked JS files need to be added yourself. download here.)

Notice the examples above do not include the “head” & “html” elements, those are rendered by Diaspora. For your landing page you just need to provide the body section, and anything else you chose to include.

Ensure that public/ doesn’t contain any index.html or another file that would be used as index file by your Webserver. If such a file exists it’s given precedence by your Webserver and can break the log in.