diff options
Diffstat (limited to 'Pb/__init__.py')
| -rw-r--r-- | Pb/__init__.py | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/Pb/__init__.py b/Pb/__init__.py index 0212235..edb7e1f 100644 --- a/Pb/__init__.py +++ b/Pb/__init__.py @@ -23,15 +23,16 @@ class Pb(object): self.commands = []; self._working_dir = WORKING_DIR - def _filename_create(self, url=None, namepart=""): + def _filename_create(self, url=None, namepart="", extension=""): if url: _basename = os.path.basename(url) - namepart = re.split(r'\.')[0] - namepart = self.params.sanitize(_namepart)[0:_max_filename_length] + namepart = re.split(r'\.', _basename)[0] + namepart = self.params.sanitize(namepart)[0:_max_filename_length] name = "" if namepart: name += "%s-" % namepart name += "%s_%s" % (self.__class__.__name__, self._now) if self.params.username : name += "_%s" % self.params.username + if extension: name += ".%s" % extension return name def _filepath_create(self, filename, directory=WORKING_DIR): @@ -39,16 +40,17 @@ class Pb(object): def _filename_filepath_create(self, url=None, namepart="", directory=WORKING_DIR): _filename = self._filename_create(url=url, namepart=namepart); - _filepath = _filename_create(_filename, directory=directory); + _filepath = self._filepath_create(_filename, directory=directory); return _filename, _filepath - def _tempfilepath_create(self, namepart="temp", directory=WORKING_DIR): - _filename = self._filename_create(namepart=namepart) - return _filepath_create(_filename, directory=directory) + def _tempfilepath_create(self, namepart="temp", directory=WORKING_DIR, extension=""): + _filename = self._filename_create(namepart=namepart, extension=extension) + return self._filepath_create(_filename, directory=directory) - def _call_cmd(self, cmd): + def _call_cmd(self, cmd): try: - self.call_cmd(cmd) + cmd = map(lambda i: str(i), cmd) + call(cmd) self.commands.append(" ".join(cmd)); except Exception: raise Exception("Unable to call cmd {}".format(str(cmd))) @@ -72,6 +74,13 @@ class Pb(object): ident = (Popen([BIN_IDENTIFY, filepath], stdout=PIPE).communicate()[0]).split(" ") return ident[2].split("x") + def _width_and_height_set(self, filepath=None, width=DEFAULT_WIDTH, height=DEFAULT_HEIGHT): + if filepath: + self.width, self.height = Pb.dimensions(filepath) + return + self.width = width + self.height = height + @staticmethod def file_size (filepath): try: |
