Aufräumen, System Standorte

This commit is contained in:
jopster
2024-07-08 14:09:12 +02:00
parent b9522c8706
commit 13f556bf62
22 changed files with 1051 additions and 510 deletions
-379
View File
@@ -1,379 +0,0 @@
shell_patterns=0
##############################################################################
# %% The % character
# %f The current file (if non-local vfs, file will be copied locally and
# %f will be full path to it)
# %p The current file
# %d The current working directory
# %s "Selected files"; the tagged files if any, otherwise the current file
# %t Tagged files
# %u Tagged files (and they are untagged on return from expand_format)
# %view Runs the commands and pipes standard output to the view command
# If %view is immediately followed by '{', recognize keywords
# ascii, hex, nroff and unform
#
# If the format letter is in uppercase, it refers to the other panel
#
# With a number followed the % character you can turn quoting on (default)
# and off. For example:
# %f quote expanded macro
# %1f ditto
# %0f don't quote expanded macro
##############################################################################
+ ! t t
@ Do something on the current file
CMD=%{Enter command}
$CMD %f
+ t t
@ Do something on the tagged files
CMD=%{Enter command}
for i in %t ; do
$CMD "$i"
done
0 Edit a bug report and send it to root
I=`mktemp "${MC_TMPDIR:-/tmp}/mail.XXXXXX"` || exit 1
${EDITOR-vi} "$I"
test -r "$I" && mail root < "$I"
rm -f "$I"
=+ f \.1$ | f \.3$ | f \.4$ | f \.5$ | f \.6$ | f \.7$ | f \.8$ | f \.man$ & t r
1 Display the file with roff -man
%view{ascii,nroff} roff -c -Tlatin1 -mandoc %f
2 Call the info hypertext browser
info
= t d
3 Compress the current subdirectory (tar.gz)
Pwd=`basename %d /`
echo -n "Name of the compressed file (without extension) [$Pwd]: "
read tar
[ "$tar"x = x ] && tar="$Pwd"
cd .. && \
tar cf - "$Pwd" | gzip -f9 > "$tar.tar.gz" && \
echo "../$tar.tar.gz created."
4 Compress the current subdirectory (tar.bz2)
Pwd=`basename %d /`
echo -n "Name of the compressed file (without extension) [$Pwd]: "
read tar
[ "$tar"x = x ] && tar="$Pwd"
cd .. && \
tar cf - "$Pwd" | bzip2 -f > "$tar.tar.bz2" && \
echo "../$tar.tar.bz2 created."
5 Compress the current subdirectory (tar.7z)
Pwd=`basename %d /`
echo -n "Name of the compressed file (without extension) [$Pwd]: "
read tar
[ "$tar"x = x ] && tar="$Pwd"
cd .. && \
tar cf - "$Pwd" | 7za a -si "$tar.tar.7z" && \
echo "../$tar.tar.7z created."
6 Compress the current subdirectory (tar.xz)
Pwd=`basename %d /`
echo -n "Name of the compressed file (without extension) [$Pwd]: "
read tar
[ "$tar"x = x ] && tar="$Pwd"
cd .. && \
tar cf - "$Pwd" | xz -f > "$tar.tar.xz" && \
echo "../$tar.tar.xz created."
7 Compress the current subdirectory (tar.zst)
Pwd=`basename %d /`
echo -n "Name of the compressed file (without extension) [$Pwd]: "
read tar
[ "$tar"x = x ] && tar="$Pwd"
cd .. && \
tar cf - "$Pwd" | zstd -f > "$tar.tar.zst" && \
echo "../$tar.tar.zst created."
= f \.c$ & t r
+ f \.c$ & t r & ! t t
c Compile and link current .c file
make "`basename %f .c`" 2>/dev/null || cc -O -o "`basename %f .c`" %f
+ t r & ! t t
a Append file to opposite
cat %f >> %D/%f
+ t t
A Append files to opposite files
for i in %t ; do
cat "$i" >> %D/"$i"
done
+ t r & ! t t
d Delete file if a copy exists in the other directory.
if [ %d = %D ]; then
echo "The two directories must be different."
exit 1
fi
if [ -f %D/%f ]; then # if two of them, then
if cmp -s %D/%f %f; then
rm %f && echo %f": DELETED."
else
echo %f" and "%D/%f" differ: NOT deleted."
echo -n "Press RETURN "
read key
fi
else
echo %f": No copy in "%D/%f": NOT deleted."
fi
+ t t
D Delete tagged files if a copy exists in the other directory.
if [ %d = %D ]; then
echo "The two directores must be different."
exit 1
fi
for i in %t ; do
if [ -f %D/"$i" ]; then
SUM1=`sum "$i"`
SUM2=`sum %D/"$i"`
if [ "$SUM1" = "$SUM2" ]; then
rm "$i" && echo "${i}: DELETED."
else
echo "$i and "%D"/$i differ: NOT deleted."
fi
else
echo "$i has no copy in "%D": NOT deleted."
fi
done
m View manual page
MAN=%{Enter manual name}
%view{ascii,nroff} MANROFFOPT='-c -Tlatin1' MAN_KEEP_FORMATTING=1 man -P cat "$MAN"
= f \.gz$ & t r
+ ! t t
n Inspect gzip'ed newsbatch file
dd if=%f bs=1 skip=12 | zcat | ${PAGER-more}
# assuming the cunbatch header is 12 bytes long.
= t r &
+ ! t t
h Strip headers from current newsarticle
CHECK=`awk '{print $1 ; exit}' %f` 2>/dev/null
case "$CHECK" in
Newsgroups:|Path:)
I=`mktemp "${MC_TMPDIR:-/tmp}/news.XXXXXX"` || exit 1
cp %f "$I" && sed '/^'"$CHECK"' /,/^$/d' "$I" > %f
[ "$?" = "0" ] && rm "$I"
echo %f": header removed."
;;
*)
echo %f" is not a news article."
;;
esac
+ t t
H Strip headers from the marked newsarticles
for i in %t ; do
CHECK=`awk '{print $1 ; exit}' "$i"` 2>/dev/null
WFILE=`mktemp "${MC_TMPDIR:-/tmp}/news.XXXXXX"` || exit 1
case "$CHECK" in
Newsgroups:|Path:)
cp "$i" "$WFILE" && sed '/^'"$CHECK"' /,/^$/d' "$WFILE" > "$i"
if [ "$?" = "0" ]; then
rm "$WFILE"; echo "$i header removed. OK."
else
echo "Oops! Please check $i against $WFILE."
fi
;;
*)
echo "$i skipped: Not a news article."
;;
esac
done
= t r
+ ! t t
r Copy file to remote host
echo -n "To which host?: "
read Host
echo -n "To which directory on $Host?: "
read Dir
rcp -p %f "${Host}:${Dir}"
+ t t
R Copy files to remote host (no error checking)
echo -n "Copy files to which host?: "
read Host
echo -n "To which directory on $Host? :"
read Dir
rcp -pr %u "${Host}:${Dir}"
= f \.tex$ & t r
+ f \.tex$ & t r & ! t t
t Run latex on file and show it with xdvi
latex %f && xdvi "`basename %f .tex`".dvi
=+ f ^part | f ^Part | f uue & t r
+ t t
U Uudecode marked news articles (needs work)
(
for i in %t ; do # strip headers
FIRST=`awk '{print $1 ; exit}' "$i"`
cat "$i" | sed '/^'"$FIRST"' /,/^$/d'
done
) | sed '/^$/d' | sed -n '/^begin 6/,/^end$/p' | uudecode
if [ "$?" != "0" ]; then
echo "Cannot decode "%t"."
fi
echo "Please test the output file before deleting anything."
=+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.lz$ | f \.tar\.lz4$ | f \.tar\.lzma$ | f \.tar\.7z$ | f \.tar\.xz$ | f \.tar\.zst | f \.tar\.Z$ | f \.tar\.bz2$ & t rl
x Extract the contents of a compressed tar file
unset PRG
case %f in
*.tar.7z) PRG="7za e -so";;
*.tar.bz2) PRG="bunzip2 -c";;
*.tar.gz|*.tar.z|*.tgz|*.tpz|*.tar.Z) PRG="gzip -dc";;
*.tar.lz) PRG="lzip -dc";;
*.tar.lz4) PRG="lz4 -dc";;
*.tar.lzma) PRG="lzma -dc";;
*.tar.xz) PRG="xz -dc";;
*.tar.zst) PRG="zstd -dc";;
*) exit 1;;
esac
$PRG %f | tar xvf -
= t r
+ ! t t
y Gzip or gunzip current file
unset DECOMP
case %f in
*.gz|*.[zZ]) DECOMP=-d;;
esac
# Do *not* add quotes around $DECOMP!
gzip $DECOMP -v %f
+ t t
Y Gzip or gunzip tagged files
for i in %t ; do
unset DECOMP
case "$i" in
*.gz|*.[zZ]) DECOMP=-d;;
esac
gzip $DECOMP -v "$i"
done
+ ! t t
b Bzip2 or bunzip2 current file
unset DECOMP
case %f in
*.bz2) DECOMP=-d;;
esac
bzip2 $DECOMP -v %f
+ t t
B Bzip2 or bunzip2 tagged files
for i in %t ; do
unset DECOMP
case "$i" in
*.bz2) DECOMP=-d;;
esac
bzip2 $DECOMP -v "$i"
done
+ f \.tar.gz$ | f \.tgz$ | f \.tpz$ | f \.tar.Z$ | f \.tar.z$ | f \.tar.bz2$ | f \.tar.F$ & t r & ! t t
z Extract compressed tar file to subdirectory
unset D
set gzip -cd
case %f in
*.tar.F) D=`basename %f .tar.F`; set freeze -dc;;
*.tar.Z) D=`basename %f .tar.Z`;;
*.tar.bz2) D=`basename %f .tar.bz2`; set bunzip2 -c;;
*.tar.gz) D=`basename %f .tar.gz`;;
*.tar.z) D=`basename %f .tar.z`;;
*.tgz) D=`basename %f .tgz`;;
*.tpz) D=`basename %f .tpz`;;
esac
mkdir "$D"; cd "$D" && ("$1" "$2" ../%f | tar xvf -)
+ t t
Z Extract compressed tar files to subdirectories
for i in %t ; do
set gzip -dc
unset D
case "$i" in
*.tar.F) D=`basename "$i" .tar.F`; set freeze -dc;;
*.tar.Z) D=`basename "$i" .tar.Z`;;
*.tar.bz2) D=`basename "$i" .tar.bz2`; set bunzip2 -c;;
*.tar.gz) D=`basename "$i" .tar.gz`;;
*.tar.z) D=`basename "$i" .tar.z`;;
*.tgz) D=`basename "$i" .tgz`;;
*.tpz) D=`basename "$i" .tpz`;;
esac
mkdir "$D"; (cd "$D" && "$1" "$2" "../$i" | tar xvf -)
done
+ f \.gz$ | f \.tgz$ | f \.tpz$ | f \.Z$ | f \.z$ | f \.bz2$ & t r & ! t t
c Convert gz<->bz2, tar.gz<->tar.bz2 & tgz->tar.bz2
unset D
unset EXT
case %f in
*.Z) EXT=Z;;
*.bz2) EXT=bz2;;
*.gz) EXT=gz;;
*.tgz) EXT=tgz;;
*.tpz) EXT=tpz;;
*.z) EXT=z;;
esac
case "$EXT" in
bz2|Z|gz|z) D=`basename %f ."$EXT"`;;
tgz|tpz) D=`basename %f ."$EXT"`.tar;;
esac
if [ "$EXT" = "bz2" ]; then
bunzip2 -v %f
gzip -f9 -v "$D"
else
gunzip -v %f
bzip2 -v "$D"
fi
+ t t
C Convert gz<->bz2, tar.gz<->tar.bz2 & tgz->tar.bz2
for i in %t ; do
unset D
unset EXT
case "$i" in
*.Z) EXT=Z;;
*.bz2) EXT=bz2;;
*.gz) EXT=gz;;
*.tgz) EXT=tgz;;
*.tpz) EXT=tpz;;
*.z) EXT=z;;
esac
case "$EXT" in
bz2|Z|gz|z) D=`basename "$i" ."$EXT"`;;
tgz|tpz) D=`basename "$i" ."$EXT"`.tar;;
esac
if [ "$EXT" = "bz2" ]; then
bunzip2 -v "$i"
gzip -f9 -v "$D"
else
gunzip -v "$i"
bzip2 -v "$D"
fi
done
+ x /usr/bin/open | x /usr/local/bin/open & x /bin/sh
o Open next a free console
open -s -- sh
+ x /usr/bin/open | x /usr/local/bin/open & x /bin/sh
O Odoo Refresh
sh /root/refresh_odoo.sh
+ x /usr/bin/open | x /usr/local/bin/open & x /bin/sh
G git push
git push -u origin main
+11 -4
View File
@@ -27,8 +27,9 @@
<group name="basethings">
<field name="feldname" string="Feldname"/>
<field name="project" string="Projekt"/>
<field name="auto_feldname" string="Projekt_Feld" readonly="1"/>
<field name="contract" string="Vertrag"/>
<div colspan="2" style="font-color:#E00000;"><p>Die Struktur kann erst nach Speichern der Grunddaten eingerichtet werden !</p></div>
<div colspan="2" style="font-color:#E00000;"><p>Die Struktur kann erst nach Speichern der Grunddaten eingerichtet werden !</p></div>
<field name="mediastructure" attrs="{'invisible': [('issaved','!=',True)]}" />
<field name="color_used" widget="color"/>
<field name="color_unused" widget="color"/>
@@ -36,6 +37,7 @@
</group>
<notebook>
<page name="informations" string="Aufbau">
<group>
<field name="mediastructure"/>
<field name="mediastructure_medias">
<tree string="Struktur" editable="False" create="False">
@@ -44,11 +46,16 @@
<field name="description"/>
</tree>
</field>
</group>
</page>
<page name="informations" string="Aufbau">
<field name="issaved" string="gespeichert"/>
<field name="date_create" string="Erstellt am"/>
<field name="user_create" string="Erstellt am"/>
<group>
<field name="issaved" string="gespeichert"/>
<field name="date_create" string="Erstellt am"/>
<field name="user_create" string="Erstellt am"/>
<field name="auto_feldname"/>
<field name="display"/>
</group>
</page>
</notebook>
</sheet>
+71 -12
View File
@@ -23,8 +23,28 @@
</field>
</record>
<record id="dss_project_contracts_tree" model="ir.ui.view">
<field name="name">dss_project_contracts_tree</field>
<field name="model">dss.contracts</field>
<field name="priority" eval="17"/>
<field name="arch" type="xml">
<tree string="Vertragsuebersicht" editable="bottom" multi_edit="1" edit="1" default_order="contract_id">
<field name="contract_auto_name"/>
<field name="contract_auto_id"/>
<field name="client_id"/>
<field name="contract_name"/>
<field name="contract_state"/>
<field name="project"/>
<field name="project_id"/>
<field name="client_short_vorname"/>
<field name="client_short_name"/>
<field name="werbe_feld_selected"/>
</tree>
</field>
</record>
<record id="action_dss_project_new_contract_kanban" model="ir.actions.act_window">
<field name="name">DigitalSignage Projekt Vertraeg</field>
<field name="name">DigitalSignage Projekt Vertraege</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.contracts</field>
<field name="view_mode">form</field>
@@ -84,7 +104,8 @@
<field name="context">{"default_allow_billable": 1}</field>
</record>
<record id="action_dss_main_contracts" model="ir.actions.act_window">
<record id="action_dss_main_contracts" model="ir.actions.act_window">
<field name="name">DigitalSignage Alle Vertraege</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.contracts</field>
@@ -104,14 +125,14 @@
<record id="dss_main_contracts_tree" model="ir.ui.view">
<field name="name">dss_contracts_tree</field>
<field name="model">dss.contracts</field>
<field eval="1" name="priority"/>
<field name="priority" eval="17"/>
<field name="arch" type="xml">
<tree string="Vertragsuebersicht" editable="bottom" multi_edit="1" edit="1" default_order="contract_id">
<field name="contract_state"/>
<field name="contract_id"/>
<tree string="Vertragsuebersicht">
<field name="contract_state"/>
<field name="contract_id"/>
<field name="contract_name"/>
<field name="project"/>
</tree>
</tree>
</field>
</record>
@@ -293,8 +314,8 @@
<field name="client_short_website"/>
</group>
</div>
<div class="col-2">
<button string="Kunde anlegen" name="pyaction_dss_contract_make_partner" type="object" class="btn-primary o_open_tasks" data-hotkey="m"/>
<button string="Kunde anlegen" name="pyaction_dss_contract_make_partner" type="object" class="btn-primary o_open_tasks" data-hotkey="m"/>
<div class="col-2">
</div>
</div>
<hr></hr>
@@ -320,14 +341,14 @@
</page>
<page name="contractsettings" string="Vertragsdaten">
<div class="row">
<div class="col-4">
<group>
<div class="col-4">
<group>
<field name="contract_date" string="Vertragsdatum"/>
</group>
</div>
<div class="col-4">
<group>
<field name="start_date" string="Ausstahlungsdatum"/>
<field name="start_date"/>
</group>
</div>
</div>
@@ -354,6 +375,14 @@
</group>
</div>
</div>
<div class="row" >
<div class="col-8">
<group>
<field name="runtime_finish" string="Laufzeit Ende"/>
<button icon="DigitalSignage/static/src/img/dsscalc.png" name="pyaction_dss_contract_make_partner" type="object" class="dss-smallbutton" data-hotkey="c"/>
</group>
</div>
</div>
<hr>></hr>
<div class="row" >
<div class="col-8">
@@ -407,6 +436,7 @@
<field name="contract_id" string="Kunden/Vert.nummer" readonly="1"/>
<field name="id" string="Vertrags Interne Id" readonly="1"/>
<field name="ads_last_state" string="letzter Vorgang" readonly="1"/>
<field name="contract_auto_name" string="Autoname"/>
<field name="projectIid" string="Project IId" readonly="1"/>
<field name="uuid" string="Datensatz UUID"/>
<field name="project_ad_structure" string="Project Aufbau" readonly="1"/>
@@ -510,4 +540,33 @@
</field>
</record>
<record id="action_set_standard_values" model="ir.actions.server">
<field name="name">Standard Vertragsdaten setzen</field>
<field name="model_id" ref="model_dss_contracts"/>
<field name="binding_model_id" ref="model_dss_contracts"/>
<field name="binding_view_types">form</field>
<field name="state">code</field>
<field name="code">
action = records.setStandardValues()
</field>
</record>
<record id="action_set_standard_values" model="ir.actions.server">
<field name="name">1. Standard Vertragsdaten setzen (ID, NAME usw.)</field>
<field name="model_id" ref="model_dss_contracts"/>
<field name="binding_model_id" ref="model_dss_contracts"/>
<field name="binding_view_types">tree</field>
<field name="state">code</field>
<field name="code">action = records.setTreeStandardValues()</field>
</record>
<record id="action_set_firstkampagne" model="ir.actions.server">
<field name="name">2. Erstkampagnen erzeugen</field>
<field name="model_id" ref="model_dss_contracts"/>
<field name="binding_model_id" ref="model_dss_contracts"/>
<field name="binding_view_types">tree</field>
<field name="state">code</field>
<field name="code">action = records.setFirstKampagne()</field>
</record>
</odoo>
+68
View File
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="dss_eventdays_view_tree" model="ir.ui.view">
<field name="name">dss_eventdays_tree</field>
<field name="model">dss.eventdays</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<tree string="Spieltage">
<field name="eventname"/>
<field name="eventstartdate"/>
<field name="eventenddate"/>
<field name="description"/>
<field name="color" widget="color"/>
</tree>
</field>
</record>
<record id="dss_eventdays_view_form" model="ir.ui.view">
<field name="name">dss_eventdays_form</field>
<field name="model">dss.eventdays</field>
<field name="arch" type="xml">
<form>
<header>
<button name="pydocalendarEntry" string="Event in Kalender " type="object" class="oe_hightlight"/>
</header>
<sheet>
<group>
<field name="eventname" string="Name des Events"/>
<field name="eventstartdate" string="Start des Events"/>
<field name="eventenddate" string="Ende des Events"/>
<field name="description" string="Beschreibung"/>
<field name="color" widget="color"/>
<field name="username" string="Benutzer in dessen Kalender Event einzutragen ist"/>
</group>
<notebook>
<page name="informations" string="Informationen">
<group>
<field name="uuid" string="Datensatz UUID"/>
<field name="calendarevent" string="Kalendereintrag"/>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" options="{'post_refresh':True}" help="Follow this project to automatically track the events associated to tasks and issues of this project." groups="base.group_user"/>
<field name="activity_ids"/>
<field name="message_ids"/>
</div>
</form>
</field>
</record>
<record id="action_dss_eventdays_view" model="ir.actions.act_window">
<field name="name">DigitalSignage EventSpieltage</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.eventdays</field>
<field name="view_mode">tree,form</field>
<field name="context">{}</field>
<field name="help" type="html">
<p class="'o_view_nocontent_smiling_face">
Neuen Spieltag erstellen
</p>
</field>
</record>
</odoo>
+23 -1
View File
@@ -6,6 +6,12 @@
<field name="model">dss.geraetetypen</field>
<field name="arch" type="xml">
<form>
<header>
<button name="pyaction_tuya_readout" string="Tuya auslesen" type="object" class="oe_highlight"
attrs="{'invisible': [('has_tuya','!=',True)]}" data-hotkey="t"/>
<button name="pyaction_tuya_switch" string="Tuya Schalten" type="object" class="oe_highlight"
attrs="{'invisible': ['|',('has_tuya','!=',True),('tuya_can_switch','!=',True)]}" data-hotkey="t"/>
</header>
<sheet>
<group>
<group name="basesettings" >
@@ -16,9 +22,25 @@
<field name="grundsystem_kennung" invisible="1"/>
<field name="led_geraetetyp" string="Gerätetyp" attrs="{'invisible': [('geraetetyp','!=','STE')]}"/>
</group>
<group name="settings" >
<field name="has_tuya" string="Gerät hat Tuya Anbindung" widget="boolean_toggle"/>
</group>
</group>
<notebook>
<page name="osssetings" string="LCDSystem Daten" attrs="{'invisible': ['|',('geraetetyp','!=','TOP'),('grundsystem_kennung','!=','LCD')]}" >
<page name="tuyasettings" string="Tuya Daten" attrs="{'invisible': [('has_tuya','!=',True)]}" >
<div class="col-4">
<group name="tuyadetailsettings">
<field name="tuya_Geraete_uid"/>
<field name="tuya_Geraete_id"/>
<field name="tuya_can_switch" widget="boolean_toggle"/>
<field name="tuya_has_powervalue" widget="boolean_toggle"/>
<field name="tuya_last_totalpower" attrs="{'invisible': [('tuya_has_powervalue','!=',True)]}"/>
<field name="tuya_last_lastpower" attrs="{'invisible': [('tuya_has_powervalue','!=',True)]}"/>
<field name="tuya_last_switchstate" attrs="{'invisible': [('tuya_can_switch','!=',True)]}"/>
</group>
</div>
</page>
<page name="osssettings" string="LCDSystem Daten" attrs="{'invisible': ['|',('geraetetyp','!=','TOP'),('grundsystem_kennung','!=','LCD')]}" >
<group name="lcdsettings">
<field name="lcd_size"/>
<field name="lcd_size_sonstige" attrs="{'invisible': [('lcd_size','!=','00')]}"/>
+95 -25
View File
@@ -1,6 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="dss_main_view_search" model="ir.ui.view">
<field name="name">dss_projects_form</field>
<field name="model">dss.projects</field>
<field name="arch" type="xml">
<search string="Projects">
<filter string="Aktuelle Projekte Alle (Kein Archiv)" name="actual_projects" domain="[('aktstatus_typ','!=','ARCHIV')]"/>
<filter string="Aktuelle Projekte Neu" name="actual_Newprojects" domain="[('aktstatus_typ','=','NEU')]"/>
<filter string="Aktuelle Projekte Laufend" name="actual_runprojects" domain="[('aktstatus_typ','=','WORK')]"/>
<filter string="Aktuelle Projekte Problematisch" name="actual_Errorprojects" domain="[('aktstatus_typ','=','ERROR')]"/>
<filter string="Archivierte Projekte" name="archived_projects" domain="[('aktstatus_typ','=','ARCHIV')]"/>
<filter string="Inaktive Projekte" name="inactive_projects" domain="[('active','=',False)]"/>
<group expand="0" string="Systeme">
<filter string="Nach Systemtyp" name="grundsystemname" context="{'group_by' : 'grundsystemname'}"/>
<filter string="Nach Projektstatus" name="aktstatus" context="{'group_by' : 'aktstatus'}"/>
</group>
</search>
</field>
</record>
<record id="dss_main_view_form" model="ir.ui.view">
<field name="name">dss_projects_form</field>
<field name="model">dss.projects</field>
@@ -8,32 +28,78 @@
<form>
<sheet>
<group>
<field name="invisible" widget="boolean_toggle"/>
<field name="active" widget="boolean_toggle"/>
<field name="aktstatus"/>
<field name="projektname"/>
<field name="projectid"/>
<field name="name"/>
<field name="active"/>
<field name="standort_inout"/>
<field name="standort_inout"/>
<field name="grundsystemname" string="Kategorie"/>
<field name="errichtet_am"/>
<field name="aktstatus_color" widget="color"/>
<field name="errichtet_am"/>
<field name="aktstatus_color" widget="color"/>
<field name="cloudlink"/>
</group>
<notebook>
<page name="partnersettings" string="Partner/Adressen">
<group>
<field name="vertragsschreiber"/>
<field name="standortpartner"/>
<field name="vertriebspartner"/>
</group>
</page>
<page name="basesettings" string="Details (Zeiten,Standort)">
<group>
<field name="standort"/>
<field name="zeiten_on"/>
<field name="zeiten_off"/>
<field name="vertragsschreiber"/>
<field name="standortpartner"/>
<field name="vertriebspartner"/>
</group>
</page>
<page name="partnersettings" string="Adressen/Standort">
<group string="Geolocation">
<label class="o_form_label" string="Genaue Adresse" for="standort"/>
<div class="col6">
<field name="standort" invisible="1"/>
<group>
<field name="standort_strasse"/>
<field name="standort_plz"/>
<field name="standort_ort"/>
<field name="standort_bundesland"/>
<field name="standort_land"/>
</group>
</div>
<label class="o_form_label" string="Geo Location" for="standort"/>
<div class="col6">
<field name="standort" invisible="1"/>
<group>
<label string="Standort in Karte anzeigen ?" for="standort_visible"/>
<div class="col6">
<field name="standort_visible" widget="boolean_toggle"/>
<span>Lat : <field name="standort_lati" nolabel="1" class="oe_inline"/></span>
<br/>
<span>Long: <field name="standort_long" nolabel="1" class="oe_inline"/></span>
<br/>
</div>
</group>
<button attrs="{'invisible': ['|', ('standort_lati', '!=', 0), ('standort_lati', '!=', 0)]}" icon="fa-gear" string="Compute based on address" title="Compute Localization" name="dss_geo_localize" type="object" class="btn btn-link p-0"/>
<button attrs="{'invisible': [('standort_long', '=', 0), ('standort_long', '=', 0)]}" icon="fa-refresh" string="Refresh" title="Refresh Localization" name="dss_geo_localize" type="object" class="btn btn-link p-0"/>
</div>
</group>
</page>
<page name="basesettings" string="Details (Zeiten,Standort)">
<div class="row">
<div class="col10">
<group>
<field name="standort"/>
</group>
</div>
</div>
<div class="row">
<div class="col4">
<group>
<field name="zeitenf_on" widget="float_time"/>
</group>
</div>
<div class="col2">
<group>
<field name="zeitenf_off" widget="float_time"/>
</group>
</div>
</div>
</page>
<page name="geraetesettings" string="Systeme">
<group>
<field name="systemname" string="Abspiel/Controlsystem"/>
@@ -60,7 +126,7 @@
<field name="model">dss.projects</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<kanban class="o_kanban_mobile" action="pyaction_view_contracts" type="object">
<kanban class="o_kanban_mobile" action="pyaction_view_contracts" type="object" default_group_by="grundsystemname">
<field name="projektname"/>
<field name="aktstatus_color"/>
<templates>
@@ -100,7 +166,8 @@
<span class="fa fa-ellipsis-h"/>
</a>
<div class="dropdown-menu" role="menu">
<a t-if="widget.editable" role="menuitem" type="set_cover" class="dropdown-item" data-field="displayed_image_id">Cloud Ordner öffnen</a>
<a name="switch_invisible" role="menuitem" type="action" class="dropdown-item">Sichtbarkeit</a>
<div role="separator" class="dropdown-divider"></div>
<a name="%(portal.portal_share_action)d" role="menuitem" type="action" class="dropdown-item">Projekt teilen</a>
<a t-if="widget.editable" role="menuitem" type="edit" class="dropdown-item">Bearbeiten</a>
<div role="separator" class="dropdown-divider"></div>
@@ -124,7 +191,7 @@
</div>
</t>
</templates>
</kanban>
</kanban>
</field>
</record>
@@ -140,13 +207,15 @@
<field name="name"/>
<field name="aktstatus"/>
<field name="grundsystemname"/>
</tree>
<search>
<filter string="Archivierte Projekte" name="archived" domain="[('aktstatus_typ','=','ARCHIV')]"/>
<group expand="0" string="Gruppierung">
<filter string="Nach Systemtyp" name="systemtyp" context="{'group_by' : 'grundsystemname'}"/>
</group>
</search>
<field name="active" widget="boolean_toggle"/>
<field name="invisible" widget="boolean_toggle"/>
</tree>
<search>
<filter string="Archivierte Projekte" name="archived" domain="[('aktstatus_typ','=','ARCHIV')]"/>
<group expand="0" string="Gruppierung">
<filter string="Nach Systemtyp" name="systemtyp" context="{'group_by' : 'grundsystemname'}"/>
</group>
</search>
</field>
</record>
@@ -155,7 +224,8 @@
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.projects</field>
<field name="view_mode">kanban,form,tree</field>
<field name="context">{}</field>
<field name="domain"></field>
<field name="context">{'search_default_actual_projects': 1}</field>
<field name="help" type="html">
<p class="'o_view_nocontent_smiling_face">
Fuege ein System ein !
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="dss_screenDesigner_action_dss_screenDesigner" model="ir.actions.client">
<field name="name">Attendance</field>
<field name="tag">dss_screenDesigner_js_action</field>
</record>
</odoo>
+7
View File
@@ -39,6 +39,13 @@
<field name="def_ad_cloudpath_sample"/>
</group>
</div>
<div class="row">
<group>
<field name="tuya_access_id"/>
<field name="tuya_access_key"/>
<field name="tuya_endpoint"/>
</group>
</div>
</sheet>
</form>
</field>
+82
View File
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="dss_triggeractions_form" model="ir.ui.view">
<field name="name">dss_triggeractions_form</field>
<field name="model">dss.triggeractions</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<field name="triggeractionname"/>
</group>
<group>
<field name="triggeractiontyp"/>
</group>
<notebook>
<page name="E-Mail" string="Email Daten" attrs="{'invisible': [('triggeractiontyp','!=','EMAIL')]}" >
<group>
<field name="email_getfrom"/>
<field name='email_template'/>
<field name='email_fix_email_sender'/>
<field name='email_fix_email' attrs="{'invisible': [('email_getfrom','!=','FIX')]}" />
<field name='email_data_table' attrs="{'invisible': [('email_getfrom','!=','DATA')]}" />
<field name='email_data_field' attrs="{'invisible': [('email_getfrom','!=','DATA')]}" />
</group>
</page>
<page name="Aufgabe" string="Aufgaben erzeugen" attrs="{'invisible': [('triggeractiontyp','!=','ACTIV')]}" >
<group>
</group>
</page>
<page name="Daten" string="Datensatz ändern" attrs="{'invisible': [('triggeractiontyp','!=','DSEDIT')]}" >
<group>
</group>
</page>
<page name="Tuya" string="Tuya Aktion" attrs="{'invisible': [('triggeractiontyp','!=','TUYA')]}" >
<group>
</group>
</page>
<page name="informations" string="Informationen">
<group>
<field name="uuid" string="Datensatz UUID" readonly="1"/>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" options="{'post_refresh':True}" help="Follow this project to automatically track the events associated to tasks and issues of this project." groups="base.group_user"/>
<field name="activity_ids"/>
<field name="message_ids"/>
</div>
</form>
</field>
</record>
<record id="dss_triggeractions_tree" model="ir.ui.view">
<field name="name">dss_triggeractions_tree</field>
<field name="model">dss.triggeractions</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<tree string="Trigger Aktionen">
<field name="triggeractionname"/>
<field name="triggeractiontyp"/>
<field name="email_getfrom"/>
</tree>
</field>
</record>
<record id="action_dss_triggeractions_view" model="ir.actions.act_window">
<field name="name">DigitalSignage Trigger Aktionen</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.triggeractions</field>
<field name="view_mode">tree,form</field>
<field name="context">{}</field>
<field name="help" type="html">
<p class="'o_view_nocontent_smiling_face">
Neuen Standardtext erstellen
</p>
</field>
</record>
</odoo>
+72
View File
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="dss_trigger_form" model="ir.ui.view">
<field name="name">dss_trigger_form</field>
<field name="model">dss.triggertypes</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<field name="triggername"/>
</group>
<group>
<field name="triggertyp"/>
</group>
<notebook>
<page name="Ausloeser" string="Auslösende Aktion - Feld" attrs="{'invisible': [('triggertyp','!=','FIELD_A'),('triggertyp','!=','FIELD_S'),('triggertyp','!=','FIELD_K')]}" >
<group>
<field name='trigger_table'/>
<field name='trigger_field'/>
<field name='trigger_operator' attrs="{'invisible': [('triggertyp','!=','FIELD_S'),('triggertyp','!=','FIELD_K')]}"/>
<field name='trigger_value' attrs="{'invisible': [('triggertyp','!=','FIELD_S'),('triggertyp','!=','FIELD_K')]}"/>
</group>
</page>
<page name="Aktionen" string="Aktionen">
<group>
<field name="trigger_Aktionen" string="Aktionen"/>
</group>
</page>
<page name="informations" string="Informationen">
<group>
<field name="uuid" string="Datensatz UUID" readonly="1"/>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" options="{'post_refresh':True}" help="Follow this project to automatically track the events associated to tasks and issues of this project." groups="base.group_user"/>
<field name="activity_ids"/>
<field name="message_ids"/>
</div>
</form>
</field>
</record>
<record id="dss_trigger_tree" model="ir.ui.view">
<field name="name">dss_trigger_tree</field>
<field name="model">dss.triggertypes</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<tree string="Trigger Aktionen">
<field name="triggername"/>
<field name="triggertyp"/>
</tree>
</field>
</record>
<record id="action_dss_trigger_view" model="ir.actions.act_window">
<field name="name">DigitalSignage Trigger</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.triggertypes</field>
<field name="view_mode">tree,form</field>
<field name="context">{}</field>
<field name="help" type="html">
<p class="'o_view_nocontent_smiling_face">
Neuen Standardtext erstellen
</p>
</field>
</record>
</odoo>
-52
View File
@@ -194,45 +194,6 @@
</record>
<record id="dss_eventdays_view_tree" model="ir.ui.view">
<field name="name">dss_eventdays_tree</field>
<field name="model">dss.eventdays</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<tree string="Spieltage">
<field name="eventname"/>
<field name="eventdate"/>
<field name="description"/>
<field name="color" widget="color"/>
</tree>
</field>
</record>
<record id="dss_eventdays_view_form" model="ir.ui.view">
<field name="name">dss_eventdays_form</field>
<field name="model">dss.eventdays</field>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<group name="basethings">
<field name="eventname" string="Name des Events"/>
<field name="eventdate" string="Datum des Events"/>
<field name="description" string="Beschreibung"/>
<field name="color" widget="color"/>
</group>
</group>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" options="{'post_refresh':True}" help="Follow this project to automatically track the events associated to tasks and issues of this project." groups="base.group_user"/>
<field name="activity_ids"/>
<field name="message_ids"/>
</div>
</form>
</field>
</record>
<record id="dss_paysystem_fields_view_tree" model="ir.ui.view">
<field name="name">dss_paysystem_fields_tree</field>
<field name="model">dss.paysystem_fields</field>
@@ -396,19 +357,6 @@
</field>
</record>
<record id="action_dss_eventdays_view" model="ir.actions.act_window">
<field name="name">DigitalSignage EventSpieltage</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">dss.eventdays</field>
<field name="view_mode">tree,form</field>
<field name="context">{}</field>
<field name="help" type="html">
<p class="'o_view_nocontent_smiling_face">
Neuen Spieltag erstellen
</p>
</field>
</record>
<record id="action_dss_paysystem_fields_view" model="ir.actions.act_window">
<field name="name">DigitalSignage Zahlungsfelder</field>
<field name="type">ir.actions.act_window</field>
+24 -1
View File
@@ -203,7 +203,23 @@
<menuitem id="menu_dss_email_templates"
parent="menu_dss_configurationen_system"
action="action_dss_email_template_tree_all"
sequence="130"/>
sequence="140"/>
<menuitem
id="menu_dss_trg_internsetup"
name="Trigger/Aktionen"
parent="menu_dss_internsetup"
sequence="50"/>
<menuitem id="menu_dss_triggeractions_setup"
parent="menu_dss_trg_internsetup"
action="action_dss_triggeractions_view"
sequence="51"/>
<menuitem id="menu_dss_trigger_setup"
parent="menu_dss_trg_internsetup"
action="action_dss_trigger_view"
sequence="52"/>
<menuitem
id="menu_dss_openprojectimport"
@@ -212,5 +228,12 @@
action="action_dss_import_view"
sequence="10"/>
<menuitem
id="menu_dss_dcreendesign"
name="Screendesigner Tool"
parent="menu_dss_interntools"
action="dss_screenDesigner_action_dss_screenDesigner"
sequence="20"/>
</odoo>