ГлавнаяПоддержкаБлог
Главная arrow Исходные тексты arrow function.js/Все функции
function.js/Все функции
Оглавление
function.js/Все функции
Функции работы с адресами, макросами
Учетные записи, Inspector, WordEditor
Перенос текста, квотирование
Параметры шаблона, xml
Конвертирование, HTML, rule
Форматирование, вложения
Инициализация пользователя, регистрация
Hidden message, xml параметры
function GetTextWrap(){
 var Sh = glob('WScript.Shell');
 var key = GetOfficeRegistry()+'Common\\MailSettings\\PlainWrapLen';
 var v;
 try{
  v = Sh.RegRead(key);
 }catch(e){
  v = 76;
 }
 return(v)
}

function GetLastQuote(lq){
 var m = lq.split('\n');
 var CurrentLine = m[m.length-1];
 if(CurrentLine.indexOf('>')>=0&&CurrentLine.indexOf('>')<10){
  return(CurrentLine.substr(0,CurrentLine.indexOf('>')+1)+' ');
 }
 return('')
}

function quote(ss,Symbr){

 if(ss.length==0) return('')
 ss = ss.replace(/\r\n[ \f\t\v\xFF\xA0]+/gi, "\r\n")
 ss = ss.replace(/[ \f\t\v\xFF\xA0]+\r\n/gi, "\r\n")
 ss = ss.replace(/(\r\n){2,}/gi, "\r\n\r\n")
 ss = ss.replace(/\r([^\n])/gi, "\r\n$1")

 var st=0, rr='', fl=0;
 var Wrap = GetTextWrap();// - 10;
 for(var i=0;i<ss.length;i++){
  func.ProcessMessages();
  if(glob('WAIT_CANCEL')>0){return('')}
  if(ss.charAt(i)!='\n'){
   if(st>=Wrap){
    fl=1;
   }
   if(ss.charAt(i)==' '&&fl==1){
    rr+='\r\n'+GetLastQuote(ss.substr(0,i));
    st=0;
    fl=0;
    continue;
   }
   rr+=ss.charAt(i);
   st++;
  }else{
   st=0;
   rr+='\n';
   fl=0;
  }
 }

 var res = rr;
 res = res.replace(/\r\n[ \f\t\v]+/gi, "\r\n")
 res = res.replace(/[ \f\t\v]+\r\n/gi, "\r\n")

   // thanks to Sorcerer-swineherd
   res = res.replace(/^[\s]*/gi, "");
   res = res.replace(/[\s]*$/gi, "");
 var m = res.split('\n');
 res = '';

 for(var i=0;i<m.length;i++){
  func.ProcessMessages();
  if(glob('WAIT_CANCEL')>0){return('')}
  m[i] = m[i].replace(/^[\s]*/gi, "");
  m[i] = m[i].replace(/[\s]*$/gi, "");

  if(glob("QuoteOutlook")){
   m[i] = Symbr+' '+m[i]
  }else{
   if(m[i].length==0){res +='\n'; continue}
   m[i] = QuoteLine(m[i], Symbr);
  }
  res += (i==0?'':'\n')+m[i];
 }
 return(res);
}

function QuoteLine(CurrentLine, Prefix){

 if(CurrentLine.indexOf('>')>=0&&CurrentLine.indexOf('>')<10){
  CurrentLine = CurrentLine.replace(/( *)([^>]*)(>+)( *)(.*)/gi, "$2$3> $5");
 }else{
  CurrentLine = Prefix + CurrentLine.replace(/( *)(.*)( *)/gi, "$2");
 }
 return(CurrentLine)
}

function GetReplyRecipientFull(mmm, WithoutName){
try{
 var gra = GetReplyAddress(mmm);
 if(!WithoutName&&mmm.SafeSenderName){
  return(CreateNormalEMail(mmm.SafeSenderName, gra));
 }else{
  return(gra)
 }
}catch(e){return("")}
}

function GetReplyAddress(mmm){
 var addr="";
 try{
  addr = mmm.Fields(CdoPR_REPLY_RECIPIENT_NAMES)+"";
  if(addr.indexOf("@")<0){ throw("") }
 }catch(e){
  try{
   addr = mmm.Fields(CdoPR_SENT_REPRESENTING_EMAIL_ADDRESS)+"";
   if(isExchangeAddress(addr)){ throw("") }
  }catch(e){
   try{
     addr = mmm.Fields(CdoPR_SENDER_EMAIL_ADDRESS)+"";
     if(isExchangeAddress(addr)){ throw("") }
   }catch(e){
     addr = SenderEMailAddress(mmm)
   }
  }
 }
 return(addr)
}

function SenderEMailAddress(om){
 try{
  return(RecipientAddress(om.Reply().Recipients.Item(1)));
 }catch(e){}
}

function PrivateAddress(om){
 var TagFrom = GetHeaderTag(om, "From");
 if(!TagFrom) return('');
 var regexp = /[\w\.-]+@[\w\.-]+(\.\w{2,})+/gi;
 var EMail;
 if( EMail = regexp.exec(TagFrom)){
  return(EMail[0])
 }
 return('')
}

function GetHeaderTag(om, TagName){
 try{
  var headers = om.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS);
  var Tag;
  var regexp = new RegExp("^"+TagName+": (.+)\r", "gim");

  if(Tag = regexp.exec(headers)){
   headers = Tag[1]
  }
  return(headers)
 }catch(e){}
}

function GetReplyAllRecipientFull(mmm){
 var addr,i;
 addr=GetReplyAddress(mmm);
 return(addr);
}


 


Загрузить Potolook
 
Плагин Potolook для Microsoft Outlook
Ментальная арифметика для детей
© 2004-2012 Позитик. Все права защищены.

Microsoft®, Outlook® и эмблема Office являются охраняемыми товарными знаками корпорации Майкрософт (Microsoft Corporation) в США и/или других странах.
Копирование и использование материалов разрешается только в случае указания явной гиперссылки на сайт http://www.potolook.ru, как на источник получения информации.

Разработка сайта — "Позитик"

Рейтинг@Mail.ru