69 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // License: LGPL-3.0-or-later
 | |
| 
 | |
| appl.def('timeline.make_clickable', function(node){
 | |
|   var card = appl.prev_elem(node)
 | |
|   card.setAttribute('clickable', '')
 | |
| })
 | |
| 
 | |
| appl.def('timeline.show_email', function(email, date) {
 | |
|   email.date = date
 | |
|   set_readonly_email(email)
 | |
| 	appl.open_modal('emailReadOnlyModal')
 | |
| })
 | |
| 
 | |
| appl.def('timeline.show_note', function(note, date) {
 | |
|   appl.def('current_note', {
 | |
|     date: date,
 | |
|     content: note.content,
 | |
|     id: note.id,
 | |
|     is_editing: false
 | |
|   })
 | |
| 	appl.open_modal('noteModal')
 | |
| })
 | |
| 
 | |
| function set_readonly_email(email) {
 | |
| 	appl.def('timeline.displaying_email', {
 | |
| 		body: email.body.replace(/{{NAME}}/g, appl.supporter_details.data.name_email_or_id),
 | |
| 		subject: email.subject,
 | |
| 		date: email.date
 | |
| 	})
 | |
| }
 | |
| 
 | |
| 
 | |
| appl.def('ajax_supporter_notes', {
 | |
| 	create: function(form_obj, node) {
 | |
|     appl.is_loading()
 | |
| 		appl.ajax.create('supporter_details.supporter_notes', form_obj).then(function(resp) {
 | |
|       appl.not_loading()
 | |
| 			if(!resp.ok) return appl.notify("Sorry! Unable to post note: " + resp.body)
 | |
| 			appl.def('timeline_action', null)
 | |
| 			appl.ajax.index('supporter_details.activities')
 | |
| 			appl.notify("Note added")
 | |
| 			node.parentNode.reset()
 | |
| 		})
 | |
| 	},
 | |
|   update: function(form_obj) {
 | |
|     appl.is_loading()
 | |
|     appl.ajax.update('supporter_details.supporter_notes', form_obj['id'], form_obj).then(function(resp) {
 | |
|       appl.not_loading()
 | |
|       if(!resp.ok) return appl.notify("Sorry! Unable to update note: " + resp.body)
 | |
|       appl.ajax.index('supporter_details.activities')
 | |
|       appl.notify("Note updated")
 | |
|     })
 | |
|   },
 | |
|   delete: function(id) {
 | |
|     appl.is_loading()
 | |
|     appl.close_modal()
 | |
|     appl.ajax.del('supporter_details.supporter_notes', id).then(function(resp) {
 | |
|       appl.not_loading()
 | |
|       if(!resp.ok) return appl.notify("Sorry! Unable to delete note: " + resp.body)
 | |
|       appl.ajax.index('supporter_details.activities')
 | |
|       appl.notify("Note deleted")
 | |
|     })
 | |
|   }
 | |
| })
 | |
| 
 | |
| appl.def('get_donation_url', function(donation) {
 | |
| 	var search_id = (donation && donation.payment && donation.payment.id) ? ('?pid=' + donation.payment.id) : ('?sid=' + appl.supporter_details.id)
 | |
| 	return "/nonprofits/" + app.nonprofit_id + "/payments" + search_id
 | |
| })
 | 
