Magellan Linux

Diff of /mcore-src/trunk/mcore-tools/src/modules/fluxbox/fluxbox.control.class.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2567 by niro, Thu Sep 17 10:09:41 2015 UTC revision 2762 by niro, Tue Feb 2 14:58:04 2016 UTC
# Line 1  Line 1 
1  # $Id$  # $Id$
2    
3  push_config fluxbox_menuitem  push_firstboot 80_fluxbox_menuitem
4    
5    push_config 80_fluxbox_menuitem
6    push_config 80_fluxbox_autostart
7    
8  help_fluxbox_menuitem()  help_fluxbox_menuitem()
9  {  {
# Line 46  set_fluxbox_menuitem() Line 49  set_fluxbox_menuitem()
49  control_fluxbox_menuitem()  control_fluxbox_menuitem()
50  {  {
51   local serial="${CLASS_ARGV[0]}"   local serial="${CLASS_ARGV[0]}"
52   push_config_fluxbox_menuitem "${serial}"   push_config_80_fluxbox_menuitem "${serial}"
53  }  }
54    
55  push_config_fluxbox_menuitem()  push_config_80_fluxbox_menuitem()
56  {  {
57   local serial="$1"   local serial="$1"
58   local values   local values
# Line 84  push_config_fluxbox_menuitem() Line 87  push_config_fluxbox_menuitem()
87   done   done
88  }  }
89    
90    help_fluxbox_autostart()
91    {
92     local serial="${CLASS_ARGV[0]}"
93     control_client "${serial}" help fluxbox.autostart
94    }
95    
96    set_fluxbox_autostart()
97    {
98     local serial="${CLASS_ARGV[0]}"
99     local action="${CLASS_ARGV[1]}"
100     local name="${CLASS_ARGV[2]}"
101     local exec="${CLASS_ARGV[3]}"
102     local id
103     local enabled
104    
105     case "${action}" in
106     add) enabled=1 ;;
107     del) enabled=0 ;;
108     *)
109     eecho "Unknown action '${action}'"
110     return 1
111     ;;
112     esac
113    
114     if [[ -z ${name} ]]
115     then
116     eecho "No name given"
117     return 1
118     fi
119    
120     id=$(mysqldo "select id from cfg_autostart where serial='${serial}' and name='${name}';")
121     if [[ -n ${id} ]]
122     then
123     mysqldo "update cfg_autostart set name='${name}', exec='${exec}', enabled='${enabled}' where id=${id};"
124     else
125     mysqldo "insert into cfg_autostart(serial,name,exec,enabled) values('${serial}','${name}','${exec}','${enabled}');"
126     fi
127    }
128    
129    control_fluxbox_autostart()
130    {
131     local serial="${CLASS_ARGV[0]}"
132     push_config_80_fluxbox_autostart "${serial}"
133    }
134    
135    push_config_80_fluxbox_autostart()
136    {
137     local serial="$1"
138     local values
139     local id
140    
141     values=$(mysqldo "select id from cfg_autostart where serial='${serial}';")
142     for id in ${values}
143     do
144     evaluate_table_xml cfg_autostart "where serial='${serial}'"
145     if [[ -z ${cfg_autostart_name} ]]
146     then
147     eecho "Name must not be empty id->'${id}'"
148     continue
149     fi
150     if [[ -z ${cfg_autostart_enabled} ]]
151     then
152     eecho "Enabled must not be empty id->'${id}'"
153     continue
154     fi
155     if [[ ${cfg_autostart_enabled} = 1 ]]
156     then
157     control_client "${serial}" set fluxbox.autostart add "${cfg_autostart_name}" "${cfg_autostart_exec}"
158     elif [[ ${cfg_autostart_enabled} = 0 ]]
159     then
160     control_client "${serial}" set fluxbox.autostart del "${cfg_autostart_name}"
161     # remove from database too
162     mysqldo "delete from cfg_autostart where id='${id}';"
163     else
164     eecho "unknown enabled value id->'${id}', cfg_autostart_enabled -> '${cfg_autostart_enabled}'"
165     return 1
166     fi
167     done
168    }
169    
170  help_fluxbox_theme()  help_fluxbox_theme()
171  {  {
172   local serial="${CLASS_ARGV[0]}"   local serial="${CLASS_ARGV[0]}"
# Line 104  control_fluxbox_theme() Line 187  control_fluxbox_theme()
187   push_config_fluxbox_theme "${serial}"   push_config_fluxbox_theme "${serial}"
188  }  }
189    
190  push_config_fluxbox_theme()  push_config_80_fluxbox_theme()
191  {  {
192   local serial="$1"   local serial="$1"
193   local value   local value
# Line 117  push_config_fluxbox_theme() Line 200  push_config_fluxbox_theme()
200   control_client "${serial}" set fluxbox.theme "${value}"   control_client "${serial}" set fluxbox.theme "${value}"
201   fi   fi
202  }  }
203    
204    push_firstboot_80_fluxbox_menuitem()
205    {
206     local serial="$1"
207     local ids
208    
209     ids=$(mysqldo "select id from cfg_fluxbox_menuitem where serial='${serial}';")
210     if [[ -z ${ids} ]] || [[ ${ids} = NULL ]]
211     then
212     # create a empty menu, just delete all entries
213     control_client "${serial}" set fluxbox.menuitem del
214     fi
215    }

Legend:
Removed from v.2567  
changed lines
  Added in v.2762