def clean_name(self): if self.cleaned_data['name']: # only letters, numbers, underscores, spaces and hyphens are allowed. if not alnum_name_re.search(self.cleaned_data['name']): raise forms.ValidationError(_(u'Only letters, numbers, underscores, spaces and hyphens are allowed.')) # file/directory must not already exist. if _exists(_convert_filename(self.cleaned_data['name']) + self.file_extension): raise forms.ValidationError(_(u'The File/Folder already exists.')) return _convert_filename(self.cleaned_data['name'])
def _check_file(request): """ Check if file already exists on the server. """ from django.utils import simplejson folder = request.POST.get('folder') fb_uploadurl_re = re.compile(r'^(%s)' % reverse("fb_upload")) folder = fb_uploadurl_re.sub('', folder) fileArray = {} if request.method == 'POST': for k, v in request.POST.items(): if k != "folder": v = _convert_filename(v) if _exists(os.path.join(MEDIA_ROOT, DIRECTORY, folder, v)): fileArray[k] = v return HttpResponse(simplejson.dumps(fileArray))
def render(self, context): try: source = self.src.resolve(context) except VariableDoesNotExist: return None if self.version_prefix: version_prefix = self.version_prefix else: try: version_prefix = self.version_prefix_var.resolve(context) except VariableDoesNotExist: return None try: version_path = _get_version_path(_url_to_path(str(source)), version_prefix) if not _exists(version_path): # create version version_path = _version_generator(_url_to_path(str(source)), version_prefix) elif _last_mod(os.path.join(MEDIA_ROOT, _url_to_path(str(source)))) > _last_mod(os.path.join(MEDIA_ROOT, version_path)): # recreate version if original image was updated version_path = _version_generator(_url_to_path(str(source)), version_prefix, force=True) context[self.var_name] = FileObject(version_path) except: context[self.var_name] = "" return ''