Changeset 774108
- Timestamp:
- Jan 16, 2009, 3:37:41 AM (14 years ago)
- Branches:
- lite_0.1, multiEdit, ng_0.6, ng_0.6_help, ng_0.8, ng_0.9
- Children:
- c09d7b
- Parents:
- 919c17
- Location:
- chrome
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
chrome/content/v_identity/vI_rdfDataEditor.js
r919c17 r774108 25 25 var vI_rdfDataEditor = { 26 26 __rdfDatasource : null, 27 __type : null, 27 28 28 29 storageExtras : null, 29 30 30 31 init : function() { 31 vI_rdfDataEditor.__rdfDatasource = window.arguments[1] 32 32 vI_rdfDataEditor.__type = window.arguments[1]; 33 vI_rdfDataEditor.__rdfDatasource = window.arguments[2]; 34 33 35 document.getElementById("recipient").value = window.arguments[0]["recipientCol"]; 34 36 35 37 var typeMenuPopup = document.getElementById("type_menu_popup") 36 for each (typeField in Array("email", "maillist", "newsgroup")) { 38 39 for each (typeField in Array("email", "maillist", "newsgroup", "filter")) { 37 40 var menuitem = document.createElement("menuitem"); 38 41 var label = document.getElementById("vI_rdfDataTreeBundle").getString("vI_rdfDataTree.dataType." + typeField) … … 40 43 menuitem.setAttribute("key", typeField) 41 44 typeMenuPopup.appendChild(menuitem); 42 if ( label == window.arguments[0]["typeCol"]) document.getElementById("type_menu").selectedItem = menuitem45 if (typeField == vI_rdfDataEditor.__type) document.getElementById("type_menu").selectedItem = menuitem 43 46 } 44 47 … … 91 94 vI_rdfDataEditor.storageExtras) 92 95 93 vI_rdfDataEditor.__rdfDatasource.updateRDF( 94 document.getElementById("recipient").value, 96 // if current Type and previous Type are different, remove previous resource 97 vI_rdfDataEditor.__rdfDatasource.removeRDF(document.getElementById("recipient").value, 98 vI_rdfDataEditor.__type); 99 100 vI_rdfDataEditor.__rdfDatasource.updateRDF(document.getElementById("recipient").value, 95 101 document.getElementById("type_menu").selectedItem.getAttribute("key"), 96 localIdentityData, true) 102 localIdentityData, true); 103 104 return document.getElementById("type_menu").selectedItem.getAttribute("key"); 97 105 } 98 106 } -
chrome/content/v_identity/vI_rdfDataTree.js
r919c17 r774108 92 92 addNewDatum : function(resource, name, localIdentityData, idData) { 93 93 var pref = { recipientCol : name, 94 typeCol : "type",95 94 senderCol : localIdentityData.combinedName, 96 95 smtpCol : localIdentityData.smtp.value, … … 279 278 window.openDialog("chrome://v_identity/content/vI_rdfDataEditor.xul",0, 280 279 "chrome, dialog, modal, alwaysRaised, resizable=yes", 281 tree.idTable[v], 280 tree.idTable[v], treeType, 282 281 vI_rdfDatasource).focus(); 283 282 } 284 283 285 tree.idData = null; tree.idTable = null; 286 tree.loadTable() 284 // reload all trees (types might have changed) 285 for each (var treeType in vI_rdfDataTree.treeTypes) { 286 vI_rdfDataTree.trees[treeType].idData = null; 287 vI_rdfDataTree.trees[treeType].idTable = null; 288 vI_rdfDataTree.trees[treeType].loadTable() 289 } 287 290 vI_rdfDataTree.hideInfoBox(); 288 291 }, … … 304 307 tree.treeElem.view.selection.getRangeAt(t,start,end); 305 308 for (var v=start.value; v<=end.value; v++){ 306 vI_rdfDatasource.removeBagForResource(tree.idTable[v]["resource"], tree.idTable[v]["type"]) 307 vI_rdfDatasource.removeVIdentityFromRDF(tree.idTable[v]["resource"]) 309 vI_rdfDatasource.removeVIdentityFromRDF(tree.idTable[v]["resource"], treeType) 308 310 } 309 311 } … … 326 328 vI_rdfDataTree.infoBoxHidden = true; 327 329 document.getElementById("vI_rdfDataTreeInfoBox").setAttribute("style", "height:0px"); 330 for each (var treeType in vI_rdfDataTree.treeTypes) { 331 vI_rdfDataTree.trees[treeType].treeElem.view.selection.selectNone(); 332 } 328 333 }, 329 334 … … 338 343 var newItemPreset = { 339 344 recipientCol : "", 340 typeCol : document.getElementById("vI_rdfDataTreeBundle").getString("vI_rdfDataTree.dataType.email"),341 345 senderCol : "", 342 346 smtpKey : "", … … 345 349 window.openDialog("chrome://v_identity/content/vI_rdfDataEditor.xul",0, 346 350 "chrome, dialog, modal, alwaysRaised, resizable=yes", 347 newItemPreset, 351 newItemPreset, "email", 348 352 vI_rdfDatasource).focus(); 349 353 vI_rdfDataTree.__idData = null; vI_rdfDataTree.__idTable = null; -
chrome/content/v_identity/vI_rdfDataTree.xul
r919c17 r774108 120 120 </hbox> 121 121 <tabbox id="TreeTabbox" flex="1"> 122 <tabs >122 <tabs onselect="vI_rdfDataTree.hideInfoBox();" > 123 123 <tab id="emailTab" /> 124 124 <tab id="maillistTab" /> -
chrome/content/v_identity/vI_rdfDatasource.js
r919c17 r774108 166 166 case "newsgroup" : rdfNSRecType = vI_rdfDatasource.rdfNSNewsgroup; break; 167 167 case "maillist" : rdfNSRecType = vI_rdfDatasource.rdfNSMaillist; break; 168 case "filter" : rdfNSRecType = vI_rdfDatasource.rdfNSFilter; break; 168 169 } 169 170 return vI_rdfDatasource.rdfService.GetResource(vI_rdfDatasource.rdfNS + rdfNSRecType + "/" + recDescription); 170 171 }, 171 172 172 removeBagForResource: function (resource, recType) { 173 var rdfContainerUtils = Components.classes["@mozilla.org/rdf/container-utils;1"]. 174 getService(Components.interfaces.nsIRDFContainerUtils); 175 var rdfNSRecType = null; 176 switch (recType) { 177 case "email": rdfNSRecType = vI_rdfDatasource.rdfNSEmail; break; 178 case "newsgroup" : rdfNSRecType = vI_rdfDatasource.rdfNSNewsgroup; break; 179 case "maillist" : rdfNSRecType = vI_rdfDatasource.rdfNSMaillist; break; 180 case "filter" : rdfNSRecType = vI_rdfDatasource.rdfNSFilter; break; 181 } 182 var storageRes = vI_rdfDatasource.rdfService 183 .GetResource(vI_rdfDatasource.rdfNS + rdfNSRecType); 184 var container = Components.classes["@mozilla.org/rdf/container;1"] 185 .createInstance(Components.interfaces.nsIRDFContainer); 186 container.Init(vI_rdfDatasource.rdfDataSource, storageRes); 187 188 if (container.IndexOf(emailRes) != -1) container.RemoveElement(resource); 189 }, 190 191 removeVIdentityFromRDF : function (resource) { 173 removeVIdentityFromRDF : function (resource, recType) { 192 174 vI_notificationBar.dump("## vI_rdfDatasource: removeVIdentityFromRDF " + resource.ValueUTF8 + ".\n"); 193 175 vI_rdfDatasource.__unsetRDFValue(resource, "email", vI_rdfDatasource.__getRDFValue(resource, "email")) … … 199 181 var extras = new vI_storageExtras(vI_rdfDatasource.__getRDFValue, resource); 200 182 extras.loopForRDF(vI_rdfDatasource.__unsetRDFValue, resource); 183 vI_notificationBar.dump("## vI_rdfDatasource: removeVIdentityFromRDF recType" + recType + " 2.\n"); 184 vI_rdfDatasource.getContainer(recType).RemoveElement(resource, true); 185 vI_notificationBar.dump("## vI_rdfDatasource: removeVIdentityFromRDF " + resource.ValueUTF8 + " 3.\n"); 186 // var container = vI_rdfDatasource.getContainer(recType); 187 // if (container.IndexOf(emailRes) != -1) container.RemoveElement(resource); 201 188 }, 202 189 … … 230 217 }, 231 218 219 // only used for upgrade to 0.0.3 - loop through all ressources. 232 220 readAllResourcesFromRDF : function (addNewDatum) { 233 221 vI_notificationBar.dump("## vI_rdfDatasource: readAllResourcesFromRDF.\n"); … … 268 256 269 257 var email = vI_rdfDatasource.rdfService.GetResource(vI_rdfDatasource.rdfNS + "rdf#email"); 258 // if no data available try available filters 270 259 if (!vI_rdfDatasource.rdfDataSource.hasArcOut(resource, email)) 271 260 resource = vI_rdfDatasource.__findMatchingFilter(recDescription); 261 // if still no data available give up. 272 262 if (!vI_rdfDatasource.rdfDataSource.hasArcOut(resource, email)) { 273 263 vI_notificationBar.dump("## vI_rdfDatasource: readVIdentityFromRDF no data found.\n"); … … 305 295 }, 306 296 307 updateRDF : function (recDescription, recType, localIdentityData, storeBaseID) { 297 removeRDF : function (recDescription, recType) { 298 var resource = vI_rdfDatasource.__getRDFResourceForVIdentity(recDescription, recType); 299 if (!resource) return null; 300 vI_rdfDatasource.removeVIdentityFromRDF(resource, recType); 301 return resource; 302 }, 303 304 updateRDF : function (recDescription, recType, localIdentityData, storeBaseID, previousRecType) { 308 305 if (!localIdentityData.email) { 309 306 vI_notificationBar.dump("## vI_rdfDatasource: updateRDF: no Sender-email for Recipient, aborting.\n"); 310 307 return; 311 308 } 312 var resource = vI_rdfDatasource. __getRDFResourceForVIdentity(recDescription, recType);309 var resource = vI_rdfDatasource.removeRDF(recDescription, recType); // just to have a clean base 313 310 if (!resource) return; 314 else vI_rdfDatasource.removeVIdentityFromRDF(resource); // just to have a clean base315 311 316 312 vI_notificationBar.dump("## vI_rdfDatasource: updateRDF " + resource.ValueUTF8 + ".\n"); 317 vI_rdfDatasource.__setRDFValue(resource, "email", localIdentityData.email) 318 vI_rdfDatasource.__setRDFValue(resource, "fullName", localIdentityData.fullName) 319 if (storeBaseID) vI_rdfDatasource.__setRDFValue(resource, "id", localIdentityData.id.key) 320 vI_rdfDatasource.__setRDFValue(resource, "smtp", localIdentityData.smtp.key) 321 313 vI_rdfDatasource.__setRDFValue(resource, "email", localIdentityData.email); 314 vI_rdfDatasource.__setRDFValue(resource, "fullName", localIdentityData.fullName); 315 if (storeBaseID) vI_rdfDatasource.__setRDFValue(resource, "id", localIdentityData.id.key); 316 vI_rdfDatasource.__setRDFValue(resource, "smtp", localIdentityData.smtp.key); 317 vI_rdfDatasource.__setRDFValue(resource, "name", recDescription); 318 322 319 localIdentityData.extras.loopForRDF(vI_rdfDatasource.__setRDFValue, resource); 320 321 vI_rdfDatasource.getContainer(recType).AppendElement(resource); 323 322 }, 324 323 -
chrome/content/v_identity/vI_upgrade.js
r919c17 r774108 104 104 105 105 __createContainersUpgradeElems: function(resource, type, name) { 106 var container; 107 108 switch (type) { 109 case "email": container = vI_rdfDatasource.emailContainer; break; 110 case "newsgroup" : container = vI_rdfDatasource.newsgroupContainer; break; 111 case "maillist" : container = vI_rdfDatasource.maillistContainer; break; 112 } 106 var container = vI_rdfDatasource.getContainer(type); 113 107 vI_rdfDatasource.__setRDFValue(resource, "name", name); 114 108 if (container.IndexOf(resource) == -1) container.AppendElement(resource); -
chrome/locale/en-US/v_identity/vI_rdfDataEditor.properties
r919c17 r774108 6 6 vI_rdfDataTree.dataType.maillist=mailing list 7 7 vI_rdfDataTree.dataType.newsgroup=newsgroup 8 vI_rdfDataTree.dataType.filter=filter
Note: See TracChangeset
for help on using the changeset viewer.