summaryrefslogtreecommitdiff
authoralwin <alwin>2004-01-03 13:10:06 (UTC)
committer alwin <alwin>2004-01-03 13:10:06 (UTC)
commit45ace73de06a645d5876ad40a6d911f7ea24c69b (patch) (unidiff)
tree53a33b99444d0a7210c9c1b55d5a1fe3a7465b7c
parent622bddce6d0cd41c765225f4743b23bf1667f3db (diff)
downloadopie-45ace73de06a645d5876ad40a6d911f7ea24c69b.zip
opie-45ace73de06a645d5876ad40a6d911f7ea24c69b.tar.gz
opie-45ace73de06a645d5876ad40a6d911f7ea24c69b.tar.bz2
multipart subtype will stored lower like in singleparts
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/imapwrapper.cpp3
-rw-r--r--noncore/net/mail/libmailwrapper/imapwrapper.cpp3
2 files changed, 4 insertions, 2 deletions
diff --git a/noncore/net/mail/imapwrapper.cpp b/noncore/net/mail/imapwrapper.cpp
index ae196bb..b437df0 100644
--- a/noncore/net/mail/imapwrapper.cpp
+++ b/noncore/net/mail/imapwrapper.cpp
@@ -587,129 +587,130 @@ void IMAPwrapper::traverseBody(const RecMail&mail,mailimap_body*body,RecBody&tar
587 } 587 }
588 traverseBody(mail,current_body,target_body,current_recursion+1,countlist,ccount); 588 traverseBody(mail,current_body,target_body,current_recursion+1,countlist,ccount);
589 if (current_body->bd_type==MAILIMAP_BODY_MPART) { 589 if (current_body->bd_type==MAILIMAP_BODY_MPART) {
590 countlist = recList; 590 countlist = recList;
591 } 591 }
592 ++ccount; 592 ++ccount;
593 } 593 }
594 } 594 }
595 break; 595 break;
596 default: 596 default:
597 break; 597 break;
598 } 598 }
599} 599}
600 600
601void IMAPwrapper::fillSinglePart(RecPart&target_part,mailimap_body_type_1part*Description) 601void IMAPwrapper::fillSinglePart(RecPart&target_part,mailimap_body_type_1part*Description)
602{ 602{
603 if (!Description) { 603 if (!Description) {
604 return; 604 return;
605 } 605 }
606 switch (Description->bd_type) { 606 switch (Description->bd_type) {
607 case MAILIMAP_BODY_TYPE_1PART_TEXT: 607 case MAILIMAP_BODY_TYPE_1PART_TEXT:
608 target_part.setType("text"); 608 target_part.setType("text");
609 fillSingleTextPart(target_part,Description->bd_data.bd_type_text); 609 fillSingleTextPart(target_part,Description->bd_data.bd_type_text);
610 break; 610 break;
611 case MAILIMAP_BODY_TYPE_1PART_BASIC: 611 case MAILIMAP_BODY_TYPE_1PART_BASIC:
612 fillSingleBasicPart(target_part,Description->bd_data.bd_type_basic); 612 fillSingleBasicPart(target_part,Description->bd_data.bd_type_basic);
613 break; 613 break;
614 case MAILIMAP_BODY_TYPE_1PART_MSG: 614 case MAILIMAP_BODY_TYPE_1PART_MSG:
615 target_part.setType("message"); 615 target_part.setType("message");
616 fillSingleMsgPart(target_part,Description->bd_data.bd_type_msg); 616 fillSingleMsgPart(target_part,Description->bd_data.bd_type_msg);
617 break; 617 break;
618 default: 618 default:
619 break; 619 break;
620 } 620 }
621} 621}
622 622
623void IMAPwrapper::fillSingleTextPart(RecPart&target_part,mailimap_body_type_text*which) 623void IMAPwrapper::fillSingleTextPart(RecPart&target_part,mailimap_body_type_text*which)
624{ 624{
625 if (!which) { 625 if (!which) {
626 return; 626 return;
627 } 627 }
628 QString sub; 628 QString sub;
629 sub = which->bd_media_text; 629 sub = which->bd_media_text;
630 qDebug("Type= text/%s",which->bd_media_text); 630 qDebug("Type= text/%s",which->bd_media_text);
631 target_part.setSubtype(sub.lower()); 631 target_part.setSubtype(sub.lower());
632 target_part.setLines(which->bd_lines); 632 target_part.setLines(which->bd_lines);
633 fillBodyFields(target_part,which->bd_fields); 633 fillBodyFields(target_part,which->bd_fields);
634} 634}
635 635
636void IMAPwrapper::fillSingleMsgPart(RecPart&target_part,mailimap_body_type_msg*which) 636void IMAPwrapper::fillSingleMsgPart(RecPart&target_part,mailimap_body_type_msg*which)
637{ 637{
638 if (!which) { 638 if (!which) {
639 return; 639 return;
640 } 640 }
641 target_part.setSubtype("rfc822"); 641 target_part.setSubtype("rfc822");
642 qDebug("Message part"); 642 qDebug("Message part");
643 /* we set this type to text/plain */ 643 /* we set this type to text/plain */
644 target_part.setLines(which->bd_lines); 644 target_part.setLines(which->bd_lines);
645 fillBodyFields(target_part,which->bd_fields); 645 fillBodyFields(target_part,which->bd_fields);
646} 646}
647 647
648void IMAPwrapper::fillMultiPart(RecPart&target_part,mailimap_body_type_mpart*which) 648void IMAPwrapper::fillMultiPart(RecPart&target_part,mailimap_body_type_mpart*which)
649{ 649{
650 if (!which) return; 650 if (!which) return;
651 target_part.setSubtype(which->bd_media_subtype); 651 QString sub = which->bd_media_subtype;
652 target_part.setSubtype(sub.lower());
652 if (which->bd_ext_mpart && which->bd_ext_mpart->bd_parameter && which->bd_ext_mpart->bd_parameter->pa_list) { 653 if (which->bd_ext_mpart && which->bd_ext_mpart->bd_parameter && which->bd_ext_mpart->bd_parameter->pa_list) {
653 clistcell*cur = 0; 654 clistcell*cur = 0;
654 mailimap_single_body_fld_param*param=0; 655 mailimap_single_body_fld_param*param=0;
655 for (cur = clist_begin(which->bd_ext_mpart->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) { 656 for (cur = clist_begin(which->bd_ext_mpart->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) {
656 param = (mailimap_single_body_fld_param*)cur->data; 657 param = (mailimap_single_body_fld_param*)cur->data;
657 if (param) { 658 if (param) {
658 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value)); 659 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value));
659 } 660 }
660 } 661 }
661 } 662 }
662} 663}
663 664
664void IMAPwrapper::fillSingleBasicPart(RecPart&target_part,mailimap_body_type_basic*which) 665void IMAPwrapper::fillSingleBasicPart(RecPart&target_part,mailimap_body_type_basic*which)
665{ 666{
666 if (!which) { 667 if (!which) {
667 return; 668 return;
668 } 669 }
669 QString type,sub; 670 QString type,sub;
670 switch (which->bd_media_basic->med_type) { 671 switch (which->bd_media_basic->med_type) {
671 case MAILIMAP_MEDIA_BASIC_APPLICATION: 672 case MAILIMAP_MEDIA_BASIC_APPLICATION:
672 type = "application"; 673 type = "application";
673 break; 674 break;
674 case MAILIMAP_MEDIA_BASIC_AUDIO: 675 case MAILIMAP_MEDIA_BASIC_AUDIO:
675 type = "audio"; 676 type = "audio";
676 break; 677 break;
677 case MAILIMAP_MEDIA_BASIC_IMAGE: 678 case MAILIMAP_MEDIA_BASIC_IMAGE:
678 type = "image"; 679 type = "image";
679 break; 680 break;
680 case MAILIMAP_MEDIA_BASIC_MESSAGE: 681 case MAILIMAP_MEDIA_BASIC_MESSAGE:
681 type = "message"; 682 type = "message";
682 break; 683 break;
683 case MAILIMAP_MEDIA_BASIC_VIDEO: 684 case MAILIMAP_MEDIA_BASIC_VIDEO:
684 type = "video"; 685 type = "video";
685 break; 686 break;
686 case MAILIMAP_MEDIA_BASIC_OTHER: 687 case MAILIMAP_MEDIA_BASIC_OTHER:
687 default: 688 default:
688 if (which->bd_media_basic->med_basic_type) { 689 if (which->bd_media_basic->med_basic_type) {
689 type = which->bd_media_basic->med_basic_type; 690 type = which->bd_media_basic->med_basic_type;
690 } else { 691 } else {
691 type = ""; 692 type = "";
692 } 693 }
693 break; 694 break;
694 } 695 }
695 if (which->bd_media_basic->med_subtype) { 696 if (which->bd_media_basic->med_subtype) {
696 sub = which->bd_media_basic->med_subtype; 697 sub = which->bd_media_basic->med_subtype;
697 } else { 698 } else {
698 sub = ""; 699 sub = "";
699 } 700 }
700 qDebug("Type = %s/%s",type.latin1(),sub.latin1()); 701 qDebug("Type = %s/%s",type.latin1(),sub.latin1());
701 target_part.setType(type.lower()); 702 target_part.setType(type.lower());
702 target_part.setSubtype(sub.lower()); 703 target_part.setSubtype(sub.lower());
703 fillBodyFields(target_part,which->bd_fields); 704 fillBodyFields(target_part,which->bd_fields);
704} 705}
705 706
706void IMAPwrapper::fillBodyFields(RecPart&target_part,mailimap_body_fields*which) 707void IMAPwrapper::fillBodyFields(RecPart&target_part,mailimap_body_fields*which)
707{ 708{
708 if (!which) return; 709 if (!which) return;
709 if (which->bd_parameter && which->bd_parameter->pa_list && which->bd_parameter->pa_list->count>0) { 710 if (which->bd_parameter && which->bd_parameter->pa_list && which->bd_parameter->pa_list->count>0) {
710 clistcell*cur; 711 clistcell*cur;
711 mailimap_single_body_fld_param*param=0; 712 mailimap_single_body_fld_param*param=0;
712 for (cur = clist_begin(which->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) { 713 for (cur = clist_begin(which->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) {
713 param = (mailimap_single_body_fld_param*)cur->data; 714 param = (mailimap_single_body_fld_param*)cur->data;
714 if (param) { 715 if (param) {
715 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value)); 716 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value));
diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
index ae196bb..b437df0 100644
--- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
@@ -587,129 +587,130 @@ void IMAPwrapper::traverseBody(const RecMail&mail,mailimap_body*body,RecBody&tar
587 } 587 }
588 traverseBody(mail,current_body,target_body,current_recursion+1,countlist,ccount); 588 traverseBody(mail,current_body,target_body,current_recursion+1,countlist,ccount);
589 if (current_body->bd_type==MAILIMAP_BODY_MPART) { 589 if (current_body->bd_type==MAILIMAP_BODY_MPART) {
590 countlist = recList; 590 countlist = recList;
591 } 591 }
592 ++ccount; 592 ++ccount;
593 } 593 }
594 } 594 }
595 break; 595 break;
596 default: 596 default:
597 break; 597 break;
598 } 598 }
599} 599}
600 600
601void IMAPwrapper::fillSinglePart(RecPart&target_part,mailimap_body_type_1part*Description) 601void IMAPwrapper::fillSinglePart(RecPart&target_part,mailimap_body_type_1part*Description)
602{ 602{
603 if (!Description) { 603 if (!Description) {
604 return; 604 return;
605 } 605 }
606 switch (Description->bd_type) { 606 switch (Description->bd_type) {
607 case MAILIMAP_BODY_TYPE_1PART_TEXT: 607 case MAILIMAP_BODY_TYPE_1PART_TEXT:
608 target_part.setType("text"); 608 target_part.setType("text");
609 fillSingleTextPart(target_part,Description->bd_data.bd_type_text); 609 fillSingleTextPart(target_part,Description->bd_data.bd_type_text);
610 break; 610 break;
611 case MAILIMAP_BODY_TYPE_1PART_BASIC: 611 case MAILIMAP_BODY_TYPE_1PART_BASIC:
612 fillSingleBasicPart(target_part,Description->bd_data.bd_type_basic); 612 fillSingleBasicPart(target_part,Description->bd_data.bd_type_basic);
613 break; 613 break;
614 case MAILIMAP_BODY_TYPE_1PART_MSG: 614 case MAILIMAP_BODY_TYPE_1PART_MSG:
615 target_part.setType("message"); 615 target_part.setType("message");
616 fillSingleMsgPart(target_part,Description->bd_data.bd_type_msg); 616 fillSingleMsgPart(target_part,Description->bd_data.bd_type_msg);
617 break; 617 break;
618 default: 618 default:
619 break; 619 break;
620 } 620 }
621} 621}
622 622
623void IMAPwrapper::fillSingleTextPart(RecPart&target_part,mailimap_body_type_text*which) 623void IMAPwrapper::fillSingleTextPart(RecPart&target_part,mailimap_body_type_text*which)
624{ 624{
625 if (!which) { 625 if (!which) {
626 return; 626 return;
627 } 627 }
628 QString sub; 628 QString sub;
629 sub = which->bd_media_text; 629 sub = which->bd_media_text;
630 qDebug("Type= text/%s",which->bd_media_text); 630 qDebug("Type= text/%s",which->bd_media_text);
631 target_part.setSubtype(sub.lower()); 631 target_part.setSubtype(sub.lower());
632 target_part.setLines(which->bd_lines); 632 target_part.setLines(which->bd_lines);
633 fillBodyFields(target_part,which->bd_fields); 633 fillBodyFields(target_part,which->bd_fields);
634} 634}
635 635
636void IMAPwrapper::fillSingleMsgPart(RecPart&target_part,mailimap_body_type_msg*which) 636void IMAPwrapper::fillSingleMsgPart(RecPart&target_part,mailimap_body_type_msg*which)
637{ 637{
638 if (!which) { 638 if (!which) {
639 return; 639 return;
640 } 640 }
641 target_part.setSubtype("rfc822"); 641 target_part.setSubtype("rfc822");
642 qDebug("Message part"); 642 qDebug("Message part");
643 /* we set this type to text/plain */ 643 /* we set this type to text/plain */
644 target_part.setLines(which->bd_lines); 644 target_part.setLines(which->bd_lines);
645 fillBodyFields(target_part,which->bd_fields); 645 fillBodyFields(target_part,which->bd_fields);
646} 646}
647 647
648void IMAPwrapper::fillMultiPart(RecPart&target_part,mailimap_body_type_mpart*which) 648void IMAPwrapper::fillMultiPart(RecPart&target_part,mailimap_body_type_mpart*which)
649{ 649{
650 if (!which) return; 650 if (!which) return;
651 target_part.setSubtype(which->bd_media_subtype); 651 QString sub = which->bd_media_subtype;
652 target_part.setSubtype(sub.lower());
652 if (which->bd_ext_mpart && which->bd_ext_mpart->bd_parameter && which->bd_ext_mpart->bd_parameter->pa_list) { 653 if (which->bd_ext_mpart && which->bd_ext_mpart->bd_parameter && which->bd_ext_mpart->bd_parameter->pa_list) {
653 clistcell*cur = 0; 654 clistcell*cur = 0;
654 mailimap_single_body_fld_param*param=0; 655 mailimap_single_body_fld_param*param=0;
655 for (cur = clist_begin(which->bd_ext_mpart->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) { 656 for (cur = clist_begin(which->bd_ext_mpart->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) {
656 param = (mailimap_single_body_fld_param*)cur->data; 657 param = (mailimap_single_body_fld_param*)cur->data;
657 if (param) { 658 if (param) {
658 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value)); 659 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value));
659 } 660 }
660 } 661 }
661 } 662 }
662} 663}
663 664
664void IMAPwrapper::fillSingleBasicPart(RecPart&target_part,mailimap_body_type_basic*which) 665void IMAPwrapper::fillSingleBasicPart(RecPart&target_part,mailimap_body_type_basic*which)
665{ 666{
666 if (!which) { 667 if (!which) {
667 return; 668 return;
668 } 669 }
669 QString type,sub; 670 QString type,sub;
670 switch (which->bd_media_basic->med_type) { 671 switch (which->bd_media_basic->med_type) {
671 case MAILIMAP_MEDIA_BASIC_APPLICATION: 672 case MAILIMAP_MEDIA_BASIC_APPLICATION:
672 type = "application"; 673 type = "application";
673 break; 674 break;
674 case MAILIMAP_MEDIA_BASIC_AUDIO: 675 case MAILIMAP_MEDIA_BASIC_AUDIO:
675 type = "audio"; 676 type = "audio";
676 break; 677 break;
677 case MAILIMAP_MEDIA_BASIC_IMAGE: 678 case MAILIMAP_MEDIA_BASIC_IMAGE:
678 type = "image"; 679 type = "image";
679 break; 680 break;
680 case MAILIMAP_MEDIA_BASIC_MESSAGE: 681 case MAILIMAP_MEDIA_BASIC_MESSAGE:
681 type = "message"; 682 type = "message";
682 break; 683 break;
683 case MAILIMAP_MEDIA_BASIC_VIDEO: 684 case MAILIMAP_MEDIA_BASIC_VIDEO:
684 type = "video"; 685 type = "video";
685 break; 686 break;
686 case MAILIMAP_MEDIA_BASIC_OTHER: 687 case MAILIMAP_MEDIA_BASIC_OTHER:
687 default: 688 default:
688 if (which->bd_media_basic->med_basic_type) { 689 if (which->bd_media_basic->med_basic_type) {
689 type = which->bd_media_basic->med_basic_type; 690 type = which->bd_media_basic->med_basic_type;
690 } else { 691 } else {
691 type = ""; 692 type = "";
692 } 693 }
693 break; 694 break;
694 } 695 }
695 if (which->bd_media_basic->med_subtype) { 696 if (which->bd_media_basic->med_subtype) {
696 sub = which->bd_media_basic->med_subtype; 697 sub = which->bd_media_basic->med_subtype;
697 } else { 698 } else {
698 sub = ""; 699 sub = "";
699 } 700 }
700 qDebug("Type = %s/%s",type.latin1(),sub.latin1()); 701 qDebug("Type = %s/%s",type.latin1(),sub.latin1());
701 target_part.setType(type.lower()); 702 target_part.setType(type.lower());
702 target_part.setSubtype(sub.lower()); 703 target_part.setSubtype(sub.lower());
703 fillBodyFields(target_part,which->bd_fields); 704 fillBodyFields(target_part,which->bd_fields);
704} 705}
705 706
706void IMAPwrapper::fillBodyFields(RecPart&target_part,mailimap_body_fields*which) 707void IMAPwrapper::fillBodyFields(RecPart&target_part,mailimap_body_fields*which)
707{ 708{
708 if (!which) return; 709 if (!which) return;
709 if (which->bd_parameter && which->bd_parameter->pa_list && which->bd_parameter->pa_list->count>0) { 710 if (which->bd_parameter && which->bd_parameter->pa_list && which->bd_parameter->pa_list->count>0) {
710 clistcell*cur; 711 clistcell*cur;
711 mailimap_single_body_fld_param*param=0; 712 mailimap_single_body_fld_param*param=0;
712 for (cur = clist_begin(which->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) { 713 for (cur = clist_begin(which->bd_parameter->pa_list);cur!=NULL;cur=clist_next(cur)) {
713 param = (mailimap_single_body_fld_param*)cur->data; 714 param = (mailimap_single_body_fld_param*)cur->data;
714 if (param) { 715 if (param) {
715 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value)); 716 target_part.addParameter(QString(param->pa_name).lower(),QString(param->pa_value));