'Get the options for the selector. This could be only a subset
of all valid options (self._select), therefore overriding
superclass function here.'

def options(self, zero=True):

    language_codes = self.language_codes()
    if self._select:
        language_codes_dict = dict(language_codes)
        items = [(k, v) for (k, v) in self._select.items() if (k in language_codes_dict)]
    elif self.translate:
        T = current.T
        items = [(k, T(v)) for (k, v) in self.language_codes()]
    else:
        items = self.language_codes()
    if self.sort:
        items.sort(options_sorter)
    if (zero and (not (self.zero is None)) and (not self.multiple)):
        items.insert(0, ('', self.zero))
    return items
