44 * Api Main class
55 * Calls / Executes native vesta methods
66 *
7- * @author Malishev Dima <dima.malishev@gmail.com>
8- * @author Naumov-Socolov <naumov.socolov@gmail.com>
97 * @author vesta, http://vestacp.com/
8+ * @author Dmitry Malishev <dima.malishev@gmail.com>
9+ * @author Dmitry Naumov-Socolov <naumov.socolov@gmail.com>
1010 * @copyright vesta 2010-2011
1111 */
1212class Vesta
1313{
1414 // IP
15- const V_LIST_SYS_IPS = 'v_list_sys_ips ' ;
16- const V_ADD_SYS_IP = 'v_add_sys_ip ' ;
17- const V_ADD_SYS_USER_IP = 'v_add_sys_user_ip ' ;
18- const V_CHANGE_SYS_IP_OWNER = 'v_change_sys_ip_owner ' ;
19- const V_CHANGE_SYS_IP_NAME = 'v_change_sys_ip_name ' ;
20- const V_CHANGE_SYS_IP_STATUS = 'v_change_sys_ip_status ' ;
21- const V_DEL_SYS_IP = 'v_del_sys_ip ' ;
22- const V_UPD_SYS_IP = 'v_upd_sys_ip ' ;
23- const V_LIST_SYS_INTERFACES = 'v_list_sys_interfaces ' ;
15+ const V_LIST_SYS_IPS = 'v_list_sys_ips ' ;
16+ const V_ADD_SYS_IP = 'v_add_sys_ip ' ;
17+ const V_ADD_SYS_USER_IP = 'v_add_sys_user_ip ' ;
18+ const V_CHANGE_SYS_IP_OWNER = 'v_change_sys_ip_owner ' ;
19+ const V_CHANGE_SYS_IP_NAME = 'v_change_sys_ip_name ' ;
20+ const V_CHANGE_SYS_IP_STATUS = 'v_change_sys_ip_status ' ;
21+ const V_DEL_SYS_IP = 'v_del_sys_ip ' ;
22+ const V_UPD_SYS_IP = 'v_upd_sys_ip ' ;
23+ const V_LIST_SYS_INTERFACES = 'v_list_sys_interfaces ' ;
2424 // DNS
25- const V_LIST_DNS_DOMAINS = 'v_list_dns_domains ' ;
26- const V_LIST_DNS_DOMAIN_RECORDS = 'v_list_dns_domain ' ;
27- const V_ADD_DNS_DOMAIN = 'v_add_dns_domain ' ;
28- const V_ADD_DNS_DOMAIN_RECORD = 'v_add_dns_domain_record ' ;
29- const V_CHANGE_DNS_DOMAIN_IP = 'v_change_dns_domain_ip ' ;
30- const V_CHANGE_DNS_DOMAIN_SOA = 'v_change_dns_domain_soa ' ;
31- const V_CHANGE_DNS_DOMAIN_TPL = 'v_change_dns_domain_tpl ' ;
32- const V_CHANGE_DNS_DOMAIN_TTL = 'v_change_dns_domain_ttl ' ;
33- const V_CHANGE_DNS_DOMAIN_EXP = 'v_change_dns_domain_exp ' ;
34- const V_CHANGE_DNS_DOMAIN_RECORD = 'v_change_dns_domain_record ' ;
35- const V_DEL_DNS_DOMAIN = 'v_del_dns_domain ' ;
36- const V_DEL_DNS_DOMAIN_RECORD = 'v_del_dns_domain_record ' ;
25+ const V_LIST_DNS_DOMAINS = 'v_list_dns_domains ' ;
26+ const V_LIST_DNS_DOMAIN_RECORDS = 'v_list_dns_domain ' ;
27+ const V_ADD_DNS_DOMAIN = 'v_add_dns_domain ' ;
28+ const V_ADD_DNS_DOMAIN_RECORD = 'v_add_dns_domain_record ' ;
29+ const V_CHANGE_DNS_DOMAIN_IP = 'v_change_dns_domain_ip ' ;
30+ const V_CHANGE_DNS_DOMAIN_SOA = 'v_change_dns_domain_soa ' ;
31+ const V_CHANGE_DNS_DOMAIN_TPL = 'v_change_dns_domain_tpl ' ;
32+ const V_CHANGE_DNS_DOMAIN_TTL = 'v_change_dns_domain_ttl ' ;
33+ const V_CHANGE_DNS_DOMAIN_EXP = 'v_change_dns_domain_exp ' ;
34+ const V_CHANGE_DNS_DOMAIN_RECORD = 'v_change_dns_domain_record ' ;
35+ const V_DEL_DNS_DOMAIN = 'v_del_dns_domain ' ;
36+ const V_DEL_DNS_DOMAIN_RECORD = 'v_del_dns_domain_record ' ;
3737 // CRON
38- const V_LIST_CRON_JOBS = 'v_list_sys_cron ' ;
39- const V_ADD_CRON_JOB = 'v_add_sys_cron ' ;
40- const V_ADD_SYS_USER_REPORTS = 'v_add_sys_user_reports ' ;
41- const V_CHANGE_CRON_JOB = 'v_change_sys_cron_job ' ;
42- const V_SUSPEND_CRON_JOB = 'v_suspend_sys_cron_job ' ;
43- const V_SUSPEND_CRON_JOBS = 'v_suspend_sys_cron_jobs ' ;
44- const V_UNSUSPEND_CRON_JOB = 'v_unsuspend_sys_cron_job ' ;
45- const V_UNSUSPEND_CRON_JOBS = 'v_unsuspend_sys_cron_jobs ' ;
46- const V_DEL_CRON_JOB = 'v_del_sys_cron ' ;
47- const V_DEL_SYS_USER_REPORTS = 'v_del_sys_user_reports ' ;
38+ const V_LIST_CRON_JOBS = 'v_list_sys_cron ' ;
39+ const V_ADD_CRON_JOB = 'v_add_sys_cron ' ;
40+ const V_ADD_SYS_USER_REPORTS = 'v_add_sys_user_reports ' ;
41+ const V_CHANGE_CRON_JOB = 'v_change_sys_cron_job ' ;
42+ const V_SUSPEND_CRON_JOB = 'v_suspend_sys_cron_job ' ;
43+ const V_SUSPEND_CRON_JOBS = 'v_suspend_sys_cron_jobs ' ;
44+ const V_UNSUSPEND_CRON_JOB = 'v_unsuspend_sys_cron_job ' ;
45+ const V_UNSUSPEND_CRON_JOBS = 'v_unsuspend_sys_cron_jobs ' ;
46+ const V_DEL_CRON_JOB = 'v_del_sys_cron ' ;
47+ const V_DEL_SYS_USER_REPORTS = 'v_del_sys_user_reports ' ;
4848 // USER
49- const V_LIST_SYS_USERS = 'v_list_sys_users ' ;
50- const V_ADD_SYS_USER = 'v_add_sys_user ' ;
51- const V_CHANGE_SYS_USER_CONTACT = 'v_change_sys_user_contact ' ;
52- const V_CHANGE_SYS_USER_NS = 'v_change_sys_user_ns ' ;
53- const V_CHANGE_SYS_USER_PACKAGE = 'v_change_sys_user_package ' ;
54- const V_CHANGE_SYS_USER_PASSWORD = 'v_change_sys_user_password ' ;
55- const V_CHANGE_SYS_USER_SHELL = 'v_change_sys_user_shell ' ;
56- const V_CHANGE_SYS_USER_ROLE = 'v_change_sys_user_role ' ;
57- const V_DEL_SYS_USER = 'v_del_sys_user ' ;
49+ const V_LIST_SYS_USERS = 'v_list_sys_users ' ;
50+ const V_ADD_SYS_USER = 'v_add_sys_user ' ;
51+ const V_CHANGE_SYS_USER_CONTACT = 'v_change_sys_user_contact ' ;
52+ const V_CHANGE_SYS_USER_NS = 'v_change_sys_user_ns ' ;
53+ const V_CHANGE_SYS_USER_PACKAGE = 'v_change_sys_user_package ' ;
54+ const V_CHANGE_SYS_USER_PASSWORD = 'v_change_sys_user_password ' ;
55+ const V_CHANGE_SYS_USER_SHELL = 'v_change_sys_user_shell ' ;
56+ const V_CHANGE_SYS_USER_ROLE = 'v_change_sys_user_role ' ;
57+ const V_DEL_SYS_USER = 'v_del_sys_user ' ;
5858 // WEB_DOMAIN
59- const V_LIST_WEB_DOMAINS = 'v_list_web_domains ' ;
60- const V_LIST_WEB_DOMAINS_ALIAS = 'v_list_web_domains_alias ' ;
61- const V_LIST_WEB_DOMAINS_ELOG = 'v_list_web_domains_elog ' ;
62- const V_LIST_WEB_DOMAINS_PROXY = 'v_list_web_domains_proxy ' ;
63- const V_LIST_WEB_DOMAINS_SSL = 'v_list_web_domains_ssl ' ;
64- const V_LIST_WEB_DOMAINS_STATS = 'v_list_web_domains_stats ' ;
65- const V_LIST_WEB_TEMPLATES = 'v_list_web_templates ' ;
66- const V_ADD_WEB_DOMAIN = 'v_add_web_domain ' ;
67- const V_ADD_WEB_DOMAIN_ALIAS = 'v_add_web_domain_alias ' ;
68- const V_ADD_WEB_DOMAIN_STAT = 'v_add_web_domain_stat ' ;
69- const V_ADD_WEB_DOMAIN_STAT_AUTH = 'v_add_web_domain_stat_auth ' ;
70- const V_ADD_WEB_DOMAIN_SSL = 'v_add_web_domain_ssl ' ;
71- const V_ADD_WEB_DOMAIN_ELOG = 'v_add_web_domain_elog ' ;
72- const V_ADD_WEB_DOMAIN_CGI = 'v_add_web_domain_cgi ' ;
73- const V_CHANGE_WEB_DOMAIN_IP = 'v_change_web_domain_ip ' ;
74- const V_CHANGE_WEB_DOMAIN_SSLCERT = 'v_change_web_domain_sslcert ' ;
75- const V_CHANGE_WEB_DOMAIN_SSLHOME = 'v_change_web_domain_sslhome ' ;
76- const V_CHANGE_WEB_DOMAIN_TPL = 'v_change_web_domain_tpl ' ;
77- const V_DEL_WEB_DOMAIN_CGI = 'v_del_web_domain_cgi ' ;
78- const V_DEL_WEB_DOMAIN_ELOG = 'v_del_web_domain_elog ' ;
79- const V_DEL_WEB_DOMAIN_SSL = 'v_del_web_domain_ssl ' ;
80- const V_DEL_WEB_DOMAIN_STAT = 'v_del_web_domain_stat ' ;
81- const V_DEL_WEB_DOMAIN_STAT_AUTH = 'v_del_web_domain_stat_auth ' ;
82- const V_DEL_WEB_DOMAIN_ALIAS = 'v_del_web_domain_alias ' ;
83- const V_SUSPEND_WEB_DOMAIN = 'v_suspend_web_domain ' ;
84- const V_SUSPEND_WEB_DOMAINS = 'v_suspend_web_domains ' ;
85- const V_UNSUSPEND_WEB_DOMAIN = 'v_unsuspend_web_domain ' ;
86- const V_UNSUSPEND_WEB_DOMAINS = 'v_unsuspend_web_domains ' ;
87- const V_UPD_WEB_DOMAIN_DISK = 'v_upd_web_domain_disk ' ;
88- const V_UPD_WEB_DOMAINS_DISK = 'v_upd_web_domains_disk ' ;
89- const V_UPD_WEB_DOMAIN_TRAFF = 'v_upd_web_domain_traff ' ;
90- const V_UPD_WEB_DOMAINS_TRAFF = 'v_upd_web_domains_traff ' ;
91- const V_DEL_WEB_DOMAIN = 'v_del_web_domain ' ;
59+ const V_LIST_WEB_DOMAINS = 'v_list_web_domains ' ;
60+ const V_LIST_WEB_DOMAINS_ALIAS = 'v_list_web_domains_alias ' ;
61+ const V_LIST_WEB_DOMAINS_ELOG = 'v_list_web_domains_elog ' ;
62+ const V_LIST_WEB_DOMAINS_PROXY = 'v_list_web_domains_proxy ' ;
63+ const V_LIST_WEB_DOMAINS_SSL = 'v_list_web_domains_ssl ' ;
64+ const V_LIST_WEB_DOMAINS_STATS = 'v_list_web_domains_stats ' ;
65+ const V_LIST_WEB_TEMPLATES = 'v_list_web_templates ' ;
66+ const V_ADD_WEB_DOMAIN = 'v_add_web_domain ' ;
67+ const V_ADD_WEB_DOMAIN_ALIAS = 'v_add_web_domain_alias ' ;
68+ const V_ADD_WEB_DOMAIN_STAT = 'v_add_web_domain_stat ' ;
69+ const V_ADD_WEB_DOMAIN_STAT_AUTH = 'v_add_web_domain_stat_auth ' ;
70+ const V_ADD_WEB_DOMAIN_SSL = 'v_add_web_domain_ssl ' ;
71+ const V_ADD_WEB_DOMAIN_ELOG = 'v_add_web_domain_elog ' ;
72+ const V_ADD_WEB_DOMAIN_CGI = 'v_add_web_domain_cgi ' ;
73+ const V_CHANGE_WEB_DOMAIN_IP = 'v_change_web_domain_ip ' ;
74+ const V_CHANGE_WEB_DOMAIN_SSLCERT = 'v_change_web_domain_sslcert ' ;
75+ const V_CHANGE_WEB_DOMAIN_SSLHOME = 'v_change_web_domain_sslhome ' ;
76+ const V_CHANGE_WEB_DOMAIN_TPL = 'v_change_web_domain_tpl ' ;
77+ const V_DEL_WEB_DOMAIN_CGI = 'v_del_web_domain_cgi ' ;
78+ const V_DEL_WEB_DOMAIN_ELOG = 'v_del_web_domain_elog ' ;
79+ const V_DEL_WEB_DOMAIN_SSL = 'v_del_web_domain_ssl ' ;
80+ const V_DEL_WEB_DOMAIN_STAT = 'v_del_web_domain_stat ' ;
81+ const V_DEL_WEB_DOMAIN_STAT_AUTH = 'v_del_web_domain_stat_auth ' ;
82+ const V_DEL_WEB_DOMAIN_ALIAS = 'v_del_web_domain_alias ' ;
83+ const V_SUSPEND_WEB_DOMAIN = 'v_suspend_web_domain ' ;
84+ const V_SUSPEND_WEB_DOMAINS = 'v_suspend_web_domains ' ;
85+ const V_UNSUSPEND_WEB_DOMAIN = 'v_unsuspend_web_domain ' ;
86+ const V_UNSUSPEND_WEB_DOMAINS = 'v_unsuspend_web_domains ' ;
87+ const V_UPD_WEB_DOMAIN_DISK = 'v_upd_web_domain_disk ' ;
88+ const V_UPD_WEB_DOMAINS_DISK = 'v_upd_web_domains_disk ' ;
89+ const V_UPD_WEB_DOMAIN_TRAFF = 'v_upd_web_domain_traff ' ;
90+ const V_UPD_WEB_DOMAINS_TRAFF = 'v_upd_web_domains_traff ' ;
91+ const V_DEL_WEB_DOMAIN = 'v_del_web_domain ' ;
9292 // DB
93- const V_LIST_DB_BASES = 'v_list_db_bases ' ;
94- const V_LIST_DB_HOSTS = 'v_list_db_hosts ' ;
95- const V_ADD_DB_BASE = 'v_add_db_base ' ;
96- const V_ADD_DB_HOST = 'v_add_db_host ' ;
97- const V_SUSPEND_DB_BASE = 'v_suspend_db_base ' ;
98- const V_SUSPEND_DB_BASES = 'v_suspend_db_bases ' ;
99- const V_UNSUSPEND_DB_BASE = 'v_unsuspend_db_base ' ;
100- const V_UNSUSPEND_DB_BASES = 'v_unsuspend_db_bases ' ;
101- const V_CHANGE_DB_PASSWORD = 'v_change_db_password ' ;
102- const V_DEL_DB_BASE = 'v_del_db_base ' ;
103- const V_DEL_DB_HOST = 'v_del_db_host ' ;
104- const V_UPD_DB_BASE_DISK = 'v_upd_db_base_disk ' ;
105- const V_UPD_DB_BASES_DISK = 'v_upd_db_bases_disk ' ;
106- const PARAM_DELIMETER = ' ' ;
93+ const V_LIST_DB_BASES = 'v_list_db_bases ' ;
94+ const V_LIST_DB_HOSTS = 'v_list_db_hosts ' ;
95+ const V_ADD_DB_BASE = 'v_add_db_base ' ;
96+ const V_ADD_DB_HOST = 'v_add_db_host ' ;
97+ const V_SUSPEND_DB_BASE = 'v_suspend_db_base ' ;
98+ const V_SUSPEND_DB_BASES = 'v_suspend_db_bases ' ;
99+ const V_UNSUSPEND_DB_BASE = 'v_unsuspend_db_base ' ;
100+ const V_UNSUSPEND_DB_BASES = 'v_unsuspend_db_bases ' ;
101+ const V_CHANGE_DB_PASSWORD = 'v_change_db_password ' ;
102+ const V_DEL_DB_BASE = 'v_del_db_base ' ;
103+ const V_DEL_DB_HOST = 'v_del_db_host ' ;
104+ const V_UPD_DB_BASE_DISK = 'v_upd_db_base_disk ' ;
105+ const V_UPD_DB_BASES_DISK = 'v_upd_db_bases_disk ' ;
106+ const PARAM_DELIMETER = ' ' ;
107107
108108 /**
109109 * Execute vesta command
@@ -117,54 +117,50 @@ static function execute($cmd_command, $parameters=array())
117117 $ r = new Request ();
118118 $ _DEBUG = $ r ->getParameter ("debug " , FALSE );
119119
120- if (!isset ($ cmd_command ))
121- {
120+ if (!isset ($ cmd_command )) {
122121 throw new ProtectionException ('No function name passed into Vesta::execute ' ); // TODO: move msg to Messages::
123122 }
124123
125124 $ params = array (
126- ' sudo ' => Config::get ('sudo_path ' ),
127- 'functions ' => Config::get ('vesta_functions_path ' ),
128- 'parameters ' => implode ("' ' " , $ parameters ),
129- );
125+ ' sudo ' => Config::get ('sudo_path ' ),
126+ 'functions ' => Config::get ('vesta_functions_path ' ),
127+ 'parameters ' => implode ("' ' " , $ parameters ),
128+ );
130129
131130 // e.g.: /usr/bin/sudo /usr/local/vesta/bin/v_list_sys_users vesta json
132131 $ cmd = "{$ params ['sudo ' ]} {$ params ['functions ' ]}{$ cmd_command } ' {$ params ['parameters ' ]}' {$ params ['reply ' ]}" ;
133132
134133 exec ($ cmd , $ output , $ return );
135134
136135 $ result = 0 ;
137- $ result = array ('status ' => TRUE ,
136+ $ result = array (
137+ 'status ' => TRUE ,
138138 'data ' => '' ,
139139 'error_code ' => '' ,
140140 'error_message ' => ''
141- );
141+ );
142142
143143 // TODO: please remove this later :)
144- if ($ _DEBUG )
145- {
144+ if ($ _DEBUG ) {
146145 $ result ['debug ' ] = array (
147146 "cmd " => $ cmd ,
148147 "output " => $ output ,
149148 "return " => $ return
150149 );
151- if ($ debug == 2 )
152- {
150+ if ($ debug == 2 ) {
153151 echo '<p> ' .$ cmd ;
154152 echo '<br> output: ' ; print_r ($ output );
155153 echo '<br> return: ' .$ return ;
156154 echo '</p> ' ;
157155 }
158156 }
159157
160- if (!!(int )$ return )
161- {
158+ if (!!(int )$ return ) {
162159 $ result ['status ' ] = FALSE ;
163160 $ result ['error_code ' ] = (int )$ return ;
164161 $ result ['error_message ' ] = implode ('' , $ output );
165162 }
166- else
167- {
163+ else {
168164 $ result ['data ' ] = json_decode (implode ('' , $ output ), true );
169165 }
170166
0 commit comments