/**
  * Find custom address fields added to modules that modulebuilder created and deployed
  */
 public function upgradeVardefsInDeployedModules()
 {
     //Created for access to a field's vardef_map
     $tempField = new TemplateField();
     foreach (glob('modules/*/vardefs.php') as $file) {
         //Get module name from file name
         $fileParts = explode('/', $file);
         $module = $fileParts[1];
         require $file;
         if (!empty($dictionary[$module]['fields'])) {
             //Set up vardef extension save mechanism
             $bean = BeanFactory::getBean($module);
             if (empty($bean)) {
                 continue;
             }
             $df = new DynamicField($module);
             $df->setup($bean);
             //Find all custom street fields
             foreach ($dictionary[$module]['fields'] as $fieldName => $field) {
                 if ($this->validateStreetField($dictionary[$module]['fields'], $fieldName)) {
                     $upgradeField = new stdClass();
                     $upgradeField->type = 'text';
                     $upgradeField->dbType = 'varchar';
                     $upgradeField->name = $fieldName;
                     $upgradeField->vardef_map = $tempField->vardef_map;
                     $upgradeField->vardef_map['dbType'] = 'dbType';
                     $df->saveExtendedAttributes($upgradeField, array());
                 }
             }
         }
     }
 }