@@ -3,6 +3,7 @@ use serde_json;
33use serde:: { Deserialize , Serialize } ;
44use crate :: otp:: otp_element:: OTPElement ;
55use crate :: otp:: otp_maker:: make_totp;
6+ use crate :: utils:: check_elements;
67
78
89#[ derive( Serialize , Deserialize ) ]
@@ -78,4 +79,28 @@ pub fn get_json_results() -> Result<String,String>{
7879 let json_string: & str = & serde_json:: to_string_pretty ( & results) . unwrap ( ) ;
7980
8081 Ok ( json_string. to_string ( ) )
82+ }
83+
84+ pub fn print_json_result ( index : usize ) -> Result < ( ) , String > {
85+ let elements: Vec < OTPElement > ;
86+
87+ match database_loader:: read_from_file ( ) {
88+ Ok ( result) => elements = result,
89+ Err ( e) => return Err ( e) ,
90+ }
91+
92+ match check_elements ( index, & elements) {
93+ Ok ( ( ) ) => { } ,
94+ Err ( e) => {
95+ return Err ( e) ;
96+ }
97+ }
98+
99+ let choosed_element: & OTPElement = & elements[ index] ;
100+
101+ println ! ( "Issuer: {}" , choosed_element. issuer( ) ) ;
102+ println ! ( "Label: {}" , choosed_element. label( ) ) ;
103+ println ! ( "Algoritmh: {}" , choosed_element. algorithm( ) ) ;
104+ println ! ( "Digits: {}" , choosed_element. digits( ) ) ;
105+ Ok ( ( ) )
81106}
0 commit comments