Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var SProcsViewModel = function () {
- var self = this;
- self.storedProceduresInDB1 = ko.observableArray([{
- Name: "Sp1",
- Id: 1
- }, {
- Name: "Sp2",
- Id: 2
- }, {
- Name: "Sp3",
- Id: 3
- }, {
- Name: "Sp4",
- Id: 4
- }]);
- self.storedProceduresInDB2Orig = ko.observableArray([{
- Name: "Sp3",
- Id: 3
- }, {
- Name: "Sp4",
- Id: 4
- }, {
- Name: "Sp7",
- Id: 7
- }, {
- Name: "Sp8",
- Id: 8
- }]);
- self.storedProceduresInDB2 = ko.observableArray([{
- Name: "Sp3",
- Id: 3
- }, {
- Name: "Sp4",
- Id: 4
- }, {
- Name: "Sp7",
- Id: 7
- }, {
- Name: "Sp8",
- Id: 8
- }]);
- self.selectedStoredProceduresInDb1 = ko.observableArray();
- self.selectedStoredProceduresInDb2 = ko.observableArray();
- self.copyToDb2 = function () {
- var sprocs = [];
- console.log('self.selectedStoredProceduresInDb1()', self.selectedStoredProceduresInDb1());
- ko.utils.arrayForEach(self.selectedStoredProceduresInDb1(), function (value) {
- // console.log('arrayForEach',value,self.storedProceduresInDB2);
- var match = ko.utils.arrayFirst(self.storedProceduresInDB2(), function (item) {
- console.log('item in storedProceduresInDB2', value, item);
- return value.Id === item.Id;
- });
- if (!match) {
- console.log('No match, so add to sprocs', value);
- sprocs.push(value);
- } else {
- console.log('Match found for:', value);
- }
- });
- ko.utils.arrayForEach(self.selectedStoredProceduresInDb1(), function (value) {
- console.log('storedProceduresInDB1', value);
- });
- console.log('sprocs', sprocs);
- ko.utils.arrayPushAll(self.storedProceduresInDB2, sprocs)
- };
- self.removeFromDb2 = function(item, event){
- self.storedProceduresInDB2.remove(function(item) {
- return item.Name == $(event.currentTarget).find("option:selected").text();
- });
- }
- return self;
- };
- ko.applyBindings(new SProcsViewModel());
- self.removeFromDb2 = function(item, event){
- self.storedProceduresInDB2.remove(function(item) {
- var nameToRemove = $(event.currentTarget).find("option:selected").text();
- var isInOrig = ko.utils.arrayFirst(self.storedProceduresInDB2Orig(),
- function(item){
- return item.Name == nameToRemove;
- });
- if (isInOrig)
- return false;
- return item.Name == nameToRemove;
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement