Giter Site home page Giter Site logo

inandout's Introduction

Notes for developer

This website is built on RefineryCMS. Customizations, design, and other useful info is described below.

Design

  • Design is based on theme-forest theme. Original files can be found under “design” directory. There is good documentation for the theme there.

    • I opted to put style.css from this theme into app/assets, convert to scss, & make changes there.

    • Images from the theme that I changed are in app/assets as well.

    • The rest of the css, js and image files are unchanged and are in vendor/assets

    • Additions (elements not covered in the template) are in application.css.scss (and home for changes specific to home page)

  • Original In & Out logos that were provided are found under “design” directory

  • Client logo images (shown at bottom of home page) are max 60px high and 160px wide.

RefineryCMS customizations

Inquiries Engine

2 fields were added to inquiries - “company” and “services”. Both are string fields, but “services” lets users check off the services they’re interested in and a csv list is generated for the field. See changes in these files, committed in rev 6b43c43d092064872aa396a2878c513205d7ce5b :

  • app/decorators/models/refinery/inquiries/inquiry_decorator.rb

  • app/views/refiner/inquiries/admin/inquiries/show.html.erb

  • app/views/refinery/inquiries/inquiries/new.html.erb

  • app/views/refinery/inquiries/inquiry_mailer/notification.text.erb

  • config/locales/en.yml

Search Engine

I didn’t want search results to include hidden pages (not shown in the menu), primarily because I’ve included user instructions on how to update things on the site in a hidden page. I made this modification in app/decorators/models/refinery/inquiries/inquiry_decorator.rb

Home page

See the home page in app/views/refinery/pages/home.html.erb The home page view has been overridden and the layout expects 3 sections. These are currently set up for the page in refinery, but should something get messed up, these would have to be created again from the refinery admin interface. These are the sections.

  • Home - short text shown under the image rotator. A “read more” link to “About” page should be included.

  • row_1 - First row of content boxes. Currently each box describes a service offered. See below for more understanding how these work.

  • row_2 - Second row of content boxes. ”

Row formatting

These sections allow the end-user to use from 2-5 sections in each row, but it must be formatted in a specific way. Each section should have an H3 tag (optionally linked) followed by a paragraph <p> tag, the first piece of content optionally being an image. Both of the rows are processed in app/assets/javascripts/home.js, which does the following:

  • reformats to use the column framework in the theme-forest them, adding the correct classes and container divs according to how many <h3><p> groups are found.

  • Adds “read more” link if the h3 contains a link, and also links the image.

  • Moves images above the H3s

  • Changes H3 to H4.

TODO: Make this easier for the end-user and less fickle. One of the problems is the lack of WYSIWYG support for other tags, such as div. An admin view could maybe be overridden to facilitate this, and maybe make a model for home page widgets which contains title, image, url, text, etc.

Image slider

The image slider on the home page is included in the themeforest theme, and has been coded to use images found under the “Images” tab in the “Home” page in the refinery admin interface. See It rotates them in the order they are listed there. They are displayed at 300px X 640px, so images should be uploaded at that size for best appearance & performance.

Clients

The clients area at the bottom uses the view partial at app/views/layouts/_clients.html.erb and depends on images in app/assets/images/client_logos As noted above, the client logo images are max width 160px, max height 60px.

Other pages

  • Menu items are automatically capitalized in app/views/refinery/_menu_branch.html.erb

  • Search results page (app/views/refinery/search/show.html.erb) and search box (app/views/refinery/shared/_search.html) have been customized.

S3 Asset Storage

User-uploaded files (under ‘Images’ and ‘Files’ directory in Refinery) are stored on Amazon S3. ‘fog’ gem is used to facilitate communication with S3. See Refinery documentation to undersand this standard setup. See Heroku config for bucket & authentication settings.

Other things to note

  • Emails are sent through Godaddy email. See config/initializers/mail.config. Currently the only time they are sent is to notify Jake of an inquiry.

  • End-user documentation is stored in the database and can be found at: inandout.herokuapp.com/how-to-update-my-website

inandout's People

Contributors

dbwinger avatar

Watchers

 avatar

inandout's Issues

Make documentation for end-user

  • Explain home page layout, use of html elements
  • Inquiries
  • Login, users
  • Uploading, using images, page images
  • Copywriting
  • Facebook stuff?
  • My billing for future issues

Rendering issues

  • Background image size on IE8
  • Images not loading in browserling on IE7
  • FF<4.0, major layout problems
  • New FF shows line at top of main page. Maybe shadow?

rake assets:precompile failing

On heroku. I think may be causing some performance degradation, but I'm confused. when I run rake assets:precompile locally it works fine. Was a problem with new_relic but found solution. Could try removing new_relic.

Sometimes images disappearing

Not sure what's going on because in the back end the image refers to correct s3 file, but apparently dragonfly giving wrong url? Tried disabling memcached. SEe if that works.

Submenus

Make them expand on hover rather than forcing to click.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.