@@ -113,7 +113,6 @@ pub trait Trait: system::Trait{
113113******************************************************************************/
114114decl_event ! (
115115 pub enum Event <T > where
116- <T as Trait >:: AttestorId ,
117116 <T as Trait >:: EncoderId ,
118117 <T as Trait >:: HosterId ,
119118 <T as Trait >:: FeedId ,
@@ -133,7 +132,7 @@ decl_event!(
133132 /// New proof-of-storage challenge
134133 NewProofOfStorageChallenge ( ChallengeId ) ,
135134 /// Proof-of-storage confirmed
136- ProofOfStorageConfirmed ( AttestorId , ChallengeId ) ,
135+ ProofOfStorageConfirmed ( ChallengeId ) ,
137136 /// Proof-of-storage not confirmed
138137 ProofOfStorageFailed ( ChallengeId ) ,
139138 /// Attestation of retrievability requested
@@ -529,7 +528,12 @@ decl_module!{
529528 #[ weight = ( 100000 , Operational , Pays :: No ) ] //todo weight
530529 fn submit_proof_of_storage( origin, challenge_id: T :: ChallengeId , proof: Proof ) {
531530 let user_address = ensure_signed( origin) ?;
532- if let Some ( challenge) = <GetChallengeByID <T >>:: get( & challenge_id) {
531+ if let Some ( challenge) = <GetChallengeByID <T >>:: get( challenge_id. clone( ) ) {
532+ if Self :: validate_proof( proof, challenge) {
533+ Self :: deposit_event( RawEvent :: ProofOfStorageConfirmed ( challenge_id. clone( ) ) ) ;
534+ } else {
535+ Self :: deposit_event( RawEvent :: ProofOfStorageFailed ( challenge_id. clone( ) ) ) ;
536+ }
533537 /*
534538 const challenge = DB.challenges[challengeID - 1]
535539 const isValid = validateProof(proof, challenge)
@@ -541,6 +545,8 @@ decl_module!{
541545 // emit events
542546 handlers.forEach(handler => handler([proofValidation]))
543547 */
548+ } else {
549+ // TODO invalid challenge
544550 }
545551 }
546552
@@ -627,6 +633,11 @@ impl<T: Trait> Module<T> {
627633 ranges. iter ( ) . map ( |x|x. 0 ) . collect ( )
628634 }
629635
636+ fn validate_proof ( proof : Proof , challenge : Challenge < T > ) -> bool {
637+ //TODO validate proof!
638+ true
639+ }
640+
630641 //borrowing from society pallet ---
631642 fn pick_usize < ' a , R : RngCore > ( rng : & mut R , max : usize ) -> usize {
632643
0 commit comments