poster integration #48
@@ -3,9 +3,8 @@ from django.utils.translation import ngettext
|
|||||||
from .models import Deployment_Data,Schedule_Day_Data,Schedule_Week_Data,Namespace_Data
|
from .models import Deployment_Data,Schedule_Day_Data,Schedule_Week_Data,Namespace_Data
|
||||||
from .utils import import_namespace,import_deployment,generate_default_day_schedule,generate_default_week_schedule,Check_server_supposed_XXX,retrieve_and_apply
|
from .utils import import_namespace,import_deployment,generate_default_day_schedule,generate_default_week_schedule,Check_server_supposed_XXX,retrieve_and_apply
|
||||||
from apps.kubernetes_connection.utils import scale_up,scale_down
|
from apps.kubernetes_connection.utils import scale_up,scale_down
|
||||||
from admin_extra_buttons.api import ExtraButtonsMixin, button
|
from admin_extra_buttons.api import button
|
||||||
from import_export.admin import ImportExportModelAdmin
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
|
|
||||||
DB = 'cloudmanager_db'
|
DB = 'cloudmanager_db'
|
||||||
|
|
||||||
@@ -86,7 +85,7 @@ class MultiDBModelAdmin(admin.ModelAdmin):
|
|||||||
|
|
||||||
|
|
||||||
@admin.register(Deployment_Data)
|
@admin.register(Deployment_Data)
|
||||||
class DeploymentDataAdmin(ImportExportModelAdmin,ExtraButtonsMixin, MultiDBModelAdmin):
|
class DeploymentDataAdmin(UniversalModelAdmin):
|
||||||
list_display = ('name', 'namespace', 'schedule_week', 'schedule_day', 'replicas')
|
list_display = ('name', 'namespace', 'schedule_week', 'schedule_day', 'replicas')
|
||||||
list_filter = (ActiveAtHourFilter,)
|
list_filter = (ActiveAtHourFilter,)
|
||||||
actions = [Check_server_supposed_False,Check_server_supposed_true,scale_up_deploy,scale_down_deploy]
|
actions = [Check_server_supposed_False,Check_server_supposed_true,scale_up_deploy,scale_down_deploy]
|
||||||
@@ -104,7 +103,7 @@ class DeploymentDataAdmin(ImportExportModelAdmin,ExtraButtonsMixin, MultiDBModel
|
|||||||
self.message_user(request, 'Deployments imported')
|
self.message_user(request, 'Deployments imported')
|
||||||
|
|
||||||
@admin.register(Schedule_Day_Data)
|
@admin.register(Schedule_Day_Data)
|
||||||
class ScheduleDayAdmin(ImportExportModelAdmin,ExtraButtonsMixin,MultiDBModelAdmin):
|
class ScheduleDayAdmin(UniversalModelAdmin):
|
||||||
list_display = ['name_schedule'] + [f'state_at_{h}' for h in range(24)]
|
list_display = ['name_schedule'] + [f'state_at_{h}' for h in range(24)]
|
||||||
@button()
|
@button()
|
||||||
def generate_default_day_schedule_admin(self, request):
|
def generate_default_day_schedule_admin(self, request):
|
||||||
@@ -113,7 +112,7 @@ class ScheduleDayAdmin(ImportExportModelAdmin,ExtraButtonsMixin,MultiDBModelAdmi
|
|||||||
self.message_user(request, 'Created default schedules')
|
self.message_user(request, 'Created default schedules')
|
||||||
|
|
||||||
@admin.register(Schedule_Week_Data)
|
@admin.register(Schedule_Week_Data)
|
||||||
class ScheduleWeekAdmin(ImportExportModelAdmin,ExtraButtonsMixin,MultiDBModelAdmin):
|
class ScheduleWeekAdmin(UniversalModelAdmin):
|
||||||
list_display = (
|
list_display = (
|
||||||
'name_schedule',
|
'name_schedule',
|
||||||
'state_Monday', 'state_Tuesday', 'state_Wednesday',
|
'state_Monday', 'state_Tuesday', 'state_Wednesday',
|
||||||
@@ -127,7 +126,7 @@ class ScheduleWeekAdmin(ImportExportModelAdmin,ExtraButtonsMixin,MultiDBModelAdm
|
|||||||
|
|
||||||
|
|
||||||
@admin.register(Namespace_Data)
|
@admin.register(Namespace_Data)
|
||||||
class NamespaceAdmin(ImportExportModelAdmin,ExtraButtonsMixin, MultiDBModelAdmin):
|
class NamespaceAdmin(UniversalModelAdmin):
|
||||||
list_display = ('namespace',)
|
list_display = ('namespace',)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from import_export.admin import ImportExportModelAdmin
|
|
||||||
from import_export import resources
|
from import_export import resources
|
||||||
from import_export.fields import Field
|
from import_export.fields import Field
|
||||||
from .models import JobData
|
from .models import JobData
|
||||||
from django.utils.text import Truncator
|
from django.utils.text import Truncator
|
||||||
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
|
|
||||||
@@ -31,7 +31,7 @@ class JobResource(resources.ModelResource):
|
|||||||
|
|
||||||
|
|
||||||
@admin.register(JobData)
|
@admin.register(JobData)
|
||||||
class JobAdmin(ImportExportModelAdmin):
|
class JobAdmin(UniversalModelAdmin):
|
||||||
list_display = ('job_position','company','URL','status','date_saved','date_applied','type','resume','location','short_description','salary','contact','source')
|
list_display = ('job_position','company','URL','status','date_saved','date_applied','type','resume','location','short_description','salary','contact','source')
|
||||||
#fields = ['job_position','company','URL','status','date_saved','date_applied','type','resume','cover_letter','location','job_description','salary ','contact','source']
|
#fields = ['job_position','company','URL','status','date_saved','date_applied','type','resume','cover_letter','location','job_description','salary ','contact','source']
|
||||||
resource_classes = [JobResource]
|
resource_classes = [JobResource]
|
||||||
|
|||||||
@@ -1,13 +1,14 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from import_export.admin import ImportExportModelAdmin
|
|
||||||
from import_export import resources
|
from import_export import resources
|
||||||
from django.utils.html import format_html
|
from django.utils.html import format_html
|
||||||
from .models import podcastData
|
from .models import podcastData
|
||||||
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
@admin.register(podcastData)
|
@admin.register(podcastData)
|
||||||
class JobAdmin(ImportExportModelAdmin):
|
class PodcastAdmin(UniversalModelAdmin):
|
||||||
list_display = ('podcast_name','clickable_links','enabled')
|
list_display = ('podcast_name','clickable_links','enabled')
|
||||||
|
|
||||||
|
|
||||||
def clickable_links(self, obj):
|
def clickable_links(self, obj):
|
||||||
return format_html('<a href="{}">{}</a>', obj.podcast_url,obj.podcast_url)
|
return format_html('<a href="{}">{}</a>', obj.podcast_url,obj.podcast_url)
|
||||||
|
|||||||
@@ -1,13 +1,11 @@
|
|||||||
from django.contrib import admin,messages
|
from django.contrib import admin,messages
|
||||||
from django.utils.translation import ngettext
|
from django.utils.translation import ngettext
|
||||||
from django.utils.html import format_html
|
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from djangoql.admin import DjangoQLSearchMixin
|
|
||||||
from prompt_toolkit.shortcuts import print_container
|
from prompt_toolkit.shortcuts import print_container
|
||||||
from import_export.admin import ImportExportModelAdmin
|
|
||||||
from import_export import resources
|
from import_export import resources
|
||||||
from .models import SimpsonsData,simpsons_data_object,urlData
|
from .models import SimpsonsData,urlData
|
||||||
from .utils import mark_episode_watched,unwatch_all_episodes,generate_new_urls_for_episode
|
from .utils import mark_episode_watched,unwatch_all_episodes,generate_new_urls_for_episode
|
||||||
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
|
|
||||||
@@ -65,19 +63,15 @@ def generate_new_urls(modeladmin, request, queryset):
|
|||||||
|
|
||||||
|
|
||||||
@admin.register(SimpsonsData)
|
@admin.register(SimpsonsData)
|
||||||
class EpisodeAdmin(DjangoQLSearchMixin,ImportExportModelAdmin):
|
class EpisodeAdmin(UniversalModelAdmin):
|
||||||
list_display = [field.name for field in SimpsonsData._meta.fields if field.name != 'id']
|
list_display = [field.name for field in SimpsonsData._meta.fields if field.name != 'id']
|
||||||
|
list_display += ['clickable_links']
|
||||||
list_filter = ['seen','modified_at']
|
list_filter = ['seen','modified_at']
|
||||||
#list_filter = ['seen']
|
#list_filter = ['seen']
|
||||||
fields = ['season', 'episode', 'url', 'seen']
|
fields = ['season', 'episode', 'url', 'seen']
|
||||||
actions = [make_seen,make_unseen,unseen_betaserie,generate_new_urls]
|
actions = [make_seen,make_unseen,unseen_betaserie,generate_new_urls]
|
||||||
search_fields = ['season', 'episode', 'url', 'seen']
|
search_fields = ['season', 'episode', 'url', 'seen']
|
||||||
djangoql_completion_enabled_by_default = False
|
|
||||||
|
|
||||||
def clickable_links(self, obj):
|
|
||||||
return format_html('<a href="{}">{}</a>', obj.url,obj.url)
|
|
||||||
|
|
||||||
|
|
||||||
def get_queryset(self, request):
|
def get_queryset(self, request):
|
||||||
return super().get_queryset(request).using(DB)
|
return super().get_queryset(request).using(DB)
|
||||||
|
|
||||||
@@ -91,7 +85,7 @@ class EpisodeAdmin(DjangoQLSearchMixin,ImportExportModelAdmin):
|
|||||||
queryset.using(DB).delete()
|
queryset.using(DB).delete()
|
||||||
|
|
||||||
@admin.register(urlData)
|
@admin.register(urlData)
|
||||||
class urldataAdmin(ImportExportModelAdmin):
|
class urldataAdmin(UniversalModelAdmin):
|
||||||
list_display = ('url_example', 'prefix', 'infix', 'suffix','addedDate')
|
list_display = ('url_example', 'prefix', 'infix', 'suffix','addedDate')
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.utils.html import format_html
|
from django.utils.html import format_html
|
||||||
from import_export.admin import ImportExportModelAdmin
|
|
||||||
from .models import StreamingSiteTestingData,StreamingRedirectData
|
from .models import StreamingSiteTestingData,StreamingRedirectData
|
||||||
from .utils import full_testing
|
from .utils import full_testing
|
||||||
from urllib.parse import urlsplit, urlunsplit
|
from urllib.parse import urlsplit, urlunsplit
|
||||||
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -34,14 +34,11 @@ def urlcleaning(modeladmin, request, queryset):
|
|||||||
|
|
||||||
return 0
|
return 0
|
||||||
@admin.register(StreamingSiteTestingData)
|
@admin.register(StreamingSiteTestingData)
|
||||||
class streamingAdmin(ImportExportModelAdmin):
|
class streamingAdmin(UniversalModelAdmin):
|
||||||
list_display = ['clickable_links','result_colored','newstatus']
|
list_display = ['clickable_links','result_colored','newstatus']
|
||||||
fields = ['url']
|
fields = ['url']
|
||||||
actions = [check,urlcleaning]
|
actions = [check,urlcleaning]
|
||||||
|
|
||||||
def clickable_links(self, obj):
|
|
||||||
return format_html('<a href="{}">{}</a>', obj.url,obj.url)
|
|
||||||
|
|
||||||
def result_colored(self, obj):
|
def result_colored(self, obj):
|
||||||
colors = {
|
colors = {
|
||||||
'REACHABLE': 'green',
|
'REACHABLE': 'green',
|
||||||
@@ -61,7 +58,7 @@ class streamingAdmin(ImportExportModelAdmin):
|
|||||||
|
|
||||||
|
|
||||||
@admin.register(StreamingRedirectData)
|
@admin.register(StreamingRedirectData)
|
||||||
class StreamingRedirectAdmin(ImportExportModelAdmin):
|
class StreamingRedirectAdmin(UniversalModelAdmin):
|
||||||
list_display = ['name','season','episode','randomViewing','clickable_links','addedDate','alias']
|
list_display = ['name','season','episode','randomViewing','clickable_links','addedDate','alias']
|
||||||
#fields = ['name','season','episode','url_example','prefix','infix','suffix','alias','randomViewing','seasonInformation']
|
#fields = ['name','season','episode','url_example','prefix','infix','suffix','alias','randomViewing','seasonInformation']
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from import_export.admin import ImportExportModelAdmin
|
|
||||||
from .models import TelegramData
|
from .models import TelegramData
|
||||||
from .utils import telegramUtils
|
from .utils import telegramUtils
|
||||||
|
from core.admin import UniversalModelAdmin
|
||||||
|
|
||||||
@admin.action(description="Clear all expired messages")
|
@admin.action(description="Clear all expired messages")
|
||||||
def messages_cleaning(modeladmin, request, queryset):
|
def messages_cleaning(modeladmin, request, queryset):
|
||||||
@@ -10,7 +10,7 @@ def messages_cleaning(modeladmin, request, queryset):
|
|||||||
|
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
@admin.register(TelegramData)
|
@admin.register(TelegramData)
|
||||||
class JobAdmin(ImportExportModelAdmin):
|
class JobAdmin(UniversalModelAdmin):
|
||||||
list_display = ('message_id','chat_id','description','creation_date','expiration_date')
|
list_display = ('message_id','chat_id','description','creation_date','expiration_date')
|
||||||
actions = [messages_cleaning]
|
actions = [messages_cleaning]
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,7 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from .models import historicalData,redirectData
|
from .models import historicalData,redirectData
|
||||||
from .utils import redirect_method
|
from .utils import redirect_method
|
||||||
from import_export.admin import ImportExportModelAdmin
|
from core.admin import UniversalModelAdmin
|
||||||
from django.utils.html import format_html
|
|
||||||
|
|
||||||
|
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
|
|
||||||
@@ -21,16 +19,13 @@ def re_redirect(modeladmin, request, queryset):
|
|||||||
output_generated
|
output_generated
|
||||||
)
|
)
|
||||||
@admin.register(historicalData)
|
@admin.register(historicalData)
|
||||||
class historicalAdmin(ImportExportModelAdmin):
|
class historicalAdmin(UniversalModelAdmin):
|
||||||
list_input = (field.name for field in historicalData._meta.fields if field.name != 'id' or field.name != 'url')
|
list_input = (field.name for field in historicalData._meta.fields if field.name != 'id' or field.name != 'url')
|
||||||
list_display = ["clickable_links"]
|
list_display = ["clickable_links"]
|
||||||
list_display.extend(list_input)
|
list_display.extend(list_input)
|
||||||
actions = [re_redirect]
|
actions = [re_redirect]
|
||||||
|
|
||||||
|
|
||||||
def clickable_links(self, obj):
|
|
||||||
return format_html('<a href="{}">{}</a>', obj.url,obj.url)
|
|
||||||
|
|
||||||
@admin.register(redirectData)
|
@admin.register(redirectData)
|
||||||
class redirectAdmin(ImportExportModelAdmin):
|
class redirectAdmin(UniversalModelAdmin):
|
||||||
list_display = [field.name for field in redirectData._meta.fields if field.name != 'id']
|
list_display = [field.name for field in redirectData._meta.fields if field.name != 'id']
|
||||||
|
list_display += ['clickable_links']
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
from django.db import models
|
from django.db import models
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.utils.html import format_html
|
|
||||||
|
|
||||||
class historicalData(models.Model):
|
class historicalData(models.Model):
|
||||||
url = models.CharField(max_length=1000)
|
url = models.CharField(max_length=1000)
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
from import_export.admin import ImportExportModelAdmin
|
||||||
|
from admin_extra_buttons.api import ExtraButtonsMixin
|
||||||
|
from django.contrib import admin
|
||||||
|
from djangoql.admin import DjangoQLSearchMixin
|
||||||
|
from django.utils.html import format_html
|
||||||
|
|
||||||
|
class UniversalModelAdmin(DjangoQLSearchMixin,ImportExportModelAdmin,ExtraButtonsMixin,admin.ModelAdmin):
|
||||||
|
djangoql_completion_enabled_by_default = True
|
||||||
|
|
||||||
|
#Add search fields if you want to have the toggle on/off
|
||||||
|
object = "obj.url"
|
||||||
|
|
||||||
|
def clickable_links(self, obj):
|
||||||
|
return format_html('<a href="{}">{}</a>', obj.url,obj.url)
|
||||||
|
|
||||||
@@ -252,3 +252,4 @@ PROXIES = {
|
|||||||
"http" : PROXY_URL,
|
"http" : PROXY_URL,
|
||||||
"https" : PROXY_URL
|
"https" : PROXY_URL
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user