@@ -104,14 +104,18 @@ function getElement($element) {
104104 case 'getEnv ' :
105105 $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
106106 $ basePath = getPath ("$ compose_root/ $ script " );
107- $ fileName = ".env " ;
107+ $ fileName = "$ basePath/.env " ;
108+ if ( is_file ("$ basePath/envpath " ) ) {
109+ $ fileName = file_get_contents ("$ basePath/envpath " );
110+ $ fileName = str_replace ("\r" ,"" ,$ fileName );
111+ }
108112
109- $ scriptContents = is_file ("$ basePath / $ fileName " ) ? file_get_contents ("$ basePath / $ fileName " ) : "" ;
113+ $ scriptContents = is_file ("$ fileName " ) ? file_get_contents ("$ fileName " ) : "" ;
110114 $ scriptContents = str_replace ("\r" ,"" ,$ scriptContents );
111115 if ( ! $ scriptContents ) {
112116 $ scriptContents = "\n" ;
113117 }
114- echo json_encode ( [ 'result ' => 'success ' , 'fileName ' => "$ basePath / $ fileName " , 'content ' => $ scriptContents ] );
118+ echo json_encode ( [ 'result ' => 'success ' , 'fileName ' => "$ fileName " , 'content ' => $ scriptContents ] );
115119 break ;
116120 case 'getOverride ' :
117121 $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
@@ -138,10 +142,14 @@ function getElement($element) {
138142 $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
139143 $ scriptContents = isset ($ _POST ['scriptContents ' ]) ? $ _POST ['scriptContents ' ] : "" ;
140144 $ basePath = getPath ("$ compose_root/ $ script " );
141- $ fileName = ".env " ;
145+ $ fileName = "$ basePath/.env " ;
146+ if ( is_file ("$ basePath/envpath " ) ) {
147+ $ fileName = file_get_contents ("$ basePath/envpath " );
148+ $ fileName = str_replace ("\r" ,"" ,$ fileName );
149+ }
142150
143- file_put_contents ("$ basePath / $ fileName " ,$ scriptContents );
144- echo "$ basePath / $ fileName saved " ;
151+ file_put_contents ("$ fileName " ,$ scriptContents );
152+ echo "$ fileName saved " ;
145153 break ;
146154 case 'saveOverride ' :
147155 $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
@@ -172,6 +180,37 @@ function getElement($element) {
172180 case 'unPatchUI ' :
173181 exec ("$ plugin_root/scripts/patch_ui.sh -r " );
174182 break ;
183+ case 'setEnvPath ' :
184+ $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
185+ if ( ! $ script ) {
186+ echo json_encode ( [ 'result ' => 'error ' , 'message ' => 'Stack not specified. ' ] );
187+ break ;
188+ }
189+ $ fileContent = isset ($ _POST ['envPath ' ]) ? urldecode (($ _POST ['envPath ' ])) : "" ;
190+ $ fileName = "$ compose_root/ $ script/envpath " ;
191+ if ( is_file ($ fileName ) ) {
192+ exec ("rm " .escapeshellarg ($ fileName ));
193+ }
194+ if ( isset ($ fileContent ) && !empty ($ fileContent ) ) {
195+ file_put_contents ($ fileName ,$ fileContent );
196+ }
197+ echo json_encode ( [ 'result ' => 'success ' , 'message ' => '' ] );
198+ break ;
199+ case 'getEnvPath ' :
200+ $ script = isset ($ _POST ['script ' ]) ? urldecode (($ _POST ['script ' ])) : "" ;
201+ if ( ! $ script ) {
202+ echo json_encode ( [ 'result ' => 'error ' , 'message ' => 'Stack not specified. ' ] );
203+ break ;
204+ }
205+ $ fileName = "$ compose_root/ $ script/envpath " ;
206+ $ fileContents = is_file ("$ fileName " ) ? file_get_contents ("$ fileName " ) : "" ;
207+ $ fileContents = str_replace ("\r" ,"" ,$ fileContents );
208+ if ( ! $ fileContents ) {
209+ $ fileContents = "" ;
210+ }
211+ echo json_encode ( [ 'result ' => 'success ' , 'fileName ' => "$ fileName " , 'content ' => $ fileContents ] );
212+ break ;
213+
175214}
176215
177216?>
0 commit comments