OZtree
OZtree copied to clipboard
Personal page for sponsorships
Uses a hash of the user e-mail is the URL parser (hash means e-mail text is never revealed to other users) Gives a nice visualisation of that users sponsored species (including text and expired sponsors) States if this person is a bronze, silver or gold sponsor
There should also be a page to help a user generate a link to their personal donor page - i.e. to take them to the URL with the correct hash of their e-mail
your donor name should be the sponsored by field of the most recent leaf or, if all leaves as sponsored for the most recent leaf that has a non-blank donor name.
this page should only include user donor show flag = 1 leaves it should include current and expired leaves and year the leaf that leaf was sponsored for those currently active
probably the same page should be the renewals page - only that has a button to renew next to each leaf (if possible) and a note to write to us for making changes and a single button to renew all that are ticked and a button to tick all.
there should be a link to each one with a button to copy link or something like that....
there should be a public and a private hash for this and #363
One idea that occurred over lunch is you could add a few more fields to make the public page more coherent and something you'd want to show off; a custom URL part instead of just a hash, a title (e.g. "The family menagerie").
Of course the next feature to add is multiple collections associated with one e-mail address, but that's going too far at this stage.
We're now thinking the easiest model for this page is to make it like https://www.onezoom.org/sponsored only
- change the title to read "Sponsorship page for ________"
- Make the maximum number of entries per page be much more than 20 (e.g. 100) so that we catch the case of many many sponsorships but also usually show the full lot
- Change the text under each leaf to read "Sponsored in 20xx by/for" instead of "Sponsored by/for" so that the year of sponsorship is shown
- Order the leaves by date of first sponsorship and only show currently active sponsorships (not expired ones)
I like your idea for the custom URL with a parser, but think it's optional for now. Adding multiple collections is probably also going too far for now. I'm keen to avoid scope bloat given there's a lot of things to do here!
The name used for the page title should probably be the Donor Name entered in our database from the most recent sponsorship associated with this e-mail that has a donor name. I'll probably need to update the data protection statement to reflect this.
The name used for the page title should probably be the Donor Name entered in our database from the most recent sponsorship associated with this e-mail that has a donor name. I'll probably need to update the data protection statement to reflect this.
See #394 for discussion of how I think we should allocate the username which will be the thing in the URL.
Is there a bronze level? "Particular thanks to our gold donors whose contributions total over £1000, and silver donors who have contributed over £150 in total" Or is bronze level > 0?
~~EDIT: Also, do expired sponsorships contribute to your level? Seems like they should, but they won't currently in donor_list~~ I've now seen the "Don't show expired sponsorships bit" :)
Okay, this is looking okay, and I think encompasses the above. It probably could do with more explanatory text though, it's a bit bare-bones currently.
Bronze is > 150 in total donations
Bronze is > 150 in total donations
Then what's sliver? The mappings to colours are here https://github.com/OneZoom/OZtree/blob/main/OZprivate/scss/content_pages.scss#L294-L336 generated by this https://github.com/OneZoom/OZtree/blob/main/views/default/donor_list.html#L15-L21 Note there's a 1000000 cutoff that doesn't do anything.
The above covers everything we talked about in the call. I'm still a bit confused by the gold/silver/bronze thing, but I don't think there's anything else.
Thanks. Re bronze/silver/gold, I suspect we just got the cutoffs wrong.
Yan and I think use the username only with no hash but users can untick donor show and username uses no private info because it's the public donor name or the species name and year
Yan and I think use the username only with no hash
Are we talking about the URLs here? If so that's already the case.
Yan and I think use the username only with no hash
Are we talking about the URLs here? If so that's already the case.
Yes - we're talking about the URL so it can easily be constructed with the uncashed username. The renewals page is the only one that's hashed.
A few comments on this....
1.) Please order the list so that sponsorships with images come first then without images inside a separate div underneath
2.) Please make the page reactive so that multiple columns can be used depending on screen size - for the section without images there can obviously be more columns
3.) Try to make the images more associated with the text that goes with e.g. by reducing the padding between them or by using 'nth child even' CSS to stripe the results.
A quick thing to add here. I've just seen that the text reads "_____ sponsored in [date] by _____" e.g.
The code for this in donor.html uses verified_time to get the date - but we decided that verified time would be overwritten with the new time of renewal - hence the date wouldn't be the original date after renewal. I think if the user has renewed several times they would expect the date to be there from the first day they got the leaf.
<div>
Sponsored in {{=item['verified_time'].strftime("%Y")}} {{=item['verified_kind']}}
<i class="sponsored-by">{{=item['verified_name']}}</i>
</div>
I suggest fix this by using the reserve_time field and make sure that when we renew the original reserve_time entry is preserved.
I suggest fix this by using the reserve_time field and make sure that when we renew the original reserve_time entry is preserved.
Do we brush over the case of expire-and-repurchase and say they've had it since the original time, even if there's gaps in their sponsorship? I think we do.
We don't have an example story yet but think it'll be 250 words max length. I'll write some text later to put there for interpretation - for now please just put a simple placeholder text.
I suggest fix this by using the reserve_time field and make sure that when we renew the original reserve_time entry is preserved.
Do we brush over the case of expire-and-repurchase and say they've had it since the original time, even if there's gaps in their sponsorship? I think we do.
Agreed