-
Notifications
You must be signed in to change notification settings - Fork 230
-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Donations to a milestone should be visible in campaign donations #67
Comments
Issue Status: 1. Open 2. Started 3. Submitted 4. Done This issue now has a funding of 50.0 DAI (50.0 USD @ $1.0/DAI) attached to it as part of the Ethereum Community Fund via ECF Web 3.0 Infrastructure Fund fund__.__
|
Issue Status: 1. Open 2. Started 3. Submitted 4. Done Work has been started. These users each claimed they can complete the work by 7 months from now. 1) cryptomental has been approved to start work. Hi. I would like to follow the suggested implementation path: modify the feathers donation service and make frontend to use campaignId for milestones. I will likely open a PR today EOD. Learn more on the Gitcoin Issue Details page. |
A milestone is active if in progress and has *not* been fully funded yet. Refs: Giveth#492, Giveth#67
Issue Status: 1. Open 2. Started 3. Submitted 4. Done Work for 50.0 DAI (50.0 USD @ $1.0/DAI) has been submitted by: @mkosowsk please take a look at the submitted work:
|
@vojtechsimetka does this PR from @cryptomental fulfill the requirements for the bounty? Thanks! |
@mkosowsk oh sorry I did not notice he applied with that PR to this bounty. No it does not solve the issue. It only enables donations to milestone, but does not display them in the Campaign. What we are asking for is displaying the donation in red under the campaign donations. To offset the unexpected issues, I have added another 50 USD from my side. Appologies @cryptomental |
💰 A crowdfund contribution worth 0.25000 ETH (50.78 USD @ $203.11/ETH) has been attached to this funded issue from @.💰 Want to chip in also? Add your own contribution here. |
Ok, thank you a lot for clarifying this. I was a bit confused. I will implement it the way it is desired. |
…donations. Subscribe to all campaign donations, including milestone donations. Update CampaignService to subscribe more than one ownerTypeId from feathers. Fixes: Giveth#67
Hi @vojtechsimetka @mkosowsk I implemented it as requested and opened a PR #502: The implementation is based on the analysis of MongoDB donations entries for campaign and milestone that I entered locally:
I understood that no changes in the db schema are needed and ownerTypeId can still be used, just donations subscription in CampaignService needs to be extended. Therefore the new approach is to lazy load donations using subscriber that can handle both campaignId and milestonesIds for the campaign. The donations are properly shown now: |
Hi @cryptomental . Thank you for the PR and analysis. I agree that this works, but it is not 100% because if there is a lot of milestones, not all of them will be loaded. I know that right now this may not be an issue, because such milestones will be old and unlikely to be donated to recently and the current donation view would not suffer from it. The role of the database here is different - it is supposed to cache all the data stored in blockchain and IPFS and redundancy is OK (yeah it feels wrong). It's supposed to be fast to cache and fast to query. In future we may replace it with a better suited database like postgre that will allow us to do relational and location queries. Then, of course, redundancy would be counterproductive. |
Ok. I see. I will rework this then as initially suggested. |
Add campaignId for Milestone and Campaign donations. Extend DonateButton model to optionally store campaignId and DonationService to store campaignId into feathers. Dependencies: feathers-giveth Donation model needs to be extended with an optional campaignId field. Fixes: Giveth#67
The campaignId can be optionally use to store campaign id when a donation is made for campaign or a milestone. Then all donations for a campaign, including milestone donations can be queried using campaigId field. Refs: Giveth/giveth-dapp#67
Hi @vojtechsimetka I opened two new pull requests: #506 to be able to use campaignId as previously mentioned. Donation service is now able to store campaignId when needed and feathers-giveth had to have Donations model extended with an optional field pointing to campaignId. I would be grateful if you had a look again now. |
Add campaignId for Milestone and Campaign donations. Extend DonateButton model to optionally store campaignId and DonationService to store campaignId into feathers. Dependencies: feathers-giveth Donation model needs to be extended with an optional campaignId field. Fixes: Giveth#67
Thank you @cryptomental I will review this in the morning. It looks fine, I would like for the campaignId to be deduced on feathers rather than being pushed from the frontend, but that is small thing and I can quickly modify.
|
Add campaignId for Milestone and Campaign donations. Extend DonateButton model to optionally store campaignId and DonationService to store campaignId into feathers. Dependencies: feathers-giveth Donation model needs to be extended with an optional campaignId field. Fixes: Giveth#67
Ok great! I rebased the pull request today morning against latest develop branch. Please modify as you expect. |
Thank you @cryptomental ! @mkosowsk this bounty can be paid out |
Issue Status: 1. Open 2. Started 3. Submitted 4. Done The funding of 50.0 DAI (50.0 USD @ $1.0/DAI) (plus a crowdfund of 0.25 ETH worth 54.4532026525 USD) attached to this issue has been approved & issued to @cryptomental.
|
Great. Thank you! |
The campaignId can be optionally use to store campaign id when a donation is made for campaign or a milestone. Then all donations for a campaign, including milestone donations can be queried using campaigId field. Refs: Giveth/giveth-dapp#67
Add campaignId for Milestone and Campaign donations. Extend DonateButton model to optionally store campaignId and DonationService to store campaignId into feathers. Dependencies: feathers-giveth Donation model needs to be extended with an optional campaignId field. Fixes: #67
Donations made to a Milestone should be displayed under the Campaign in which the Milestone is created.
Implementation:
There are several options how to achieve this behavior. We prefer solution that does not add more API calls on the frontend. Suggested implementation would be:
Work time estimate:
1h
The text was updated successfully, but these errors were encountered: