From 588d6bc9734af06c1dbdb4fd687c2e55ebc6fb3d Mon Sep 17 00:00:00 2001 From: yo mama Date: Sat, 7 Mar 2015 20:44:16 -0800 Subject: fixes --- Pb_Api/Param/MultiSelect.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to 'Pb_Api/Param/MultiSelect.py') diff --git a/Pb_Api/Param/MultiSelect.py b/Pb_Api/Param/MultiSelect.py index 88637b9..365258d 100644 --- a/Pb_Api/Param/MultiSelect.py +++ b/Pb_Api/Param/MultiSelect.py @@ -3,10 +3,12 @@ from Pb_Api.Param import Pb_Api_Param class Pb_Api_Param_MultiSelect(Pb_Api_Param): def __init__(self, *args, **kwargs): - self._options = kwargs['options'] + self._options = kwargs['options'] if options in kwargs else [] super(Pb_Api_Param_MultiSelect, self).__init__(*args, **kwargs) - self._validate_options() - self.default(self._choose_heaviest()) + if len(self._options): + self._validate_options() + self.default(self._choose_heaviest()) + def options(self): return self._options def _validate_options(self): @@ -39,11 +41,14 @@ class Pb_Api_Param_MultiSelect(Pb_Api_Param): heaviest_idx = 0 heaviest_weight = 0 idx = 0 - for elem in self.options(): - if elem["weight"] > heaviest_weight: - heaviest_weight = elem["weight"] - heaviest_idx = idx; - idx += 1 - return self.options()[heaviest_idx]["value"] + if (len(self.options())): + for elem in self.options(): + if elem["weight"] > heaviest_weight: + heaviest_weight = elem["weight"] + heaviest_idx = idx; + idx += 1 + self.value = self.options()[heaviest_idx]["value"] + else: + self.randomize() def heaviest(self): - self.value = self._get_heaviest() + self.value = self._choose_heaviest() -- cgit v1.2.3-70-g09d2