giveth / giveth-dapp Goto Github PK
View Code? Open in Web Editor NEWGiveth Dapp for crowdfunding and managing donations on the ethereum blockchain.
Home Page: https://beta.giveth.io
License: GNU General Public License v3.0
Giveth Dapp for crowdfunding and managing donations on the ethereum blockchain.
Home Page: https://beta.giveth.io
License: GNU General Public License v3.0
using the vault, there is a time delay before the user can actually take the money out of the vault. So when a user takes back control of a donation, it is still locked in the vault for a few days. Then they need to withdraw to their wallet.
we need to incorporate this into the donations page.
Add pup-up warning if the ether balance is too low to make any action. This pop-up will include options how ether can be obtained.
If I sign in with 1 wallet after a page reload, I can unlock it and successfully make transactions. However if I try and switch wallets, for some reason the GivethWallet instance will unlock successfully, but will not remember the state, thus I can't make a transaction.
My guess is this has to do with either the animationFrame hackery or the use of WeakMap
in the GivethWallet itself
Because the current one doesn't style at all because it's dependent on BS3 while we're using BS4
If I want to edit my dac description, I can't save (btn disabled) unless I upload an img.
we should check all forms
To reproduce...
The status of the donation is "waiting for further delegation" and the donated to is the "dac". This is misleading as this "donation" from the user's perspective looks the exact same as if they donated to the dac (and still have control), however since they donated to a campaign first, they don't control the funds.
Either don't allow campaigns to delegate to a dac, or find a way to display this better
Otherwise, the app crashes because there's no currentUser and/or no wallet
When user tries to donate multiple time, the wallet balance does not indicate any pending donations. For example I have 4 ETH, I donate 2 to one DAC and then I try to donate 1 to a campaign. However, the donation window still shows 4 ETH (it should at least indicate that 2 of that are pending).
We need to call addDonor
for a user before they can donate. We call this the first time a user creates their profile. However it is not mandatory to create a profile, so we need to inform the user that they need to call addDonor
before they push the donate button.
When you click signin... If I enter my password and press enter, the removeKeystore method is called.
The form should be submitted instead
when a user creates a campaign, there is a wait until the tx is mined. We should show these "pending" campaigns in the my-campaigns view.
a cause is "pending" if cause.projectId === 0
we need to sanitize the data to prevent injection attacks. Maybe this should be done in feathers?
we can't delete from liquidPledging. Do we want to allow this? Maybe set as deactive?
to keep things consistent
currently if I edit a campaign, cause, milestone, or user profile, I need to re-upload my image to get the form to validate.
If there is an image uploaded, we shouldn't have to re-upload just to edit the description for ex.
@satyavh commented on Tue Sep 26 2017
Disabled buttons are a pain the UX ass...
currentUser
is an address. However we often need information for the user's profile (ex. when donating).
replace the state.currentUser
in Application.js
to contain the user's profile
@satyavh commented on Tue Sep 26 2017
As discussed:
currently we disable the donate button if the user doesn't have a donorId. This is necessary as liquidPledging will through if a donation happens w/o a noteManager
.
We should inform the user that we are waiting for their "profile" to be created on-chain and they can only donate after that has happened
if you try and load mvp.giveth.io/profile we currently get a 404
As discussed:
@satyavh commented on Tue Sep 26 2017
Actually @alanborger is going to do this, but I need to implement the css
@alanborger commented on Tue Sep 26 2017
Hi @satyavh , can you send me some screenshots of both the grid / typography issue and the profile page layout..? I can work on top of that and send you back a few suggestions, how does that sound..?
@satyavh commented on Tue Sep 26 2017
Hey, I slacked you all the info
The typical flow is that a user will create a wallet and then get redirected to the profile page. If we detect that the user doesn't have a giverId
when saving their profile, we try and send a transaction to register the user in liquidPledging. This is problematic because most users will not have any eth since they just created a wallet and will get an error.
Need to only send the tx if they have eth
we shouldn't be able to donate to canceled milestones in the dapp.
LiquidPledging will not throw when donating to a canceled milestone, so we need to prevent this in the dapp. With liquidPledging, if a donation is made to a canceled milestone, the tx successfully completes, but the funds end up in a note that the owner controls.
@satyavh commented on Tue Sep 26 2017
@satyavh commented on Tue Sep 26 2017
SkyLight is kind of hard to use because stateless doesn't have all the callbacks that controlled modals have. So either we find a replacement, or fork and extend.
When on mvp.giveth.io/wallet the balance becomes blank after reloading the page.
However if accessed manually through Profile -> Wallet the balance appears even if the wallet is locked.
If there are no donations to a milestone, we should not allow the owner to markComplete
, only to cancel
.
If we allow them to mark complete and it is approved by the reviewer, then the milestone will have a requestWithdraw
button, but there will never be anything to withdraw.
So I guess we have 2 options.
markComplete
but do not show the requestWithdraw
btn if there are 0 donations.markComplete
if there are no donationsMaybe the 1st option is better so the campaign can show they are getting stuff done
we currently send & sign a tx on behalf of the user.
we should show a confirmation dialog before sending the tx
for ex. in EditMilestone
. If I want to leave the default maxAmount
, I have to modify the input and then change back to 1000 before I can save the form
none of the fields on the user profile should be required.
The Start Campaign button does not work if the wallet is locked but you can still create a DAC. Except for some graphical glitches, clicking the button does nothing.
This should be a whitelist of Giveth team addresses. Possibly randomly selected?
should show current state and available actions for any milestones I'm involved with. This can be as a reviewer or recipient.
when a user creates a dac, there is a wait until the tx is mined. We should show these "pending" dacs in the my-causes view.
a cause is "pending" if cause.delegateId === 0
might need to make other updates regarding campaign status. There 2 statuses a campaign can have Active
and Canceled
when viewing the donations (my-donations, a dac/campaign) we should show "incoming/pending" donations.
a donation is pending if "donation.noteId === 0"
A user might not want to keep a significant amount of funds in their giveth wallet. They need a way to send the funds to another address.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.