Fixes in admin

This commit is contained in:
Antonio de la Rosa 2025-01-26 01:18:08 +01:00
parent 30b41aa46b
commit eb6df1c9ae
13 changed files with 51 additions and 23 deletions

View file

@ -244,8 +244,8 @@ class SimpleList:
options (list): Return a list of basic options for items row
"""
options=[]
options.append('<a href="'+add_get_parameters(url, op_admin=1, id=id)+'">'+_('Edit')+'</a>')
options.append('<a href="'+add_get_parameters(url, op_admin=3, id=id)+'">'+_('Delete')+'</a>')
options.append('<a href="'+url+'/edit/{}">'.format(id)+_('Edit')+'</a>')
options.append('<a href="'+url+'/delete/{}">'.format(id)+_('Delete')+'</a>')
return options
def show(self):

View file

@ -27,7 +27,7 @@
<thead>
<tr class="title_list">
% for field in simplelist.fields_showed:
<th class="${simplelist.model.fields[field].name}_td" scope="col"><a href="${add_get_parameters(simplelist.url, order_field=field, begin_page=simplelist.begin_page, order=simplelist.change_order[field], search_text=simplelist.search_text, search_field=simplelist.search_field)}" class="">${set_css_arrow(simplelist, field)}${simplelist.model.fields[field].label}</a></th>
<td class="${simplelist.model.fields[field].name}_td"><a href="${add_get_parameters(simplelist.url, order_field=field, begin_page=simplelist.begin_page, order=simplelist.change_order[field], search_text=simplelist.search_text, search_field=simplelist.search_field)}" class="">${set_css_arrow(simplelist, field)}${simplelist.model.fields[field].label}</a></th>
% endfor
% for extra_field in simplelist.arr_extra_fields:
<td class="options_td">${ extra_field }</td>

View file

@ -19,22 +19,16 @@ url_app=config.apps['admin'][2]
admin_app=FastAPI(docs_url="/docs", openapi_url="/docs/openapi.json", title='Paramecio Admin', version='0.9')
@admin_app.middleware('http')
async def check_session(request: Request, call_next):
async def db_connect(request: Request, call_next):
db=WebModel.connection()
try:
request.state.db=db
response = await call_next(request)
except:
db.close()
raise
return response

View file

@ -140,6 +140,8 @@ def check_login_admin(user: UserAdmin, request: Request, response: Response) ->
db.query('update useradmin set token_login=%s, last_login=%s WHERE id=%s', [remember_key, date_now, result['id']])
request.session['login_admin']=True
request.session['user_id']=result['id']
request.session['theme']=result['dark_theme']
error=0
message=''
@ -212,14 +214,34 @@ def logout_admin(request: Request) -> RedirectResponse:
return response
@admin_app.get('/change_lang')
def change_lang():
def change_lang() -> ResponseData:
return RedirectResponse(app.url_path_for('home_admin'))
#return RedirectResponse(app.url_path_for('home_admin'))
error=0
message=''
return {'error': 0, 'message': ''}
@admin_app.get('/change_theme')
def change_theme():
def change_theme(request: Request, theme: bool = 0) -> ResponseData:
error=1
#s=get_session()
#reqi=request.session
db=request.state.db
request.session['theme']=theme
db.query('update useradmin set dark_theme=%s WHERE id=%s', [theme, request.session['user_id']])
error=0
return {'error': error, 'message': ''}
return RedirectResponse(app.url_path_for('home_admin'))
def check_login_tries(request, db):

View file

@ -44,5 +44,17 @@ def fastadmin_users(request: Request):
slist.fields_showed=['username', 'email', 'double_auth', 'last_login']
return t.load_template('users.phtml', title=i18n.tlang('Admin'), tlang=i18n.tlang, url_for=app.url_path_for, module_selected='fastadmin_users', slist=slist, session=request.session)
return t.load_template('users.phtml', title=i18n.tlang('Admin users'), tlang=i18n.tlang, url_for=app.url_path_for, module_selected='fastadmin_users', slist=slist, session=request.session)
@admin_app.get('/ausers/edit/{item_id}', response_class=HTMLResponse)
def fastadmin_users_edit(item_id: int, request: Request):
i18n=I18n('fastadmin')
db=request.state.db
#return t.load_template('edit_users.phtml', title=i18n.tlang('Edit admin users'), tlang=i18n.tlang, url_for=app.url_path_for, module_selected='fastadmin_users', session=request.session)
return ""

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -8,7 +8,7 @@ i18n=I18n('fastadmin')
dark_checked=""
dark_css=""
if session.get('theme', '0')=='1':
if session.get('theme', '0')==True:
dark_checked='checked'
dark_css='dark'
@ -20,9 +20,9 @@ if session.get('theme', '0')=='1':
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<title>${title}</title>
<link href="${make_media_url('css/admin.css', 'admin')}" rel="stylesheet" />
<link href="${make_media_url('css/responsive-nav.css', 'admin')}" rel="stylesheet" />
<link href="${make_media_url('css/tooltipster.bundle.min.css', 'admin')}" rel="stylesheet" />
<link href="${make_media_url('css/admin.css', 'fastadmin')}" rel="stylesheet" />
<link href="${make_media_url('css/responsive-nav.css', 'fastadmin')}" rel="stylesheet" />
<link href="${make_media_url('css/tooltipster.bundle.min.css', 'fastadmin')}" rel="stylesheet" />
<!--<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> -->
<%block name="extra_css">
</%block>
@ -53,7 +53,7 @@ if session.get('theme', '0')=='1':
</%block>
% if lang_selected!=None:
% for i18n_lang in i18n.dict_i18n:
<a class="${select_lang(i18n_lang, lang_selected)}" href=""><img src="${make_media_url('images/languages/'+i18n_lang+'.png', 'admin')}" alt="${i18n_lang}"/></a>
<a class="${select_lang(i18n_lang, lang_selected)}" href=""><img src="${make_media_url('images/languages/'+i18n_lang+'.png', 'fastadmin')}" alt="${i18n_lang}"/></a>
% endfor
% endif
</div>