88 lines
2.7 KiB
JavaScript
Executable file
88 lines
2.7 KiB
JavaScript
Executable file
// License: LGPL-3.0-or-later
|
|
if (app.nonprofit.brand_color) {
|
|
require('../../components/branded_fundraising')
|
|
}
|
|
|
|
require('../../common/image_uploader')
|
|
require('../../components/fundraising/add_header_image')
|
|
|
|
if(app.current_user) {
|
|
require('../../campaigns/new/wizard')
|
|
require('../../events/new/wizard')
|
|
}
|
|
|
|
if(app.current_nonprofit_user) {
|
|
var editable = require('../../common/editable')
|
|
editable($('.editable'), {
|
|
placeholder: "Enter your nonprofit's story and impact here. We strongly recommend that this section is filled out with at least 250 words. It will automatically save as you type.",
|
|
sticky: $('.editable').length > 0
|
|
})
|
|
require('./tour')
|
|
var create_info_card = require('../../supporters/info-card.es6')
|
|
|
|
appl.def('todos_action', '/profile_todos')
|
|
var todos = require('../../components/todos')
|
|
todos(function(data) {
|
|
appl.def('todos.items', [
|
|
{text: "Add logo", done: data['has_logo'], modal_id: 'settingsModal' },
|
|
{text: "Add header image", done: data['has_background'], modal_id: 'uploadBackgroundImage' },
|
|
{text: "Add summary", done: data['has_summary'], modal_id: 'settingsModal' },
|
|
{text: "Add images", done: data['has_image'], modal_id: 'uploadCarouselImages' },
|
|
{text: "Add highlights", done: data['has_highlight'], modal_id: 'settingsModal' },
|
|
{text: "Add services and impact", done: data['has_services'], link: '#js-servicesAndImpact' }
|
|
])
|
|
})
|
|
}
|
|
|
|
// -- Flimflam
|
|
|
|
const snabbdom = require('snabbdom')
|
|
const h = require('snabbdom/h')
|
|
const flyd = require('flyd')
|
|
const R = require('ramda')
|
|
const donateWiz = require('../../nonprofits/donate/wizard')
|
|
const modal = require('ff-core/modal')
|
|
const render = require('ff-core/render')
|
|
const branding = require('../../components/nonprofit-branding')
|
|
|
|
function init() {
|
|
var state = {}
|
|
state.donateWiz = donateWiz.init(flyd.stream({}))
|
|
state.modalID$ = flyd.stream()
|
|
return state
|
|
}
|
|
|
|
function view(state) {
|
|
return h('section.box-r', [
|
|
h('aside', [
|
|
h('a.button--jumbo u-width--full', {
|
|
style: {background: branding.dark}
|
|
, on: {click: [state.modalID$, 'donationModal']}
|
|
}, [
|
|
`Donate to ${app.nonprofit.name}`
|
|
])
|
|
, h('div.donationModal', [
|
|
modal({
|
|
thisID: 'donationModal'
|
|
, id$: state.modalID$
|
|
, body: donateWiz.view(state.donateWiz)
|
|
// , notCloseable: state.donateWiz.paymentStep.cardForm.loading$()
|
|
})
|
|
])
|
|
])
|
|
])
|
|
}
|
|
|
|
|
|
// -- Render
|
|
|
|
const patch = snabbdom.init([
|
|
require('snabbdom/modules/eventlisteners')
|
|
, require('snabbdom/modules/class')
|
|
, require('snabbdom/modules/props')
|
|
, require('snabbdom/modules/style')
|
|
])
|
|
var container = document.querySelector('.ff-container')
|
|
var state = init()
|
|
render({container, view, patch, state})
|
|
|