diff --git a/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.html b/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.html index ca1a671ed43e3e3b7f1edbcc97fa36d7db6cc377..1f6f0fb1ac823ac5060db2a09284111a5f5c2488 100644 --- a/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.html +++ b/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.html @@ -23,6 +23,10 @@ </div> </div> </div> + <div class="custom-control custom-switch"> + <input class="custom-control-input" type="checkbox" id="resolver_enabled" name="resolver_enabled" formControlName="resolver_enabled"> + <label class="custom-control-label" for="resolver_enabled">Resolver enabled</label> + </div> <div class="custom-control custom-switch"> <input class="custom-control-input" type="checkbox" id="plot_enabled" name="plot_enabled" formControlName="plot_enabled"> <label class="custom-control-label" for="plot_enabled">Plot enabled</label> diff --git a/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.ts b/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.ts index 3a2ff5a3059c44ff9ae31390001d6a86a7176233..c07eebe04d2a1443f9889645b9e2137faedbe3b3 100644 --- a/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.ts +++ b/client/src/app/admin/instance/dataset/components/cone-search-config/cone-search-config-form.component.ts @@ -27,6 +27,7 @@ export class ConeSearchConfigFormComponent implements OnInit { opened: new UntypedFormControl({value: false, disabled: true}), column_ra: new UntypedFormControl({value: false, disabled: true}), column_dec: new UntypedFormControl({value: false, disabled: true}), + resolver_enabled: new UntypedFormControl({value: false, disabled: true}), plot_enabled: new UntypedFormControl(false), }); @@ -40,12 +41,14 @@ export class ConeSearchConfigFormComponent implements OnInit { this.form.controls.opened.enable(); this.form.controls.column_ra.enable(); this.form.controls.column_dec.enable(); + this.form.controls.resolver_enabled.enable(); this.form.controls.plot_enabled.enable(); } else { this.form.controls.opened.setValue(false); this.form.controls.opened.disable(); this.form.controls.column_ra.disable(); this.form.controls.column_dec.disable(); + this.form.controls.resolver_enabled.disable(); this.form.controls.plot_enabled.disable(); } } diff --git a/client/src/app/instance/cone-search/components/cone-search.component.html b/client/src/app/instance/cone-search/components/cone-search.component.html index 0d5da742daf22ff65c6820ed518922f0bb93613b..c2e0feb841ffc6b4c17bbb2ad65917466cf1c185 100644 --- a/client/src/app/instance/cone-search/components/cone-search.component.html +++ b/client/src/app/instance/cone-search/components/cone-search.component.html @@ -1,4 +1,4 @@ -<div class="row pb-4"> +<div class="row pb-4" *ngIf="resolverEnabled"> <div class="col"> <app-resolver [coneSearch]="coneSearch" diff --git a/client/src/app/instance/cone-search/components/cone-search.component.ts b/client/src/app/instance/cone-search/components/cone-search.component.ts index 5ded610d50c5036e93c5f87b835e1861ae9bcf7f..cf3dc7d338bb3f85bbe96e9b6e664c108e94ea00 100644 --- a/client/src/app/instance/cone-search/components/cone-search.component.ts +++ b/client/src/app/instance/cone-search/components/cone-search.component.ts @@ -27,6 +27,7 @@ import { nanValidator, rangeValidator } from '../validators'; }) export class ConeSearchComponent implements OnChanges, OnInit, OnDestroy { @Input() coneSearch: ConeSearch; + @Input() resolverEnabled: boolean; @Input() resolverIsLoading: boolean; @Input() resolverIsLoaded: boolean; @Output() retrieveCoordinates: EventEmitter<string> = new EventEmitter(); diff --git a/client/src/app/instance/search-multiple/components/position/cone-search-panel.component.html b/client/src/app/instance/search-multiple/components/position/cone-search-panel.component.html index 52e4398fbf5142c3e90a7728c9d5712546b304ab..e13cbbdb79b63da29b8db72b00ee60a978becbbf 100644 --- a/client/src/app/instance/search-multiple/components/position/cone-search-panel.component.html +++ b/client/src/app/instance/search-multiple/components/position/cone-search-panel.component.html @@ -6,6 +6,7 @@ <div class="col"> <app-cone-search [coneSearch]="coneSearch" + [resolverEnabled]="true" [resolverIsLoading]="resolverIsLoading" [resolverIsLoaded]="resolverIsLoaded" (retrieveCoordinates)="retrieveCoordinates.emit($event)" diff --git a/client/src/app/instance/search/components/criteria/cone-search-tab.component.html b/client/src/app/instance/search/components/criteria/cone-search-tab.component.html index d0991f524b2f24c484a80b02db047d9481fd32cd..c902914e106a4bae1781ea080ed8ed4ea1847d65 100644 --- a/client/src/app/instance/search/components/criteria/cone-search-tab.component.html +++ b/client/src/app/instance/search/components/criteria/cone-search-tab.component.html @@ -16,6 +16,7 @@ <div class="col"> <app-cone-search [coneSearch]="coneSearch" + [resolverEnabled]="coneSearchConfig.resolver_enabled" [resolverIsLoading]="resolverIsLoading" [resolverIsLoaded]="resolverIsLoaded" (retrieveCoordinates)="retrieveCoordinates.emit($event)" diff --git a/client/src/app/metamodel/models/cone-search-config.model.ts b/client/src/app/metamodel/models/cone-search-config.model.ts index b067ff0d41911a9158e27cf8387b37ddf2c02dac..bd4da83fb946ec30cad6c50f9a3f79db8610c811 100644 --- a/client/src/app/metamodel/models/cone-search-config.model.ts +++ b/client/src/app/metamodel/models/cone-search-config.model.ts @@ -18,5 +18,6 @@ export interface ConeSearchConfig { opened: boolean; column_ra: number; column_dec: number; + resolver_enabled: boolean; plot_enabled: boolean; } diff --git a/conf-dev/create-db.sh b/conf-dev/create-db.sh index 5375f265fba8f6083b3c1271ec6a9a1ca3e9ee1f..1b782bb2b25d220920ab5e13eea9d7d4e9a08337 100644 --- a/conf-dev/create-db.sh +++ b/conf-dev/create-db.sh @@ -96,7 +96,7 @@ curl -d '{"id":6,"name":"zflag","label":"zflag","form_label":"zflag","descriptio curl -d '{"id":7,"name":"sel_mag","label":"sel_mag","form_label":"sel_mag","description":null,"primary_key":false,"output_display":70,"criteria_display":70,"search_type":"between","type":"decimal","operator":null,"dynamic_operator":true,"min":null,"max":null,"placeholder_min":null,"placeholder_max":null,"renderer":null,"renderer_config":null,"detail_display":70,"selected":true,"order_by":true,"archive":false,"detail":false,"options":null,"vo_utype":null,"vo_ucd":null,"vo_unit":null,"vo_description":null,"vo_datatype":null,"vo_size":null,"id_criteria_family":4,"id_output_category":5,"id_detail_output_category":null}' --header 'Content-Type: application/json' -X POST http://localhost/dataset/vvds_f02_udeep/attribute # Add vvds_f02_udeep cone search -curl -d '{"enabled":true,"opened":false,"column_ra":3,"column_dec":4,"plot_enabled":true}' --header 'Content-Type: application/json' -X POST http://localhost/dataset/vvds_f02_udeep/cone-search-config +curl -d '{"enabled":true,"opened":false,"column_ra":3,"column_dec":4,"resolver_enabled":true,"plot_enabled":true}' --header 'Content-Type: application/json' -X POST http://localhost/dataset/vvds_f02_udeep/cone-search-config # Add vvds_f02_udeep image curl -d '{"label":"Mag i","file_path":"/IMAGES/CFHTLS_D-85_i_022559-042940_T0007_MEDIAN.fits","file_size":1498320000,"ra_min":35.994643451078,"ra_max":36.99765934121,"dec_min":-3.9943006310031,"dec_max":-4.9941936740893,"stretch":"linear","pmin":0.2,"pmax":99}' --header 'Content-Type: application/json' -X POST http://localhost/dataset/vvds_f02_udeep/image diff --git a/server/doctrine-proxy/__CG__AppEntityConeSearchConfig.php b/server/doctrine-proxy/__CG__AppEntityConeSearchConfig.php index 42b64ffdbbd31efbafd96e552dc2cae97e7ad7aa..07cbe981059f75e17024078724d70b04c93ee491 100644 --- a/server/doctrine-proxy/__CG__AppEntityConeSearchConfig.php +++ b/server/doctrine-proxy/__CG__AppEntityConeSearchConfig.php @@ -67,10 +67,10 @@ class ConeSearchConfig extends \App\Entity\ConeSearchConfig implements \Doctrine public function __sleep() { if ($this->__isInitialized__) { - return ['__isInitialized__', 'id', 'enabled', 'opened', 'columnRa', 'columnDec', 'plotEnabled']; + return ['__isInitialized__', 'id', 'enabled', 'opened', 'columnRa', 'columnDec', 'resolverEnabled', 'plotEnabled']; } - return ['__isInitialized__', 'id', 'enabled', 'opened', 'columnRa', 'columnDec', 'plotEnabled']; + return ['__isInitialized__', 'id', 'enabled', 'opened', 'columnRa', 'columnDec', 'resolverEnabled', 'plotEnabled']; } /** @@ -280,6 +280,28 @@ class ConeSearchConfig extends \App\Entity\ConeSearchConfig implements \Doctrine return parent::setColumnDec($columnDec); } + /** + * {@inheritDoc} + */ + public function getResolverEnabled() + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'getResolverEnabled', []); + + return parent::getResolverEnabled(); + } + + /** + * {@inheritDoc} + */ + public function setResolverEnabled($resolverEnabled) + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'setResolverEnabled', [$resolverEnabled]); + + return parent::setResolverEnabled($resolverEnabled); + } + /** * {@inheritDoc} */ diff --git a/server/src/Action/ConeSearchConfigAction.php b/server/src/Action/ConeSearchConfigAction.php index 8d2be835b9111cf14dce36c513c6ab3832d920e8..373af25696951ad7403290f528f454439213c8a8 100644 --- a/server/src/Action/ConeSearchConfigAction.php +++ b/server/src/Action/ConeSearchConfigAction.php @@ -108,6 +108,7 @@ final class ConeSearchConfigAction extends AbstractAction 'opened', 'column_ra', 'column_dec', + 'resolver_enabled', 'plot_enabled' ); @@ -135,6 +136,7 @@ final class ConeSearchConfigAction extends AbstractAction $coneSearchConfig->setOpened($parsedBody['opened']); $coneSearchConfig->setColumnRa($parsedBody['column_ra']); $coneSearchConfig->setColumnDec($parsedBody['column_dec']); + $coneSearchConfig->setResolverEnabled($parsedBody['resolver_enabled']); $coneSearchConfig->setPlotEnabled($parsedBody['plot_enabled']); $dataset->setConeSearchConfig($coneSearchConfig); @@ -157,6 +159,7 @@ final class ConeSearchConfigAction extends AbstractAction $coneSearchConfig->setOpened($parsedBody['opened']); $coneSearchConfig->setColumnRa($parsedBody['column_ra']); $coneSearchConfig->setColumnDec($parsedBody['column_dec']); + $coneSearchConfig->setResolverEnabled($parsedBody['resolver_enabled']); $coneSearchConfig->setPlotEnabled($parsedBody['plot_enabled']); $this->em->flush(); } diff --git a/server/src/Entity/ConeSearchConfig.php b/server/src/Entity/ConeSearchConfig.php index 5d63582526a9eb85dc4ae9de723eaeb61dbe7345..47725a9d9cd997c6d169eb647c56ad08caed7b2f 100644 --- a/server/src/Entity/ConeSearchConfig.php +++ b/server/src/Entity/ConeSearchConfig.php @@ -58,6 +58,13 @@ class ConeSearchConfig implements \JsonSerializable */ protected $columnDec; + /** + * @var bool + * + * @Column(type="boolean", name="resolver_enabled", nullable=false, options={"default" : true}) + */ + protected $resolverEnabled; + /** * @var bool * @@ -110,6 +117,16 @@ class ConeSearchConfig implements \JsonSerializable $this->columnDec = $columnDec; } + public function getResolverEnabled() + { + return $this->resolverEnabled; + } + + public function setResolverEnabled($resolverEnabled) + { + $this->resolverEnabled = $resolverEnabled; + } + public function getPlotEnabled() { return $this->plotEnabled; @@ -128,7 +145,8 @@ class ConeSearchConfig implements \JsonSerializable 'opened' => $this->getOpened(), 'column_ra' => $this->getColumnRa(), 'column_dec' => $this->getColumnDec(), - 'plot_enabled' => $this->getPlotEnabled(), + 'resolver_enabled' => $this->getResolverEnabled(), + 'plot_enabled' => $this->getPlotEnabled() ]; } }