'feeds_tamper_language_to_code_form', 'callback' => 'feeds_tamper_language_to_code_callback', 'name' => 'Language to ISO code', 'multi' => 'loop', 'category' => 'Other', 'default description' => 'Language names to ISO code', ); function feeds_tamper_language_to_code_form($importer, $element_key, $settings) { $form = array(); $form['help'] = array( '#markup' => t('Converts this field from an English language name string to the two character ISO 639-1.'), ); return $form; } function feeds_tamper_language_to_code_callback($result, $item_key, $element_key, &$field, $settings) { $ISO_639_1 = array("ab","aa","af","ak","sq","am","ar","hy","as","ast","av","ae","ay","az","bm","ba","eu","be","bn","dz","bh","bi","bs","br","bg","my","km","ca","ch","ce","ny","zh-hans","zh-hant","cv","kw","co","cr","hr","cs","da","nl","en","en-gb","eo","et","ee","fo","fj","fil","fi","fr","fy","ff","gl","ka","de","el","kl","gn","gu","ht","ha","he","hz","hi","ho","hu","is","ig","id","ia","ie","iu","ik","ga","it","ja","jv","kn","kr","ks","kk","ki","rw","rn","kv","kg","ko","ku","kj","ky","lo","la","lv","ln","lt","xx-lolspeak","lg","lb","mk","mg","ms","ml","dv","mt","gv","mr","mh","mo","mn","mi","na","nv","ng","ne","nd","se","nb","nn","oc","cu","or","om","os","pi","ps","fa","pl","pt-br","pt","pt-pt","pa","qu","rm","ro","ru","sm","sg","sa","sc","sco","gd","sr","sh","st","tn","sn","sd","si","ss","sk","sl","so","nr","es","su","sw","sv","gsw-berne","tl","ty","tg","ta","tt","te","th","bo","ti","to","ts","tr","tk","tw","ug","uk","ur","uz","ve","vi","cy","wo","xh","yi","yo","za","zu"); $EnglishName = array("Abkhazian","Afar","Afrikaans","Akan","Albanian","Amharic","Arabic","Armenian","Assamese","Asturian","Avar","Avestan","Aymara","Azerbaijani","Bambara","Bashkir","Basque","Belarusian","Bengali","Bhutani","Bihari","Bislama","Bosnian","Breton","Bulgarian","Burmese","Cambodian","Catalan","Chamorro","Chechen","Chichewa","Chinese, Simplified","Chinese, Traditional","Chuvash","Cornish","Corsican","Cree","Croatian","Czech","Danish","Dutch","English","English, British","Esperanto","Estonian","Ewe","Faeroese","Fiji","Filipino","Finnish","French","Frisian","Fulah","Galician","Georgian","German","Greek","Greenlandic","Guarani","Gujarati","Haitian Creole","Hausa","Hebrew","Herero","Hindi","Hiri Motu","Hungarian","Icelandic","Igbo","Indonesian","Interlingua","Interlingue","Inuktitut","Inupiak","Irish","Italian","Japanese","Javanese","Kannada","Kanuri","Kashmiri","Kazakh","Kikuyu","Kinyarwanda","Kirundi","Komi","Kongo","Korean","Kurdish","Kwanyama","Kyrgyz","Laothian","Latin","Latvian","Lingala","Lithuanian","Lolspeak","Luganda","Luxembourgish","Macedonian","Malagasy","Malay","Malayalam","Maldivian","Maltese","Manx","Marathi","Marshallese","Moldavian","Mongolian","Māori","Nauru","Navajo","Ndonga","Nepali","North Ndebele","Northern Sami","Norwegian Bokmål","Norwegian Nynorsk","Occitan","Old Slavonic","Oriya","Oromo","Ossetian","Pali","Pashto","Persian","Polish","Portuguese, Brazil","Portuguese, International","Portuguese, Portugal","Punjabi","Quechua","Rhaeto-Romance","Romanian","Russian","Samoan","Sango","Sanskrit","Sardinian","Scots","Scots Gaelic","Serbian","Serbo-Croatian","Sesotho","Setswana","Shona","Sindhi","Sinhala","Siswati","Slovak","Slovenian","Somali","South Ndebele","Spanish","Sudanese","Swahili","Swedish","Swiss German","Tagalog","Tahitian","Tajik","Tamil","Tatar","Telugu","Thai","Tibetan","Tigrinya","Tonga","Tsonga","Turkish","Turkmen","Twi","Uighur","Ukrainian","Urdu","Uzbek","Venda","Vietnamese","Welsh","Wolof","Xhosa","Yiddish","Yoruba","Zhuang","Zulu"); $field = str_replace($EnglishName,$ISO_639_1,$field); if ($field == "") { // If language name is empty, return und (language Neutral). $field = 'und'; } }