diff options
Diffstat (limited to 'python/tbc_www/views.py')
-rw-r--r-- | python/tbc_www/views.py | 40 |
1 files changed, 27 insertions, 13 deletions
diff --git a/python/tbc_www/views.py b/python/tbc_www/views.py index f68a706..5b719aa 100644 --- a/python/tbc_www/views.py +++ b/python/tbc_www/views.py @@ -7,7 +7,7 @@ from django.conf import settings from gentoo_www.models import SiteSettings, Layout, Pages, SubPages, Sponsors, Posts from tbc_www.models import EbuildsMetadata, BuildLogs, BuildJobs, BuildLogsRepomanQa, \ BuildJobsUse, Categories, CategoriesMetadata, Packages, PackagesMetadata, Ebuilds, \ - Repos, EbuildsKeywords, BuildLogsErrors + Repos, EbuildsKeywords, BuildLogsErrors, EbuildsRestrictions, EbuildsIuse import re def default_TmpDict(pagerequest): @@ -32,9 +32,10 @@ def home(request): Lines = 5 TmpDict = default_TmpDict(pagerequest) TmpDict['EM'] = EbuildsMetadata.objects.filter(Revision = '1.1').order_by('-Id')[:Lines] - adict = {} + alist = [] for BL in BuildLogs.objects.order_by('-TimeStamp')[:Lines]: adict2 = {} + adict2['BuildLogId'] = BL.BuildLogId adict2['C'] = BL.EbuildId.PackageId.CategoryId.Category adict2['P'] = BL.EbuildId.PackageId.Package adict2['V'] = BL.EbuildId.Version @@ -43,8 +44,8 @@ def home(request): adict2['SummeryText'] = BL.SummeryText if BL.Fail: adict2['BE_tmp'] = BuildLogsErrors.objects.filter(BuildLogId = BL.BuildLogId) - adict[BL.BuildLogId] = adict2 - TmpDict['BL'] = adict + alist.append(adict2) + TmpDict['BL'] = alist adict = {} BJ_Tmp = BuildJobs.objects.order_by('-TimeStamp')[:Lines] for BJ in BJ_Tmp: @@ -82,7 +83,7 @@ def home(request): def categories(request): pagerequest = 'packages' TmpDict = default_TmpDict(pagerequest) - adict2 = {} + alist = [] for CM in CategoriesMetadata.objects.filter(CategoryId__Active = True).order_by('CategoryId__Category'): adict = {} adict['CategoryId'] = CM.CategoryId.CategoryId @@ -92,14 +93,14 @@ def categories(request): for P in Packages.objects.filter(Active = True).filter(CategoryId_id = CM.CategoryId.CategoryId).order_by('Package'): packages.append(P.Package + '\n') adict['Packages'] = packages - adict2[CM.CategoryId.Category] = adict - TmpDict['CM_tmp'] = adict2 + alist.append(adict) + TmpDict['CM_tmp'] = alist return render(request, 'pages/' + pagerequest + '/index.html', TmpDict) def packages(request, category_id): pagerequest = 'packages' TmpDict = default_TmpDict(pagerequest) - adict2 = {} + alist = [] for PM in PackagesMetadata.objects.filter(PackageId__CategoryId_id = category_id).filter(PackageId__Active = True): adict = {} adict['PackageId'] = PM.PackageId.PackageId @@ -110,8 +111,8 @@ def packages(request, category_id): for E in Ebuilds.objects.filter(Active = True).filter(PackageId__Package = PM.PackageId.Package): ebuilds.append(E.Version + '::' + E.PackageId.RepoId.Repo + '\n') adict['Ebuilds'] = ebuilds - adict2[PM.PackageId.Package] = adict - TmpDict['PM_tmp'] = adict2 + alist.append(adict) + TmpDict['PM_tmp'] = alist TmpDict['C'] = get_object_or_404(Categories, CategoryId = category_id) return render(request, 'pages/' + pagerequest + '/category/index.html', TmpDict) @@ -122,16 +123,29 @@ def ebuilds(request, package_id): TmpDict['P'] = P TmpDict['EM_tmp'] = EbuildsMetadata.objects.filter(EbuildId__Active = True).filter(EbuildId__PackageId__Package = P.PackageId.Package) TmpDict['EK_tmp'] = EbuildsKeywords.objects.filter(EbuildId__Active = True).filter(EbuildId__PackageId__Package = P.PackageId.Package) + return render(request, 'pages/' + pagerequest + '/ebuilds/index.html', TmpDict) +def ebuild(request, ebuild_id): + pagerequest = 'packages' + TmpDict = default_TmpDict(pagerequest) + TmpDict['E'] = get_object_or_404(Ebuilds, EbuildId = ebuild_id) + TmpDict['EM_tmp'] = EbuildsMetadata.objects.filter(EbuildId__EbuildId = ebuild_id) + TmpDict['EK_tmp'] = EbuildsKeywords.objects.filter(EbuildId__EbuildId = ebuild_id) + TmpDict['BL_tmp'] = BuildLogs.objects.filter(EbuildId__EbuildId = ebuild_id) + TmpDict['EU_tmp'] = EbuildsIuse.objects.filter(EbuildId__EbuildId = ebuild_id) + TmpDict['ER_tmp'] = EbuildsRestrictions.objects.filter(EbuildId__EbuildId = ebuild_id) + return render(request, 'pages/' + pagerequest + '/ebuilds/ebuild/index.html', TmpDict) + def new_main(request): pagerequest = 'new' Lines = 30 TmpDict = default_TmpDict(pagerequest) TmpDict['EM'] = EbuildsMetadata.objects.filter(Revision = '1.1').order_by('-Id')[:Lines] - adict = {} + alist = [] for BL in BuildLogs.objects.order_by('-TimeStamp')[:Lines]: adict2 = {} + adict2['BuildLogId'] = BL.BuildLogId adict2['C'] = BL.EbuildId.PackageId.CategoryId.Category adict2['P'] = BL.EbuildId.PackageId.Package adict2['V'] = BL.EbuildId.Version @@ -140,8 +154,8 @@ def new_main(request): adict2['SummeryText'] = BL.SummeryText if BL.Fail: adict2['BE_tmp'] = BuildLogsErrors.objects.filter(BuildLogId = BL.BuildLogId) - adict[BL.BuildLogId] = adict2 - TmpDict['BL'] = adict + alist.append(adict2) + TmpDict['BL'] = alist adict = {} BJ_Tmp = BuildJobs.objects.order_by('-TimeStamp')[:Lines] for BJ in BJ_Tmp: |