# Name: dzd_multicat_creator v0.2 # Type: Admin plugin # Add multiples categories at once # Author: Messaoudi Rabah (Dragondz) # URL: http://info.ix-dz.com # Recommended load order: 5 # ..................................................................... # This is a plugin for Textpattern CMS - http://textpattern.com/ # To install: textpattern > admin > plugins # Paste the following text into the 'Install plugin' box: # ..................................................................... YToxMTp7czo0OiJuYW1lIjtzOjIwOiJkemRfbXVsdGljYXRfY3JlYXRvciI7czo2OiJhdXRo b3IiO3M6MjY6Ik1lc3Nhb3VkaSBSYWJhaCAoRHJhZ29uZHopIjtzOjEwOiJhdXRob3JfdXJp IjtzOjIxOiJodHRwOi8vaW5mby5peC1kei5jb20iO3M6NzoidmVyc2lvbiI7czozOiIwLjIi O3M6MTE6ImRlc2NyaXB0aW9uIjtzOjMyOiJBZGQgbXVsdGlwbGVzIGNhdGVnb3JpZXMgYXQg b25jZSI7czo0OiJjb2RlIjtzOjM5MTE6Ii8vPD9waHANCg0KDQpyZWdpc3Rlcl9jYWxsYmFj aygnZHpkX211bHRpY2F0X2NyZWF0b3InLCAnY2F0ZWdvcnknLCAnJyk7DQoNCmZ1bmN0aW9u IGR6ZF9tdWx0aWNhdF9jcmVhdG9yKCRldmVudCwgJHN0ZXApIHsNCiAgIGdsb2JhbCAkc2l0 ZW5hbWUsICRwcmVmcywgJHRoaXNhcnRpY2xlLCAkdHhwX3VzZXIsICR0eHBjZmc7DQoNCiAg JG15YXJlYSA9ICcnOw0KCSRjb25maXJtID0gJyc7DQoNCiAgICBpZiAocHMoJ2R6ZHNlbmQn KSkNCiAgICB7DQoJCQkkbXlhcmVhID0gcHMoJ2NhdF9jb250ZW50Jyk7DQoJCQkkY29uZmly bSA9ICc8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkemRjb25maXJtIiB2YWx1ZT0iQ3Jl YXRlIGNhdGVnb3JpZXMiIC8+JzsNCgkJCSR1cF9mb3JtID0gPDw8dWZvcm0xDQo8c2NyaXB0 Pg0KJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7DQokKCdkaXYudHhwLWxheW91dCcp LmFmdGVyKCc8Zm9ybSBtZXRob2Q9InBvc3QiIGFjdGlvbj0iaW5kZXgucGhwP2V2ZW50PWNh dGVnb3J5IiBpZD0iZHpkX2Zvcm0iIGNsYXNzPSJ0b2dnbGUiIHN0eWxlPSJ0ZXh0LWFsaWdu OmNlbnRlcjsiIG5hbWU9ImR6ZF9mb3JtIiA+PGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9 ImNhdGVnb3J5IiBuYW1lPSJldmVudCIgLz48dGV4dGFyZWEgbmFtZT0iY2F0X2NvbnRlbnQi IHJvd3M9IjEwIiBjb2xzPSIxMDAiPiRteWFyZWE8L3RleHRhcmVhPjxiciAvPjxpbnB1dCB0 eXBlPSJzdWJtaXQiIG5hbWU9ImR6ZGNvbmZpcm0iIHZhbHVlPSJDcmVhdGUgY2F0ZWdvcmll cyIgLz48L2Zvcm0+Jyk7DQokKCdkaXYudHhwLWxheW91dCcpLmFmdGVyKCc8aDMgY2xhc3M9 InBsYWluIGxldmVyIiBzdHlsZT0icGFkZGluZy10b3A6IDEwcHg7dGV4dC1hbGlnbjpjZW50 ZXI7Ij48YSBocmVmPSIjZHpkX2Zvcm0iIGlkPSJkemRsaW5rIj5NdWx0aXBsZSBjYXRlZ29y eSBjcmVhdG9yPC9hPjwvaDM+Jyk7DQp9KTsNCjwvc2NyaXB0Pg0KPGgzIGNsYXNzPSJwbGFp biBsZXZlciIgc3R5bGU9InBhZGRpbmctdG9wOiAxMHB4O3RleHQtYWxpZ246Y2VudGVyOyI+ PGEgaHJlZj0iI2R6ZF9mb3JtIj5NdWx0aXBsZSBjYXRlZ29yeSBjcmVhdG9yPC9hPjwvaDM+ DQo8Zm9ybSBtZXRob2Q9InBvc3QiIGFjdGlvbj0iaW5kZXgucGhwP2V2ZW50PWNhdGVnb3J5 IiBpZD0iZHpkX2Zvcm0iIGNsYXNzPSJ0b2dnbGUiIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRl cjsiIG5hbWU9ImR6ZF9mb3JtIiA+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iY2F0 ZWdvcnkiIG5hbWU9ImV2ZW50IiAvPg0KPHRleHRhcmVhIG5hbWU9ImNhdF9jb250ZW50IiBy b3dzPSIxMCIgY29scz0iMTAwIj4kbXlhcmVhPC90ZXh0YXJlYT48YnIgLz4NCjxpbnB1dCB0 eXBlPSJzdWJtaXQiIG5hbWU9ImR6ZGNvbmZpcm0iIHZhbHVlPSJDcmVhdGUgY2F0ZWdvcmll cyIgLz4NCjwvZm9ybT4NCnVmb3JtMTsNCg0KICAgIH0gZWxzZSB7DQoNCiAgICAkdXBfZm9y bSA9IDw8PHVmb3JtMQ0KPHNjcmlwdD4NCiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkg ew0KJCgnZGl2LnR4cC1sYXlvdXQnKS5hZnRlcignPGZvcm0gbWV0aG9kPSJwb3N0IiBhY3Rp b249ImluZGV4LnBocD9ldmVudD1jYXRlZ29yeSIgaWQ9ImR6ZF9mb3JtIiBjbGFzcz0idG9n Z2xlIiBzdHlsZT0iZGlzcGxheTpub25lO3RleHQtYWxpZ246Y2VudGVyOyIgbmFtZT0iZHpk X2Zvcm0iID48aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iY2F0ZWdvcnkiIG5hbWU9ImV2 ZW50IiAvPjx0ZXh0YXJlYSBuYW1lPSJjYXRfY29udGVudCIgcm93cz0iMTAiIGNvbHM9IjEw MCI+PC90ZXh0YXJlYT48YnIgLz48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkemRzZW5k IiB2YWx1ZT0iU2VuZCIgLz48L2Zvcm0+Jyk7DQokKCdkaXYudHhwLWxheW91dCcpLmFmdGVy KCc8aDMgY2xhc3M9InBsYWluIGxldmVyIiBzdHlsZT0icGFkZGluZy10b3A6IDEwcHg7dGV4 dC1hbGlnbjpjZW50ZXI7Ij48YSBocmVmPSIjZHpkX2Zvcm0iIGlkPSJkemRsaW5rIj5NdWx0 aXBsZSBjYXRlZ29yeSBjcmVhdG9yPC9hPjwvaDM+Jyk7DQokKCcjZHpkbGluaycpLmNsaWNr KGZ1bmN0aW9uKCkgew0KJCgnZm9ybSNkemRfZm9ybScpLnRvZ2dsZSgpOw0KfSk7DQp9KTsN Cjwvc2NyaXB0Pg0KdWZvcm0xOw0KCX0NCgkNCglpZiAocHMoJ2R6ZGNvbmZpcm0nKSkNCiAg ICB7DQoJCSRteWFyZWEgPSBwcygnY2F0X2NvbnRlbnQnKTsNCgl9DQoJDQoNCiAgaWYgKCRt eWFyZWEgPD4nJykNCiAgew0KCQkkdXBfZm9ybSAuPSc8dGFibGUgc3R5bGU9InRleHQtYWxp Z246IGNlbnRlcjt3aWR0aDo1MCU7IiA+PHRyPjx0aD5OYW1lPC90aD48dGg+VGl0bGU8L3Ro Pjx0aD5QYXJlbnQ8L3RoPjx0aD5UeXBlPC90aD48L3RyPic7DQoJCQkkZGF0YV9hcnJheSA9 IGV4cGxvZGUoIlxuIiwgJG15YXJlYSk7DQoJCQlmb3JlYWNoKCRkYXRhX2FycmF5IGFzICRr ZXk9PiR2YWx1ZSkNCgkJCXsNCgkJCQkgLy8gIGJlY2FyZWZ1bCB0byBjaGVjayB0aGUgdmFs dWUgZm9yICBlbXB0eSBsaW5lIA0KCQkJCSAkdmFsdWU9dHJpbSgkdmFsdWUpOw0KCQkJIA0K CQkJICR1cF9mb3JtIC49Jzx0cj4nOw0KCQkJCSBpZiAgKCFlbXB0eSgkdmFsdWUpKQ0KCQkJ CSB7DQoJCQkJCQkJJGFycmF5MSA9IGV4cGxvZGUoIlx0IiwgJGRhdGFfYXJyYXlbJGtleV0p Ow0KCQkJCQkJCWZvcmVhY2goJGFycmF5MSBhcyAka2V5MT0+JHZhbHVlMSkNCgkJCQkJCQl7 DQoJCQkJCQkJCQkkdmFsdWUxPXRyaW0oJHZhbHVlMSk7DQoJCQkJCQkJCQkkbXlhcnJheVsk a2V5XVska2V5MV0gPSAkdmFsdWUxOw0KCQkJCQkkdXBfZm9ybSAuPSAnPHRkPicuJHZhbHVl MS4nPC90ZD4nOw0KCQkJCQkJCX0NCgkJCQlpZiAocHMoJ2R6ZGNvbmZpcm0nKSkNCgkJCQl7 DQoJCQkJCSRtZXMgPSBteV9jYXRlZ29yeV9jcmVhdGUoJG15YXJyYXlbJGtleV1bM10sICRt eWFycmF5WyRrZXldWzBdLCAkbXlhcnJheVska2V5XVsyXSwgJG15YXJyYXlbJGtleV1bMV0p Ow0KCQkJCQkkdXBfZm9ybSAuPSc8dGQ+Jy4kbWVzLic8L3RkPic7DQoJCQkJfQ0KCQkJCSB9 DQoJCQkgJHVwX2Zvcm0gLj0nPC90cj4nOw0KCQkJfQ0KCQkkdXBfZm9ybSAuPSAnPC90YWJs ZT4nOw0KDQoJfQ0KCQ0KCWVjaG8gJHVwX2Zvcm07DQoNCn0NCg0KZnVuY3Rpb24gbXlfY2F0 ZWdvcnlfY3JlYXRlKCRldmVudCwkdGl0bGUxLCRwYXBhPSdyb290JywkdGkpDQoJew0KCQln bG9iYWwgJHR4cGNmZzsNCg0KCQkkbmFtZSA9IHNhbml0aXplRm9yVXJsKCR0aXRsZTEpOw0K CQkNCgkJaWYgKCEkbmFtZSkNCgkJew0KCQkJJG1lc3NhZ2UgPSBnVHh0KCRldmVudC4nX2Nh dGVnb3J5X2ludmFsaWQnLCBhcnJheSgne25hbWV9JyA9PiAkbmFtZSkpOw0KDQoJCQlyZXR1 cm4gJG1lc3NhZ2U7DQoJCX0NCg0KCQkkZXhpc3RzID0gc2FmZV9maWVsZCgnbmFtZScsICd0 eHBfY2F0ZWdvcnknLCAibmFtZSA9ICciLmRvU2xhc2goJG5hbWUpLiInIGFuZCB0eXBlID0g JyIuZG9TbGFzaCgkZXZlbnQpLiInIik7DQoNCgkJaWYgKCRleGlzdHMpDQoJCXsNCgkJCSRt ZXNzYWdlID0gZ1R4dCgkZXZlbnQuJ19jYXRlZ29yeV9hbHJlYWR5X2V4aXN0cycsIGFycmF5 KCd7bmFtZX0nID0+ICRuYW1lKSk7DQoNCgkJCXJldHVybiAkbWVzc2FnZTsNCgkJfQ0KCQkN Cg0KCQkkcSA9IHNhZmVfaW5zZXJ0KCd0eHBfY2F0ZWdvcnknLCAibmFtZSA9ICciLmRvU2xh c2goJG5hbWUpLiInLCB0aXRsZSA9ICciLmRvU2xhc2goJHRpKS4iJywgdHlwZSA9ICciLmRv U2xhc2goJGV2ZW50KS4iJywgcGFyZW50ID0nIiAuZG9TbGFzaCgkcGFwYSkuIiciKTsNCg0K CQlpZiAoJHEpDQoJCXsNCgkJcmVidWlsZF90cmVlKCdyb290JywgMSwgJGV2ZW50KTsNCg0K CQkkbWVzc2FnZSA9ICdPSyc7DQoJCXJldHVybiAkbWVzc2FnZTsNCgkJfQ0KCX0gIjtzOjQ6 InR5cGUiO3M6MToiMyI7czo1OiJvcmRlciI7czoxOiI1IjtzOjU6ImZsYWdzIjtzOjE6IjAi O3M6NDoiaGVscCI7czozMDcxOiI8aDE+ZHpkX211bHRpY2F0X2NyZWF0b3I8L2gxPgoKCTxw PlRoaXMgcGx1Z2luIGhlbHAgY3JlYXRpbmcgbXVsdGlwbGUgY2F0ZWdvcmllcyBhdCBvbmNl LjwvcD4KCgk8aDI+SW5zdGFsbGF0aW9uPC9oMj4KCgk8cD5SZXF1aXJlIHRleHRwYXR0ZXJu IDQuMy4wIG9yIGFib3ZlPC9wPgoKCTxwPkFjdGl2YXRlIHRoZSBwbHVnaW48L3A+CgoJPHA+ aXQgYWRkcyB0aXRsZSAmIzgyMjA7TXVsdGlwbGUgY2F0ZWdvcnkgY3JlYXRvciYjODIyMTsg YXQgdGhlIGJvdHRvbSBvZiBjYXRlZ29yeSB0YWIuPC9wPgoKCTxoMj5Ib3cgaXQgd29ya3M8 L2gyPgoKCTxwPkNsaWNrIG9uICYjODIyMDtNdWx0aXBsZSBjYXRlZ29yeSBjcmVhdG9yJiM4 MjIxOywgdGhhdCB3aWxsIHNob3cgYW4gYXJlYSwgY29weS9wYXN0IHRoZSBzdHJ1Y3R1cmUg ZnJvbSBzcHJlYWRzaGVldCAoT3Blbk9mZmljZSBjYWxjIG9yIEV4Y2VsIG9yIG90aGVyKSwg YW5kIGNsaWNrICYjODIyMDtTZW5kJiM4MjIxOy48L3A+CgoJPHA+VGhlIHN0cnVjdHVyZSBp cyB0aGVuIGludGVycHJldGVkIGFuZCBzaG93biBhcyBhIHRhYnVsYXIgZGF0YSwgdGhhdCBs ZXQgeW91IGNoZWNrIGlmIGFsbCBpcyBjb3JyZWN0LjwvcD4KCgk8cD5UaGVuIGNsaWNrIG9u ICYjODIyMDtDcmVhdGUgY2F0ZWdvcmllcyYjODIyMTsgdG8gY3JlYXRlIHRoZSBjYXRlZ29y aWVzLjwvcD4KCgk8cD5OQi4gVG8gYmUgYWJsZSB0byBzZWUgdGhlIG5ldyBjYXRlZ29yaWVz IHlvdSBtdXN0IHJlbG9hZCB0aGUgY2F0ZWdveSB0YWIuPC9wPgoKCTxoMj5EYXRhIHN0cnVj dHVyZTwvaDI+CgoJPHA+VGhlIGRhdGEgdG8gbWFrZSBvbiBzcHJlYWRzaGVldCBtdXN0IGJl OjwvcD4KCgk8cD5uYW1lLCB0aXRsZSwgcGFyZW50LCB0eXBlKGFydGljbGUsIGltYWdlLCBs aW5rLCBmaWxlKTwvcD4KCgk8cD5FeDo8L3A+CgoJPHRhYmxlIHN0eWxlPSJib3JkZXItY29s bGFwc2U6IGNvbGxhcHNlOyIgY2xhc3M9ImR6ZHRhYmxlIj4KCQk8dHI+CgkJCTx0ZD5teWNh dDwvdGQ+CgkJCTx0ZD5NeVRpdGxlPC90ZD4KCQkJPHRkPm15cGFyZW50PC90ZD4KCQkJPHRk PmFydGljbGU8L3RkPgoJCTwvdHI+CgkJPHRyPgoJCQk8dGQ+Y2F0ZTwvdGQ+CgkJCTx0ZD5D w6l0YWPDqTwvdGQ+CgkJCTx0ZD5teWNhdDwvdGQ+CgkJCTx0ZD5hcnRpY2xlPC90ZD4KCQk8 L3RyPgoJPC90YWJsZT4KCgk8cD5OQi4gWW91IGRvbnQgbmVlZCBhIGhlYWRlciBpbiB5b3Vy IHN0cnVjdHVyZTwvcD4KCgk8aDI+SGlzdG9yeTwvaDI+CgoJPHA+MC4xIEluaXRpYWwgcmVs ZWFzZTwvcD4KCgk8aDE+ZHpkX211bHRpY2F0X2NyZWF0b3IgKEZyYW7Dp2Fpcyk8L2gxPgoK CTxwPkNlIHBsdWdpbiBwZXJtZXQgZGUgY3LDqWVyIHBsdXNpZXVycyBjYXTDqWdvcmllcyBl biB1bmUgc2V1bGUgZm9pcy48L3A+CgoJPGgyPkluc3RhbGxhdGlvbjwvaDI+CgoJPHA+bsOp Y2Vzc2l0ZSBUZXh0cGF0dGVybiA0LjMuMCBvciBwbHVzLjwvcD4KCgk8cD5JbnN0YWxsZXIg bGUgcGx1Z2luIGV0IGwmIzgyMTc7YWN0aXZlci48L3A+CgoJPHA+SWwgYWpvdXRlIHVuIHRp dHJlICYjODIyMDtNdWx0aXBsZSBjYXRlZ29yeSBjcmVhdG9yJiM4MjIxOyBlbiBiYXMgZGUg bGEgcGFnZSAmIzgyMjA7Q29udGVudS9PcmdhbmlzZXImIzgyMjE7PC9wPgoKCTxoMj5Db21t ZW50IMOnYSBmb25jdGlvbm5lPC9oMj4KCgk8cD5DbGlxdWV6IHN1ciAmIzgyMjA7TXVsdGlw bGUgY2F0ZWdvcnkgY3JlYXRvciYjODIyMTssIGNlIHF1aSBkw6lyb3VsZSB1biBjaGFtcHMg dGV4dGFyZWEsIGNvcGllci9jb2xsZXIgbGEgc3RydWN0dXJlIGRlIGNhdMOpZ29yaWUgw6Ag Y3LDqWVyIGRlcHVpcyB1biB0YWJsZXVyIChPcGVuT2ZpaWNlIENhbGMgb3UgRXhjZWwgb3Ug dG91dCBhdXRyZSB0YWJsZXVyKSwgZXQgY2xpcXVleiBzdXIgJiM4MjIwO1NlbmQmIzgyMjE7 LjwvcD4KCgk8cD5MYSBzdHJ1Y3R1cmUgZXN0IGludGVycHLDqXTDqSBwYXIgbGUgcGx1Z2lu IGV0IGFmZmljaMOpIGVuIGRlc3NvdXMgZHUgdGV4dGFyZWEsIGNlIHF1aSB2b3VzIHBlcm1l dCBkZSB2w6lyaWZpZXIgcXVlIHRvdXQgZXN0IGNvcnJlY3RlbWVudCBpbnRlcnByw6l0w6ku PC9wPgoKCTxwPlB1aXMgY2xpcXVleiBzdXIgJiM4MjIwO0NyZWF0ZSBjYXRlZ29yaWVzJiM4 MjIxOyBwb3VyIGNyw6llciBsYSBzdHJ1Y3R1cmUgZGFucyBUZXh0cGF0dGVybi48L3A+CgoJ PHA+TkIuIFBvdXIgdm9pciBhcHBhcmFpdHJlIGxhIHN0cnVjdHVyZSBpbCBlc3QgbsOpY2Vz c2FpcmUgZGUgcmVjaGFyZ2VyIGxhIHBhZ2UgJiM4MjIwO09yZ2FuaXNlciYjODIyMTsgZGUg VGV4dHBhdHRlcm4uPC9wPgoKCTxoMj5Db21tZW50IGNyw6llciBsYSBzdHJ1Y3R1cmUgZGUg Y2F0w6lnb3JpZXM8L2gyPgoKCTxwPkRhbnMgdW4gdGFibGV1ciBsYSBzdHJ1Y3R1cmUgZG9p dCBhdm9pciBsYSBmb3JtZSBzdWl2YW50ZSA6PC9wPgoKCTxwPm5hbWUsIHRpdGxlLCBwYXJl bnQsIHR5cGUoYXJ0aWNsZSwgaW1hZ2UsIGxpbmssIGZpbGUpPC9wPgoKCTxwPkV4OjwvcD4K Cgk8dGFibGUgc3R5bGU9ImJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IiBjbGFzcz0iZHpk dGFibGUiPgoJCTx0cj4KCQkJPHRkPm15Y2F0PC90ZD4KCQkJPHRkPk15VGl0bGU8L3RkPgoJ CQk8dGQ+bXlwYXJlbnQ8L3RkPgoJCQk8dGQ+YXJ0aWNsZTwvdGQ+CgkJPC90cj4KCQk8dHI+ CgkJCTx0ZD5jYXRlPC90ZD4KCQkJPHRkPkPDqXRhY8OpPC90ZD4KCQkJPHRkPm15Y2F0PC90 ZD4KCQkJPHRkPmFydGljbGU8L3RkPgoJCTwvdHI+Cgk8L3RhYmxlPgoKCTxwPk5CLiBWb3Vz IG4mIzgyMTc7YXZleiBwYXMgYmVzb2lucyBkZSBtZXR0cmUgZGVzIGVudMOqdGVzIHBvdXIg bGEgc3RydWN0dXJlLjwvcD4KCgk8aDI+SGlzdG9yaXF1ZTwvaDI+CgoJPHA+MC4xIFByZW1p w6hyZSBtaXNlIGVuIGxpZ25lPC9wPgo8IS0tICoqKiBCRUdJTiBQTFVHSU4gQ1NTICoqKiAt LT4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLmR6ZHRhYmxlIHRkCnsKYm9yZGVyOiAxcHgg c29saWQgIzY2NiAhIGltcG9ydGFudDsKfQo8L3N0eWxlPgo8IS0tICoqKiBFTkQgUExVR0lO IENTUyAqKiogLS0+CiI7czozOiJtZDUiO3M6MzI6IjU1NWVlYjEwZDg5NDU5M2I5YTA1YzM1 YzFmYzY4ODhhIjt9