home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 November / CPNL0711.ISO / communic / email / Evolution-2.8.2-2.msi / Data1.cab / searchtypes.xml < prev    next >
Extensible Markup Language  |  2007-03-07  |  13KB  |  515 lines

  1. <?xml version="1.0"?>
  2. <filterdescription>
  3. <partset>
  4.  <part name="sender">
  5.   <title>Sender</title>
  6.    <input type="optionlist" name="sender-type">
  7.     <option value="contains">
  8.         <title>contains</title>
  9.     <code>(match-all (header-contains "From" ${sender}))</code>
  10.     </option>
  11.     <option value="not contains">
  12.         <title>does not contain</title>
  13.         <code>(match-all (not (header-contains "From" ${sender})))</code>
  14.     </option>
  15.     <option value="is">
  16.         <title>is</title>
  17.     <code>(match-all (header-matches "From" ${sender}))</code>
  18.     </option>
  19.     <option value="is not">
  20.         <title>is not</title>
  21.         <code>(match-all (not (header-matches "From" ${sender})))</code>
  22.     </option>
  23.     <option value="starts with">
  24.      <title>starts with</title>
  25.      <code>
  26.         (match-all (header-starts-with "From" ${sender}))
  27.      </code>
  28.     </option>
  29.     <option value="not starts with">
  30.      <title>does not start with</title>
  31.      <code>
  32.         (match-all (not (header-starts-with "From" ${sender})))
  33.      </code>
  34.     </option>
  35.     <option value="ends with">
  36.      <title>ends with</title>
  37.      <code>
  38.         (match-all (header-ends-with "From" ${sender}))
  39.      </code>
  40.     </option>
  41.     <option value="not ends with">
  42.      <title>does not end with</title>
  43.      <code>
  44.         (match-all (not (header-ends-with "From" ${sender})))
  45.      </code>
  46.     </option>
  47.    </input>
  48.    <input type="string" name="sender"/>
  49.  </part>
  50.  
  51.  <part name="to">
  52.    <title>Recipients</title>
  53.    <input type="optionlist" name="recipient-type">
  54.     <option value="contains">
  55.      <title>contains</title>
  56.      <code>
  57.     (match-all (or (header-contains "To" ${recipient})
  58.                    (header-contains "Cc" ${recipient})))
  59.      </code>
  60.     </option>
  61.     <option value="not contains">
  62.      <title>does not contain</title>
  63.      <code>
  64.     (match-all (not (or
  65.                           (header-contains "To" ${recipient})
  66.                       (header-contains "Cc" ${recipient}))))
  67.      </code>
  68.     </option>
  69.     <option value="is">
  70.      <title>is</title>
  71.      <code>
  72.     (match-all (or (header-matches "To" ${recipient})
  73.                    (header-matches "Cc" ${recipient})))
  74.      </code>
  75.     </option>
  76.     <option value="is not">
  77.      <title>is not</title>
  78.      <code>
  79.     (match-all (not (or
  80.                (header-matches "To" ${recipient})
  81.            (header-matches "Cc" ${recipient}))))
  82.      </code>
  83.     </option>
  84.     <option value="starts with">
  85.      <title>starts with</title>
  86.      <code>
  87.         (match-all (or (header-starts-with "To" ${recipient})
  88.                    (header-starts-with "Cc" ${recipient})))
  89.      </code>
  90.     </option>
  91.     <option value="not starts with">
  92.      <title>does not start with</title>
  93.      <code>
  94.         (match-all (not (or
  95.                (header-starts-with "To" ${recipient})
  96.            (header-starts-with "Cc" ${recipient}))))
  97.      </code>
  98.     </option>
  99.     <option value="ends with">
  100.      <title>ends with</title>
  101.      <code>
  102.         (match-all (or (header-ends-with "To" ${recipient})
  103.                    (header-ends-with "Cc" ${recipient})))
  104.      </code>
  105.     </option>
  106.     <option value="not ends with">
  107.      <title>does not end with</title>
  108.      <code>
  109.         (match-all (not (or
  110.                (header-ends-with "To" ${recipient})
  111.            (header-ends-with "Cc" ${recipient}))))
  112.      </code>
  113.     </option>
  114.    </input>
  115.    <input type="address" name="recipient"/>
  116.  </part>
  117.  
  118.  <part name="subject">
  119.    <title>Subject</title>
  120.    <input type="optionlist" name="subject-type">
  121.     <option value="contains">
  122.      <title>contains</title>
  123.      <code>
  124.     (match-all (header-contains "Subject" ${subject}))
  125.      </code>
  126.     </option>
  127.     <option value="not contains">
  128.      <title>does not contain</title>
  129.      <code>
  130.     (match-all (not (header-contains "Subject" ${subject})))
  131.      </code>
  132.     </option>
  133.     <option value="is">
  134.      <title>is</title>
  135.      <code>
  136.     (match-all (header-matches "Subject" ${subject}))
  137.      </code>
  138.     </option>
  139.     <option value="is not">
  140.      <title>is not</title>
  141.      <code>
  142.     (match-all (not (header-matches "Subject" ${subject})))
  143.      </code>
  144.     </option>
  145.     <option value="starts with">
  146.      <title>starts with</title>
  147.      <code>
  148.     (match-all (header-starts-with "Subject" ${subject}))
  149.      </code>
  150.     </option>
  151.     <option value="not starts with">
  152.      <title>does not start with</title>
  153.      <code>
  154.     (match-all (not (header-starts-with "Subject" ${subject})))
  155.      </code>
  156.     </option>
  157.     <option value="ends with">
  158.      <title>ends with</title>
  159.      <code>
  160.     (match-all (header-ends-with "Subject" ${subject}))
  161.      </code>
  162.     </option>
  163.     <option value="not ends with">
  164.      <title>does not end with</title>
  165.      <code>
  166.     (match-all (not (header-ends-with "Subject" ${subject})))
  167.      </code>
  168.     </option>
  169.    </input>
  170.    <input type="string" name="subject"/>
  171.  </part>
  172.  <part name="body">
  173.    <title>Message Body</title>
  174.    <input type="optionlist" name="body-type">
  175.     <option value="contains">
  176.      <title>contains</title>
  177.      <code>
  178.     (body-contains ${word})
  179.      </code>
  180.     </option>
  181.     <option value="not contains">
  182.      <title>does not contain</title>
  183.      <code>
  184.     (not (body-contains ${word}))
  185.      </code>
  186.     </option>
  187.    </input>
  188.    <input type="string" name="word"/>
  189.  </part>
  190.  <part name="sexp">
  191.    <title>Expression</title>
  192.    <input type="code" name="code"/>
  193.  </part>
  194.  
  195.  <part name="sent-date">
  196.   <title>Date sent</title>
  197.   <input type="optionlist" name="date-spec-type">
  198.    <option value="is">
  199.     <title>is</title>
  200.     <code>
  201.        (match-all (= (get-sent-date) ${versus}))
  202.     </code>
  203.    </option>
  204.    <option value="is-not">
  205.     <title>is not</title>
  206.     <code>
  207.        (match-all (not (= (get-sent-date) ${versus})))
  208.     </code>
  209.    </option>
  210.    <option value="before">
  211.     <title>is before</title>
  212.     <code>
  213.        (match-all (< (get-sent-date) ${versus}))
  214.     </code>
  215.    </option>
  216.    <option value="after">
  217.     <title>is after</title>
  218.     <code>
  219.        (match-all (> (get-sent-date) ${versus}))
  220.     </code>
  221.    </option>
  222.   </input>    
  223.   <input type="datespec" name="versus"/>
  224.  </part>
  225.  
  226.  <part name="recv-date">
  227.   <title>Date received</title>
  228.   <input type="optionlist" name="date-spec-type">
  229.    <option value="is">
  230.     <title>is</title>
  231.     <code>
  232.        (match-all (= (get-received-date) ${versus}))
  233.     </code>
  234.    </option>
  235.    <option value="is-not">
  236.     <title>is not</title>
  237.     <code>
  238.        (match-all (not (= (get-received-date) ${versus})))
  239.     </code>
  240.    </option>
  241.    <option value="before">
  242.     <title>is before</title>
  243.     <code>
  244.        (match-all (< (get-received-date) ${versus}))
  245.     </code>
  246.    </option>
  247.    <option value="after">
  248.     <title>is after</title>
  249.     <code>
  250.        (match-all (> (get-received-date) ${versus}))
  251.     </code>
  252.    </option>
  253.   </input>    
  254.   <input type="datespec" name="versus"/>
  255.  </part>
  256.  
  257.  <part name="label">
  258.   <title>Label</title>
  259.   <input type="optionlist" name="label-type">
  260.    <option value="is">
  261.     <title>is</title>
  262.     <code>
  263.        (match-all (= (user-tag "label") ${versus}))
  264.     </code>
  265.    </option>
  266.    <option value="is-not">
  267.     <title>is not</title>
  268.     <code>
  269.        (match-all (not (= (user-tag "label") ${versus})))
  270.     </code>
  271.    </option>
  272.   </input>
  273.   <input type="label" name="versus"/>
  274.  </part>
  275.  
  276.  <part name="score">
  277.   <title>Score</title>
  278.   <input type="optionlist" name="score-type">
  279.    <option value="is">
  280.     <title>is</title>
  281.     <code>
  282.        (match-all (= (cast-int (user-tag "score")) ${versus}))
  283.     </code>
  284.    </option>
  285.    <option value="is-not">
  286.     <title>is not</title>
  287.     <code>
  288.        (match-all (not (= (cast-int (user-tag "score")) ${versus})))
  289.     </code>
  290.    </option>
  291.    <option value="greater-than">
  292.     <title>is greater than</title>
  293.     <code>
  294.        (match-all (> (cast-int (user-tag "score")) ${versus}))
  295.     </code>
  296.    </option>
  297.    <option value="less-than">
  298.     <title>is less than</title>
  299.     <code>
  300.        (match-all (< (cast-int (user-tag "score")) ${versus}))
  301.     </code>
  302.    </option>
  303.   </input>
  304.   <input type="score" name="versus"/>
  305.  </part>
  306.  
  307.  <part name="size">
  308.   <title>Size (kB)</title>
  309.   <input type="optionlist" name="size-type">
  310.    <option value="greater-than">
  311.     <title>is greater than</title>
  312.     <code>
  313.        (match-all (> (get-size) ${versus}))
  314.     </code>
  315.    </option>
  316.    <option value="less-than">
  317.     <title>is less than</title>
  318.     <code>
  319.        (match-all (< (get-size) ${versus}))
  320.     </code>
  321.    </option>
  322.   </input>
  323.   <input type="integer" name="versus"/>
  324.  </part>
  325.  
  326.  <part name="status">
  327.   <title>Status</title>
  328.   <input type="optionlist" name="match-type">
  329.    <option value="is">
  330.     <title>is</title>
  331.     <code>
  332.      (match-all (system-flag ${flag}))
  333.     </code>
  334.    </option>
  335.    <option value="is not">
  336.     <title>is not</title>
  337.     <code>
  338.      (match-all (not (system-flag ${flag})))
  339.     </code>
  340.    </option>
  341.   </input>
  342.   <input type="optionlist" name="flag">
  343.    <option value="Answered">
  344.     <title>Replied to</title>
  345.    </option>
  346.    <option value="Deleted">
  347.     <title>Deleted</title>
  348.    </option>
  349.    <option value="Draft">
  350.     <title>Draft</title>
  351.    </option>
  352.    <option value="Flagged">
  353.     <title>Important</title>
  354.    </option>
  355.    <option value="Seen">
  356.     <title>Read</title>
  357.    </option>
  358.   </input>
  359.  </part>
  360.  
  361.  <part name="follow-up">
  362.   <title>Follow Up</title>
  363.   <input type="optionlist" name="match-type">
  364.    <option value="is">
  365.     <title>is Flagged</title>
  366.     <code>
  367.      (match-all (not (= (user-tag "follow-up") "")))
  368.     </code>
  369.    </option>
  370.    <option value="is not">
  371.     <title>is not Flagged</title>
  372.     <code>
  373.      (match-all (= (user-tag "follow-up") ""))
  374.     </code>
  375.    </option>
  376.   </input>
  377.  </part>
  378.  
  379.  <part name="attachments">
  380.   <title>Attachments</title>
  381.   <input type="optionlist" name="match-type">
  382.    <option value="exist">
  383.     <title>Exist</title>
  384.     <code>
  385.      (match-all (system-flag "Attachments"))
  386.     </code>
  387.    </option>
  388.    <option value="not exist">
  389.     <title>Do Not Exist</title>
  390.     <code>
  391.      (match-all (not (system-flag "Attachments")))
  392.     </code>
  393.    </option>
  394.   </input>
  395.  </part>
  396.  
  397.  <part name="mlist">
  398.   <title>Mailing list</title>
  399.    <input type="optionlist" name="mlist-type">
  400.     <option value="is">
  401.         <title>is</title>
  402.         <code>(match-all (header-matches "x-camel-mlist" ${mlist}))</code>
  403.     </option>
  404.     <option value="is not">
  405.         <title>is not</title>
  406.         <code>(match-all (not (header-matches "x-camel-mlist" ${mlist})))</code>
  407.     </option>
  408.     <option value="contains">
  409.         <title>contains</title>
  410.         <code>(match-all (header-contains "x-camel-mlist" ${mlist}))</code>
  411.     </option>
  412.     <option value="not contains">
  413.         <title>does not contain</title>
  414.         <code>(match-all (not (header-contains "x-camel-mlist" ${mlist})))</code>
  415.     </option>
  416.    </input>
  417.    <input type="string" name="mlist"/>
  418.  </part>
  419.  
  420.     <part name="all">
  421.       <title>Match All</title>
  422.       <code>
  423.        (match-all #t)
  424.       </code>
  425.     </part>
  426.  
  427. </partset>
  428.  
  429.   <ruleset>
  430.  
  431.     <rule grouping="any" source="demand">
  432.       <_title>Subject or Sender contains</_title>
  433.       <partset>
  434.         <part name="subject">
  435.           <value name="subject-type" type="option" value="contains"/>
  436.           <value name="subject" type="string"/>
  437.         </part>
  438.         <part name="sender">
  439.           <value name="sender-type" type="option" value="contains"/>
  440.           <value name="sender" type="string"/>
  441.         </part>
  442.       </partset>
  443.       <sources/>
  444.     </rule>
  445.  
  446.     <rule grouping="any" source="demand">
  447.       <_title>Recipients contain</_title>
  448.       <partset>
  449.         <part name="to">
  450.           <value name="recipient-type" type="option" value="contains"/>
  451.           <value name="recipient" type="address"/>
  452.         </part>
  453.       </partset>
  454.       <sources/>
  455.     </rule>
  456.  
  457.     <rule grouping="any" source="demand">
  458.       <_title>Message contains</_title>
  459.       <partset>
  460.         <part name="subject">
  461.           <value name="subject-type" type="option" value="contains"/>
  462.           <value name="subject" type="string"/>
  463.         </part>
  464.         <part name="body">
  465.           <value name="body-type" type="option" value="contains"/>
  466.           <value name="word" type="string"/>
  467.         </part>
  468.         <part name="sender">
  469.           <value name="sender-type" type="option" value="contains"/>
  470.           <value name="sender" type="string"/>
  471.         </part>
  472.         <part name="to">
  473.           <value name="recipient-type" type="option" value="contains"/>
  474.           <value name="recipient" type="address"/>
  475.         </part>
  476.       </partset>
  477.       <sources/>
  478.     </rule>
  479.  
  480.     <rule grouping="any" source="demand">
  481.       <_title>Subject contains</_title>
  482.       <partset>
  483.         <part name="subject">
  484.           <value name="subject-type" type="option" value="contains"/>
  485.           <value name="subject" type="string"/>
  486.         </part>
  487.       </partset>
  488.       <sources/>
  489.     </rule>
  490.  
  491.     <rule grouping="any" source="demand">
  492.       <_title>Sender contains</_title>
  493.       <partset>
  494.         <part name="sender">
  495.           <value name="sender-type" type="option" value="contains"/>
  496.           <value name="sender" type="string"/>
  497.         </part>
  498.       </partset>
  499.       <sources/>
  500.     </rule>
  501.  
  502.     <rule grouping="any" source="demand">
  503.       <_title>Body contains</_title>
  504.       <partset>
  505.         <part name="body">
  506.           <value name="body-type" type="option" value="contains"/>
  507.           <value name="word" type="string"/>
  508.         </part>
  509.       </partset>
  510.       <sources/>
  511.     </rule>
  512.  
  513.   </ruleset>
  514. </filterdescription>
  515.