MT#9177 Re-add sync param logic.

changes/52/552/1
Andreas Granig 11 years ago
parent 5bb95acc40
commit 097c8ec066

@ -36,3 +36,35 @@ sub dispatch {
no strict "refs";
return $mod->($c, $dev, $dev->identifier, $old_mac);
}
sub devmod_sync_parameters_prefetch{
my($c,$devmod,$params) = @_;
my $schema = $c->model('DB');
my $bootstrap_method = $params->{'bootstrap_method'};
my $bootstrap_params_rs = $schema->resultset('autoprov_sync_parameters')->search_rs({
'me.bootstrap_method' => $bootstrap_method,
});
my @parameters = ();
foreach ($bootstrap_params_rs->all){
my $sync_parameter = {
device_id => $devmod ? $devmod->id : undef,
parameter_id => $_->id,
parameter_value => delete $params->{'bootstrap_config_'.$bootstrap_method.'_'.$_->parameter_name},
};
push @parameters,$sync_parameter;
}
foreach (keys %$params){
if($_ =~/^bootstrap_config_/i){
delete $params->{$_};
}
}
return \@parameters;
}
sub devmod_sync_parameters_store {
my($c,$devmod,$sync_parameters) = @_;
my $schema = $c->model('DB');
foreach my $sync_parameter (@$sync_parameters){
$sync_parameter->{device_id} ||= $devmod ? $devmod->id : undef
$schema->resultset('autoprov_sync')->create($sync_parameter);
}
}

Loading…
Cancel
Save