World: r3wp
[Core] Discuss core issues
older newer | first last |
Gabriele 14-May-2006 [4385x3] | sorry, should be: digits: charset "1234567890" reverse rewrite reverse "1234567890" [[x: 4 digits] [(copy/part x 3) "," (pick x 4)]] |
>> digits: charset "1234567890" reverse rewrite reverse "1234567890" [[x: 4 digits] [(copy/part x 3) "," (pick x 4)]] == "1,234,567,890" | |
i wouldn't suggest doing it this way though ;) | |
Graham 14-May-2006 [4388x2] | to-comma: func [ n [number!] /local tx result ][ tx: reverse form n result: copy "" while [ not tail? tx ][ repend result [ part: copy/part tx 3] tx: skip tx 3 if all [ not tail? tx 3 = length? part ][ append result "," ] ] reverse result ] |
no decimals ... | |
Gabriele 14-May-2006 [4390] | don't forget that if you use comma to group digits, you can't load it back in rebol anymore. |
Graham 14-May-2006 [4391x3] | Rebol uses ' as a separator |
to-comma: func [ n [number!] /local tx result parts left right ][ one-comma: func [ tx /local result ][ result: copy "" while [ not tail? tx ][ repend result [ part: copy/part tx 3] tx: skip tx 3 if all [ not tail? tx 3 = length? part ][ append result "," ] ] result ] parts: parse tx: form n "." left: reverse one-comma reverse parts/1 either found? parts/2 [ right: one-comma parts/2 rejoin [ left "." right ] ][ left ] ] handles decimal points as well. | |
>> to-comma 1 == "1" >> to-comma 1234 == "1,234" >> to-comma .1 == "0.1" >> to-comma .1234 == "0.123,4" >> to-comma 1234.1234 == "1,234.123,4" | |
Joe 15-May-2006 [4394x3] | I have trouble sending a BCC email with the new send function. Can anybody verify ? (I am using authenticated smtp) |
h: make system/standard/email [ BCC: [copy-:-domain-:-com]] | |
send/header [to-:-email-:-com] msg h | |
Anton 15-May-2006 [4397x2] | Vaguely I think it should be: reduce ['bcc [copy-:-domain-:-com]] |
no sorry, let me try... | |
Graham 15-May-2006 [4399] | don't think send supports cc |
Anton 15-May-2006 [4400] | Yes, that's right, SEND is BCC by default. Note the /show refinement: /show "Show all recipients in the TO field" That means by default they are not shown. |
Joe 15-May-2006 [4401x4] | looking at send source, /show just clears the header to field, so it works when you send to multiple recipients and each one doesn't see who else received the email. When a message is sent to a single recipient the client shows the message is directed to you anyway. The trouble is this is not bcc |
In this case, each message is individually addressed with only the recipient's email name appearing in the To field (similar to BCC addressing). | |
http://www.rebol.com/docs/core23/rebolcore-13.html- section 9.2 | |
Sorry, the above to posts refer to the Core 2.3 docs. I have trouble with the "similar to bcc" If someone can provide some hints on how I should handle BCC then I will modify send source. To me this is a bug (i submitted to RAMBO) and I don't see what's the point of having BCC field in the standard header if this field is ignored | |
Graham 15-May-2006 [4405x3] | if you want bcc, just send the mail again addressed to the bcc recipient. |
I think those fields are telling the email client how to send them. It is up to you to implement them. | |
I can't think of any reason why an email client should ever receive an email with a bcc field. | |
Joe 15-May-2006 [4408x5] | Graham, I tried that but you get the same email than before with a different recipient but no BCC. I want to use BCC for some archiving project so I want to preserve the original To field like in real Bcc messages |
Graham, I am not in the corporate world, but when I was Bcc was one of the hottest features, so many people used it to copy managers without the recipients being aware. I did like that use but it was widely accepted method to keep people in the loop | |
I did like --> I meant I didn't like | |
A semi-solution to this problem has been posted in RAMBO http://www.rebol.net/cgi-bin/rambo.r?id=4103& | |
This is a hack because the message shows the original headers so it's not true bcc but it partly solves my problem thanks | |
Brock 15-May-2006 [4413x2] | Joe, I had problems with BCC in a corporate mass emailing I did. Even though it did not display the email address in the mail client, if you viewed the header of the mail message the BCC content was there. |
A disgruntled recepient spammed the entire BCC list indicating our company didn't care or respect their privacy... just my luck.. .this was the first attempt to use Rebol for a valuable task at this job!! :-( | |
Maxim 15-May-2006 [4415] | <ouch!> |
Joe 15-May-2006 [4416x2] | smtp-port: open [scheme: 'esmtp] msg: head insert insert tail net-utils/export o-h newline msg insert smtp-port reduce [v-from reduce [v-to] msg] insert smtp-port reduce [v-from reduce [v-bcc] msg] |
Hi Brock, this is how I fixed the bcc issue. I set up the right headers in o-h and then send the to message and afterwards the bcc message | |
Anton 16-May-2006 [4418x2] | Joe, did you mean that the BCC field with all the addresses should appear in the header of every recipient's email ? |
If so, then that's not how it's supposed to work. BCC really does mean "blind carbon copy". The recipient should have no way of knowing other addresses. Your only standards-conformant remedy is to use CC. | |
Henrik 16-May-2006 [4420] | is system/locale ever used for anything beyond the date requester? it would be nice if it were possible to localize date! type |
Gabriele 16-May-2006 [4421x3] | send - i think there is a lot of confusion here |
the BCC header field is a field used by mail clients to let users type addresses that will *not* be included in the header. it is, basically, a user interface. back at the time mail clients did not have a gui, and just processed mail from a file or by letting you type them on the terminal | |
so what a mail client does, is reading the mail, collecting the addresses from to, cc, and bcc, removing the bcc lines, and then sending the message to the collected addresses. | |
Pekr 16-May-2006 [4424] | yes, B should stand for Blind .... it should prevent disclosing the person, you sent copy to .... |
Gabriele 16-May-2006 [4425x6] | but send is not a mail client. it is a function to send email messages. |
what send does (and should do!) is sending the specified message to the specified list of addresses. send does *not* collect the addresses from the mail header. | |
to make things easier, send will fill in a default mail header if the user has not provided one. however, if you are after something more complex than send [luke-:-rebol-:-com] "hi!" then you probably will want to pass your own header. | |
this header is sent as-is, except for a couple things such as setting To if you haven't set it (this is so you can have a header template and send many messages with it easily) | |
what send does *not* do and *should not* do is remove or change other header lines. in particular it will not remove any bcc: lines. the reason is, that you should *not* pass them at all, because it makes no sense. | |
now, since this is a very common error among users, it may be useful to let send remove bcc. personally, i will vote against this, because i prefer educating users (documentation) rather than keeping them stupid and happy. ;) even in the case we do it, send is still *not* collecting the addresses from bcc anyway - so we're just wasting time removing something that someone wasted time adding. | |
Graham 16-May-2006 [4431] | how about implementing an 'email function that does bcc etc? |
Gabriele 16-May-2006 [4432] | so what you need to do now to send a message is - just send/header [list of addresses] msg header, with header being composed correctly - to should have what you want your recipients to see in to, from should have what you want your recipients to see in from, and so on; there should *not* be any bcc lines. |
Graham 16-May-2006 [4433] | It just needs to wrap around send. |
Gabriele 16-May-2006 [4434] | graham: that's a good idea and the desktop already has something like that, a gui that lets you type to subject and message. we could just add bcc and cc |
older newer | first last |