[Citadel Development] clarify terms in license
[Citadel Development] Wondering how we ever got by with narrow terminals
[Citadel Development] End support for libical <2.0
[Citadel Development] serv_calendar.c: basically reformatting for modern standards
[Citadel Development] serv_calendar.c: basically reformatting for modern standards
[Citadel Development] dammit, learn to spell
[Citadel Development] serv_calendar.c: more formatting changes
[Citadel Development] Continuing the war against C89-style comments
[Citadel Development] That about wraps it up for serv_calendar.c
[Citadel Development] The little LEDs on the NanoPi blink when there is activity.
[Citadel Development] Can you tell I'm REALLY avoiding another task right now?
[Citadel Development] This time I'm waiting for the computer.
[Citadel Development] Still waiting...
[Citadel Development] Still waiting for the computer. Or rather, for other computers.
[Citadel Development] The damn thing finished. Let's see what it did.
[Citadel Development] START_CHAT_MODE is renamed to SEND_THEN_RECV
[Citadel Development] Don't log each table open/close, just the whole operation
[Citadel Development] Experimenting with the code layout for calendar report handling.
[Citadel Development] move calendar prototypes around, add more with cproto
[Citadel Development] updated description
[Citadel Development] move calendar prototypes around, add more with cproto
[Citadel Development] Experimenting with the code layout for calendar report handling.
The goal is to provide calendar searches (date range etc) for both WebCit-NG and for CALDAV REPORT method in a DRY way.
[Citadel Development] Don't log each table open/close, just the whole operation
[Citadel Development] START_CHAT_MODE is renamed to SEND_THEN_RECV
This protocol mode began almost 30 years ago when we handled real time chat by holding a session open and moving data back and forth until told to stop. We don't do that anymore, but there are several places where a command requires sending long data in both directions. SEND_THEN_RECV is a better
[Citadel Development] The damn thing finished. Let's see what it did.
[Citadel Development] This time I'm waiting for the computer.
[Citadel Development] Still waiting...
[Citadel Development] Still waiting for the computer. Or rather, for other computers.
[Citadel Development] Can you tell I'm REALLY avoiding another task right now?
[Citadel Development] The little LEDs on the NanoPi blink when there is activity.
It's fun to watch. It's fun to build on ARM first and try x86 later.
[Citadel Development] Continuing the war against C89-style comments
[Citadel Development] That about wraps it up for serv_calendar.c
Seeing this code has really brought me back to the upstairs room in my old house where I wrote most of it back in 2002-2003. I can see the sunlight coming in the windows, the color of the carpet, the little alcove where the computer was, the cat sleeping on top of the big CRT monitor. Hopefully t
[Citadel Development] serv_calendar.c: more formatting changes
[Citadel Development] serv_calendar.c: basically reformatting for modern standards
When I wrote this stuff I had a 109 column screen. Now our standard is 132 columns. Also we are seeking and destroying any place where spaces were used as indentation. Our code is indented with tabs, the way God intended.
[Citadel Development] dammit, learn to spell
Many years ago, someone inserted an enum called eMesageText into the code and used it all over the place without correcting the spelling. This commit finally fixes it.
[Citadel Development] serv_calendar.c: basically reformatting for modern standards
When I wrote this stuff I had a 109 column screen. Now our standard is 132 columns. Also we are seeking and destroying any place where spaces were used as indentation. Our code is indented with tabs, the way God intended.
[Citadel Development] End support for libical <2.0
[Citadel Development] Wondering how we ever got by with narrow terminals
[Citadel Development] clarify terms in license
[Citadel Development] In case you haven't figured it out yet...
This is what I do when I'm avoiding some other task.
[Citadel Development] dumploadtest.sh: added an exit 0 to the top of the script.
This is a testing script intended for developers. The last thing we need is for some dumbass to run it without knowing what it does, and then come to us complaining that it deleted their database.
[Citadel Development] style cleanup
[Citadel Development] Grammar change in the license declaration.
Many of the files say "use, duplication, or disclosure ARE subject to..." but the common phrasing of this statement is apparently "use, duplication, or disclosure IS subject to..." We are already taking great delight in the fact that we are using the GPL without using Stallman's preferred declarat
[Citadel Development] More C99-style comments.
[Citadel Development] serv_func.c: simplify IDEN command
Remove parameters no longer used
[Citadel Development] The sooner we can put webcit-classic out to pasture the better.
Between its origin as a shitty web application that I built when I had no idea what the hell I was doing, to all of the ways other people fucked it up later, this thing needs to die. As soon as possible.
[Citadel Development] Utilities displaying a color banner now use line drawing characters to form a...
Utilities displaying a color banner now use line drawing characters to form a box instead of clearing to the end of the line with the background color. The latter does not have the desired effect on all terminals.
[Citadel Development] context.c: last_purge is local to dead_session_purge()
[Citadel Development] Changes to server session timeouts.
CLIENT_TIMEOUT was found in the header files but not used anywhere. Removed. dont_term was removed because it was not needed anywhere anymore.
[Citadel Development] Remove sock_close and sock_shutdown 'portability' defs.
[Citadel Development] It is the current year. (c)-2024
[Citadel Development] serv_session.c: style update
[Citadel Development] Removed the dev_code, cli_code, and rev_level fields from the server session.
[Citadel Development] Starting to bring over calendar server code from webcit-classic.
[Citadel Development] view_calendar.js: finalized a fetch design pattern
This uses "fetch" followed by ".then" etc. etc. etc. and is tuned to be a design pattern for future code
[Citadel Development] calendar_view.c (from webcit-classic) : clean up
Style and comments cleanup. Some of this code is going to get copied over to WebCit-NG so we need to bring it up to our current coding standards (K&R, 1TBF, with C99-style comments)
[Citadel Development] Worked out the syntax for requesting a calendar range
[Citadel Development] moar skeleton
[Citadel Development] webcit.h: regenerated function prototypes using cproto
[Citadel Development] calendar_functions.c: added skeleton
[Citadel Development] room_functions.c: get_msglist() now returns Array
Previously it returned a long* which contained a list of longs. Assembling this required the same allocation logic used in our array class, so now we're just using the array class.
[Citadel Development] Changed the arrangement of bytes in the universe
[Citadel Development] Updated copyright date in files where git blame shows 2023 mods
[Citadel Development] Added stub renderers for Calendar and Contacts rooms
[Citadel Development] views.js: convert strings to template literals
[Citadel Development] Found a place where 1TBS was not used, and fixed it.
1TBS is important. People who do not use 1TBS are literally Hitler.
[Citadel Development] I really like template literals.
And now that I know how to use them, I will be using more of them.
[Citadel Development] More template literals.
[Citadel Development] Tuned up the CSS on more banner buttons
[Citadel Development] Make the font sizes less cartoonish at extreme viewport sizes
[Citadel Development] When forwarding an email, pre-load its attachments.
This completes the effort to server-side-preload the attachments from the original message. They appear as attachments in the forwarded copy of the message in the composer, using the same API. A lot of effort went into making the 'attach' and 'forward attachments' functions DRY with respect to ea
[Citadel Development] serv_smtpclient.c: style cleanup
Mostly just made stuff look nice in 132 columns
[Citadel Development] upload.c: completed the code to reload attachments.
Now we have an API call to load attachments from existing messages instead of from the browser. This is the server side API. Still need to integrate it into the client.
[Citadel Development] view_mail.js: don't list attachments in a quote or forward
[Citadel Development] upload.c: skeleton code for load_attachments_from_message()
[Citadel Development] uploads.c: made the syslog less verbose
Also documented the JSON return values in api.txt
[Citadel Development] view_mail.js: more improvements to mail forwarding
* "Fwd:" instead of "Re:" * The "--- forwarded message ---" po string is carried over from webcit-classic * Make the editor aware that a message is being forwarded * TODO: load attachments from the message being forwarded
[Citadel Development] Keep the "Attachments:" button updated.
When an attachment is added or removed using the upload window, also update the count in the button.
[Citadel Development] "Number of attachments" div name is now variable.
Actually it's an array of strings, and the upload module will update every div stored in there with the attachment count.
[Citadel Development] view_mail.js: remove upload from local array when deleted.
This makes the Attachments: counter decrement correctly.
[Citadel Development] view_mail.js: removed the is_quoted parameter.
is_quoted is now determined by whether quoted_msgnum is nonzero. In mail, we always pull quote for replies.
[Citadel Development] view_mail.js: fixed handling of references field
[Citadel Development] Converting recipient arrays to recipient strings:
Fixed the dedupe so it works before now, and also made it DRY.
[Citadel Development] databaselayout.md: updated to remove networking
[Citadel Development] Fixing the parameters sent to the mail composer.
Reply/ReplyAll/Forward need some things that are not strings and the source arrays seem to still be in scope, so we go with that. Need to tune this up some more. Some things are still missing, such as the references and reply msgnum.
[Citadel Development] view_mail.js: make the Forward button appear.
Needs a lot of work. Currently it is just a reply with no addressees filled in. It needs to not quote the message, and carry over the attachments.
[Citadel Development] "make cc/bcc visible" now makes BOTH visible.
Somewhere along the line it lost CC and only showed BCC.
[Citadel Development] serv_extensions.c: style cleanup from 30,000 feet
No, I'm not takin a broader view of the code. I'm actually on an airplane.
[Citadel Development] mail view: focus the cursor in the correct place when composing
[Citadel Development] Focus on "To:" for new messages, body for replies.
[Citadel Development] Only attempt to insert quote when replying to mail.
Also do that after rendering the attachments window. Doing it before doesn't work. I don't know why.
[Citadel Development] Restored the gap before the "Hi From Stu" sound.
Now I see why he put it there in the first place. Some players (including the one in my browser) cut off the first bit of sound.
[Citadel Development] Removed temporary diagnostic output
[Citadel Development] upload.js: when removing an attachment, delete the div
This is handled the usual way, when we get a successful response from the HTTP DELETE method, it triggers the removal of the list element showing the attachment.
[Citadel Development] When a mail compose is canceled, flush all uploads.
Most of this was already in place. We now just run through our upload list and do an async DELETE operation for each one.
[Citadel Development] upload.js: moved the delete-an-attachment skeleton code to its own function
[Citadel Development] Fixed the MIME boundary after the message text.
It had the trailing dashes in it, so it was getting interpreted as the end of the message. Now that's corrected and the parsers of the world are happy. Also, we eliminated the double-nesting thing, and everything is hunky dory now.
[Citadel Development] Quoted-printable encode HTML messages on the WebCit Server side.
This allows us to do multipart with attachments without nested encoding.
[Citadel Development] webcit-ng: fixed the way HTTP uploads are fed into the MIME Parser.
mime_parser() expects HEADERS+CONTENT but our h.request_body only contains CONTENT. The fix: our transaction struct now has h.request_body_with_synth_headers that begins with a synthetic Content-Type: header followed by a blank line and then the request body. h.request_body is now just a pointer i
[Citadel Development] Looks like I need to remove some optimization cancer from mime_parser.c, but...
Looks like I need to remove some optimization cancer from mime_parser.c, but first, a bit of style cleanup.