### load_indicators: ```plantuml @startuml start :Retrieve active indicators from database; :Create an instance for each indicator; :Add indicators to the indicators dataframe; stop @enduml ``` ### save_indicator: ```plantuml @startuml start :Save indicators in the database; stop @enduml ``` ### get_indicator_list: ```plantuml @startuml start :Get the user ID; :Get a list of indicators for the user; stop @enduml ``` ### get_enabled_indicators: ```plantuml @startuml start :Get the user ID; :Get all enabled indicators for the user; stop @enduml ``` ### toggle_indicator: ```plantuml @startuml start :Set all indicators to not visible for the user; :Set selected indicators to visible for the user; stop @enduml ``` ### edit_indicator: ```plantuml @startuml start :Receive request; :Check if submit button is pressed; :Update indicator settings; :Check if delete button is pressed; :Delete the indicator; stop @enduml ``` ### new_indicator: ```plantuml @startuml start :Get indicator name and type from the request; :Create a dictionary of indicator properties; :Create the indicator; :Save the indicator in the watch-list; stop @enduml ``` ### process_indicator: ```plantuml @startuml start :Get the source and number of results; :Get the username of the indicator creator; :Get the data for the defined source; :Calculate the indicator results; stop @enduml ``` ### get_indicator_data: ```plantuml @startuml start :Get the user ID; :Query the indicators for the user; :Check if only visible indicators are requested; :Check if specific source is requested; :Get data for each indicator; stop @enduml ``` ### delete_indicator: ```plantuml @startuml start :Remove the indicator from the indicators dataframe; stop @enduml ``` ### create_indicator: ```plantuml @startuml start :Create an instance of the indicator based on kind; :Add the indicator to the indicators dataframe; stop @enduml ```