public function runModel()
 {
     $uploads = Upload::getUploads();
     $upload = $uploads->first();
     $state_arr = explode('-', $upload->state);
     /*
             for($i=0; $i<=7; $i++) {
                 if($i==5) continue;
                 else if($state_arr[$i]==0) {
                     switch ($i) {
                         case 0: return json_encode(array('type'=>'Crop', 'state'=>$state_arr[$i])); break;
                         case 1: return json_encode(array('type'=>'Soil', 'state'=>$state_arr[$i])); break;
                         case 2: return json_encode(array('type'=>'Irrigation Efficiency', 'state'=>$state_arr[$i])); break;
                         case 3: return json_encode(array('type'=>'Crop Yield', 'state'=>$state_arr[$i])); break;
                         case 4: return json_encode(array('type'=>'Climate Model', 'state'=>$state_arr[$i])); break;
                         case 5: return json_encode(array('type'=>'Weather Data', 'state'=>$state_arr[$i])); break;
                         case 6: return json_encode(array('type'=>'Model Type', 'state'=>$state_arr[$i])); break;
                         case 7: return json_encode(array('type'=>'Model Type', 'state'=>$state_arr[$i])); break;
                     }
                 }
             }*/
     for ($i = 0; $i <= 7; $i++) {
         if ($i == 5 && $upload->climate_model != 'SelfSuppliedStation') {
             continue;
         } else {
             if ($state_arr[$i] == 0) {
                 switch ($i) {
                     case 0:
                         return json_encode(array('type' => 'Crop', 'state' => $state_arr[$i]));
                         break;
                     case 1:
                         return json_encode(array('type' => 'Soil', 'state' => $state_arr[$i]));
                         break;
                     case 2:
                         return json_encode(array('type' => 'Irrigation Efficiency', 'state' => $state_arr[$i]));
                         break;
                     case 3:
                         return json_encode(array('type' => 'Crop Yield', 'state' => $state_arr[$i]));
                         break;
                     case 4:
                         return json_encode(array('type' => 'Climate Model', 'state' => $state_arr[$i]));
                         break;
                     case 5:
                         return json_encode(array('type' => 'Weather Data', 'state' => $state_arr[$i]));
                         break;
                     case 6:
                         return json_encode(array('type' => 'Model Type', 'state' => $state_arr[$i]));
                         break;
                     case 7:
                         return json_encode(array('type' => 'Model Type', 'state' => $state_arr[$i]));
                         break;
                 }
             }
         }
     }
     $state_arr[8] = 1;
     $state = $state_arr[0];
     for ($j = 1; $j < count($state_arr); $j++) {
         $state .= '-' . $state_arr[$j];
     }
     $upload->state = $state;
     $upload->save();
     $result = Upload::uploadInputFile(Config::getUploadBaseDirectory() . 'uploads/' . User::getSignedInUserId() . "\$" . "IC_ClimIn.txt", 'run_model', User::getSignedInUserId());
     return json_encode(array('state' => -1));
 }