mirror of https://gitlab.com/bashrc2/epicyon
				
				
				
			Handling matrix addresses
							parent
							
								
									d26e172ee6
								
							
						
					
					
						commit
						a5efcd3836
					
				|  | @ -1,7 +1,6 @@ | |||
| # Roadmap | ||||
| 
 | ||||
| ## UX | ||||
|  * Minimize button shows different icons or highlighting | ||||
|  * Layout of buttons on person options screen | ||||
| 
 | ||||
| ## Groups | ||||
|  | @ -11,7 +10,6 @@ | |||
| 
 | ||||
| ## Questions | ||||
| 
 | ||||
|  * Still not implemented ideally | ||||
|  * Instance-only questions | ||||
|  * Active polls screen? | ||||
|  * Questions more integrated into overall organization | ||||
|  |  | |||
							
								
								
									
										28
									
								
								matrix.py
								
								
								
								
							
							
						
						
									
										28
									
								
								matrix.py
								
								
								
								
							|  | @ -27,8 +27,10 @@ def get_matrix_address(actor_json: {}) -> str: | |||
|             name_value = property_value['schema:name'] | ||||
|         if not name_value: | ||||
|             continue | ||||
|         if not name_value.lower().startswith('matrix'): | ||||
|             continue | ||||
|         name_value_lower = name_value.lower() | ||||
|         if not name_value_lower.startswith('matrix'): | ||||
|             if not name_value_lower.startswith('chat'): | ||||
|                 continue | ||||
|         if not property_value.get('type'): | ||||
|             continue | ||||
|         prop_value_name, _ = \ | ||||
|  | @ -37,15 +39,25 @@ def get_matrix_address(actor_json: {}) -> str: | |||
|             continue | ||||
|         if not property_value['type'].endswith('PropertyValue'): | ||||
|             continue | ||||
|         if '@' not in property_value[prop_value_name]: | ||||
|         address_text = property_value[prop_value_name] | ||||
|         if 'matrix' in address_text: | ||||
|             address_text = address_text.split('matrix')[1] | ||||
|         elif 'Matrix' in address_text: | ||||
|             address_text = address_text.split('Matrix')[1] | ||||
|         if '@' not in address_text: | ||||
|             continue | ||||
|         if not property_value[prop_value_name].startswith('@'): | ||||
|         address_text = '@' + address_text.split('@', 1)[1] | ||||
|         if ' ' in address_text: | ||||
|             address_text = address_text.split(' ')[0] | ||||
|         if '|' in address_text: | ||||
|             address_text = address_text.split('|')[0] | ||||
|         if ',' in address_text: | ||||
|             address_text = address_text.split(',')[0] | ||||
|         if ':' not in address_text: | ||||
|             continue | ||||
|         if ':' not in property_value[prop_value_name]: | ||||
|         if '"' in address_text: | ||||
|             continue | ||||
|         if '"' in property_value[prop_value_name]: | ||||
|             continue | ||||
|         return remove_html(property_value[prop_value_name]) | ||||
|         return remove_html(address_text) | ||||
|     return '' | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue