Files
mayan-edms/mayan/apps/dependencies/forms.py
Roberto Rosario ea3b513ae3 Add new app to handle all dependencies
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-05-03 01:12:20 -04:00

51 lines
1.7 KiB
Python

from __future__ import unicode_literals
from django import forms
from mayan.apps.common.widgets import TextAreaDiv
from .classes import Dependency
class DependenciesLicensesForm(forms.Form):
text = forms.CharField(
label='',
widget=TextAreaDiv(
attrs={
'class': 'full-height scrollable',
'data-height-difference': 270,
}
)
)
def __init__(self, *args, **kwargs):
super(DependenciesLicensesForm, self).__init__(*args, **kwargs)
copyright_texts = []
for dependency in Dependency.get_all():
copyright_text = dependency.get_copyright()
if copyright_text:
copyright_texts.append('-' * len(dependency.get_label()))
copyright_texts.append(dependency.get_label().strip())
copyright_texts.append('-' * len(dependency.get_label()))
# Implement word wrapping at 79 columns.
for line in copyright_text.split('\n'):
line_length = 0
new_line = []
for word in line.strip().split():
if line_length + len(word) > 79:
copyright_texts.append(' '.join(new_line))
new_line = [word]
line_length = 0
else:
new_line.append(word)
line_length = line_length + len(word)
copyright_texts.append(' '.join(new_line))
copyright_texts.append('\n')
self.fields['text'].initial = '\n'.join(copyright_texts)