def __init__(self, my_ip): self.binary_flag = '' self.connection_type = '' self.ip = my_ip # ip to send to client when transferring data self.port = 0 # port to send self.last_file_position = 0 users = Users(ORIGINAL_DIR.replace('\\%s' % FILE_DIR, '')) self.user_data = users.get_users_pass() self.command_dict = { 'USER': self.user_check, #'FEAT': self.get_features, haven't implemented opts 'SYST': self.syst_command, 'CWD': self.cwd, 'PWD': self.pwd, 'DELE': self.delete, 'TYPE': self.set_binary_flag, 'PASV': self.passive_connection, 'LIST': self.list_command, 'PORT': self.active_connection, 'HELP': self.help_command, 'RETR': self.retrieve_file, 'CDUP': self.cwd, 'SIZE': self.return_size, 'REST': self.reset_transfer, 'RNFR': self.rename, 'STOR': self.store_something }
class DatabaseUsers(ScrollView): def __init__(self, **kwargs): super(DatabaseUsers, self).__init__(**kwargs) self.users = Users(ORIGINAL_DIR) self.user_pass = self.users.get_users_pass() self.layout = GridLayout(cols=1, size_hint_y=None) self.layout.bind(minimum_height=self.layout.setter('height')) for user, password in self.user_pass: self.user_button = OptionsButton(text='user: %s, pass: %s' % (user, password), size_hint_y=None, user=user, password=password) self.user_button.bind(font_size=lambda x: self.width / 4) self.user_button.bind( on_press=self.user_button.dropdown_options.open) self.layout.add_widget(self.user_button) self.add_widget(self.layout)