This Smart contract allows a manager to create a customizable crowdfunding process.
Once the manager has set a target deadline, a target amount (to raise) and a minimum contribution for participating in the crowdfunding, the contributors can participate in the crowdfunding until the deadline. So before this time, the funds must have ben collected form the contributors.
The contributor will transfer ether to the Smart contract and the manager can take ether from the Smart contract only when more of the 50% contributors vote for yes. If the contributor want a refund, it can get a it only when the deadline is crossed and the amount set by the manager doesn’t met the target amount.
The overall crowdfunding process can be seen below: