Git Product home page Git Product logo

redhen_raiser's Introduction

RedHen Raiser

This distribution is for building social fundraising websites, such as those around marathons and walks, where a fundraising campaign is made up of myriad individual and team pages, customized by the individual participants, but connected to the larger campaign.

As the name suggests, Raiser is built on top of the RedHen CRM project, including the RedHen Donation and the RedHen Campaign modules.

RedHen Raiser was created by ThinkShout with the Capital Area Food Bank of DC (http://www.capitalareafoodbank.org) for their social fundraising platform at https://give.capitalareafoodbank.org.

Getting Started

To get started with RedHen Raiser, you must use Drush Make to create an install profile and download all the dependencies, then run the Drupal installer. After that is done, you can create a page to act as your homepage and add a valid payment method through Commerce to allow donations to be taken. You may wish to customize the site name, logos, etc. This should be done by overriding the built-in Raiser theme with your own, but you can hack the theme directly if you don't mind recreating the changes if/when you upgrade.

Here are the steps for installing RedHen Raiser as a new site. your/web/root is the directory you want to install RedHen Raiser to (the Drupal root location). This method creates the directory, so it should not yet exist.

Start in the same directory that this Readme sits in.

: drush make drupal-org-core.make *your/web/root*
: drush make --no-core --contrib-destination drupal-org.make .
: cp -R . *your/web/root*/profiles/redhen_raiser
: cd *your/web/root*

Now visit your website and run the installer. If you run it with Drush, specify the "redhen_raiser" profile.

Create a "page" type node and set its path to "home" to add content to the home page.

Add any content to the top level of the Main Menu to have it appear in the menu at the bottom of the site.

Go to Content -> Blocks and edit the "Social Media Links" block to link to your organization's social media pages.

To enable payment, go to: store -> configuration -> payment methods Add your payment method (or enable commerce_payment_example to test)

Customization

If you'd like to develop on top of RedHen Raiser while retaining the ability to apply Raiser updates, we have built out a skeleton installation to start from. This installation is called "Charlotte" and can be found at: https://github.com/thinkshout/charlotte

The build script in Charlotte will download raiser, and also create a repo for you to work from in sites/all. You will want to create a fork of Charlotte and push to your own repo.

Of specific note: creating a module called "redhen_raiser_custom_install" will allow you to run installation functions and enable default modules when the redhen_raiser installation profile runs.

Build Status

redhen_raiser's People

Contributors

unclegcb avatar heypaxton avatar levelos avatar tauno avatar ruscoe avatar komejo avatar 6c1 avatar countpacman avatar

Stargazers

Mike Kim avatar David Lanier avatar  avatar

Watchers

David Lanier avatar Sean Larkin avatar Jeremy Caldwell avatar Jami Dwyer avatar  avatar Greg Boggs avatar Nancy Rackleff avatar James Cloos avatar Bob Potter avatar Mike Kim avatar Alex Ellison avatar Brett Meyer avatar Jessica Tate avatar  avatar  avatar Amy Swan avatar  avatar  avatar  avatar  avatar

Forkers

leanpress

redhen_raiser's Issues

Campaign Update content type

  • create content type: text with reference to page/campaign
  • create contextual view block for campaigns
  • create contextual view block for pages based on Campaign, page, and team

path and permissions for campaign structure

Currently at admin/structure/redhen_campaign even though the permissions is based on administer redhen. I think we should consider using admin/structure/redhen/campaign and/or add a more granular permission for administer redhen campaign.

Clean up profile creation & editing

  • welcome message
  • username appearing on password reset screen
  • theme the user edit screens
  • "redhen contact" tab is confusing
  • simplify email editing

Create "invite team members" tool

Type in a list of email addresses and hit send to invite those people to join a Campaign.

  • Need to have team-specific invitation or just general campaign
  • Include a link that leads to the fundraise now link with auto-population of creation fields
  • Hold onto the auto-population through user registration
  • Customize the message, but include universal instructions that include the smart link

Create "goal" field display widget

display widget for numbers.
Allows selection of an entity lookup field on the system and a product type.
Does an EFQ on products of that type, asking if the specified field has a value equal to the entity being displayed. Pulls in these price values and displays "X of X goal raised" and a thermometer.

@levelos sound like a clean solution for this? It's needed in different places around the site.

Awkward region rendering

When I drop content into on of the new main content regions ("content_secondary" or "content_tertiary") and also put something in "Sidebar first", the sidebar content renders, pushing the main content to the left, but the "content_secondary" content then displays over the top of the sidebar content.

As mentioned in another ticket, content_tertiary may be superfluous.

HTML5 and mobile optimization

Hey @heypaxton and @unclegcb. I want to make sure we're approaching this distro build keeping an optimal mobile experience in mind. We probably should for most sites, but, hey, lets start here :) @heypaxton, sending your way to start, but lets all chime in. It will probably make sense to break this out into individual tickets for each item we want to implement eventually.

Options for HTML5 form elements

Image handling

Admin theme

Team-level filtration on update views

We have a view here:
admin/structure/views/view/campaign_updates/edit/page_block

This shows updates posted to a campaign, and to the page. Amalgamating these listings is challenging with views, though: contextual filters give you the proper page or campaign, but they don't give you granularity in how you treat them, and the "team" updates can't be filtered this way unless we change our setup. My plan is this:

  • Add "Team Context" to the Campaign Update content type and auto-populate it when creating updates.
  • Only populate "Campaign Context" for Campaign-wide updates.

Security Update

Overview

https://www.drupal.org/psa-2018-001

  • Run security update

  • Test locally

  • Deploy to test

  • QA (PMs or Client where applicable)

  • Document any effects, and any steps to correct.

  • Deploy to live site.

  • Go to each Pantheon Multidev, Security tab, and set Environmental Access to Locked. Use the Username and Password from the Site User and Site Password columns here.

primary contacts

Lets discuss why we need primary contact for campaigns and campaign pages.

_redhen_campaign_organize_images

Not clear what this is for. Currently being used in Campaign and Campaign Page controllers. In general, it's best to avoid using procedural functions within classes as it makes testing difficult. Maybe we should move it in the class and consider some type of inheritance between the two?

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.