- fputs ($imapConnection, "sub SUBSCRIBE \"$newone\"\n");
- $data = imapReadData($imapConnection, "sub", true, $a, $b);
+ if (isset($isfolder)) {
+ $newone = $newone.$dm;
+ $orig = $orig.$dm;
+ }
+ sqimap_unsubscribe($imapConnection, $orig);
+ sqimap_subscribe($imapConnection, $newone);
+
+ fputs ($imapConnection, sqimap_session_id() . " LIST \"\" \"" . quoteIMAP($newone) .
+ "*\"\r\n");
+ $data = sqimap_read_data($imapConnection, sqimap_session_id(), true, $a, $b);
+ for ($i=0; $i < count($data); $i++)
+ {
+ $name = find_mailbox_name($data[$i]);
+
+ if ($name != $newone) // don't try to resubscribe when renaming ab to abc
+ {
+ sqimap_unsubscribe($imapConnection, $name);
+ $name = substr($name, strlen($orig));
+ $name = $newone . $name;
+ sqimap_subscribe($imapConnection, $name);
+ }
+ }