r6759 | dothebart | 2008-11-24 17:14:03 -0500 (Mon, 24 Nov 2008) | 5 lines
Changed paths:
M /trunk/webcit/auth.c
M /trunk/webcit/gettext.c
M /trunk/webcit/inetconf.c
M /trunk/webcit/messages.c
M /trunk/webcit
r6762 | dothebart | 2008-11-25 13:35:10 -0500 (Tue, 25 Nov 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
* fix 64 bit incompatibility
r6766 | dothebart | 2008-11-25 18:15:33 -0500 (Tue, 25 Nov 2008) | 5 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/static/t/edit_message.html
M /trunk/webcit
0:15 fromdothebart[EMAIL PROTECTED]
Citadel commit log: revision 6766
r6766 | dothebart | 2008-11-25 18:15:33 -0500 (Tue, 25 Nov 2008) | 5 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk
Hm, no, i've just been modding webcit.. libcitadel will definitely be needed
to be latest once we're at it.
r6771 | dothebart | 2008-11-26 19:01:20 -0500 (Wed, 26 Nov 2008) | 4 lines
Changed paths:
M /trunk/webcit/auth.c
M /trunk/webcit/gettext.c
M /trunk/webcit/serv_func.c
M /trunk/webcit/static/t/login.html
M
r6772 | dothebart | 2008-11-29 03:45:48 -0500 (Sat, 29 Nov 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/lib/libcitadel.h
M /trunk/libcitadel/lib/stringbuf.c
* new StrBuf Method: cut it at a given position
r6773 | dothebart | 2008-11-29 03:47:23 -0500 (Sat, 29 Nov 2008) | 3 lines
Changed paths:
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/static/t/edit_message.html
* br's in quotes so you can write before / after them
r6774 | dothebart | 2008-11-29 03:48:41 -0500 (Sat, 29 Nov 2008) | 2 lines
Changed paths:
M /trunk/webcit/msg_renderers.c
* upsie, don't leak.
r6775 | dothebart | 2008-11-29 05:53:19 -0500 (Sat, 29 Nov 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/roomops.c
M /trunk/webcit/subst.c
* valgrind
r6776 | dothebart | 2008-11-29 12:07:41 -0500 (Sat, 29 Nov 2008) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/subst.c
* increase number of messages to 10k as it was before. thanks matt
Ok, fixed the number, its 10k again now.
for libcitadel.. maybe its been a while since you bootstrapped it last? since
the detection in configure was copied from webcits configure line by line..
15:46 frommatt
dothebart: have you tried mail view with a large (1000
r6777 | dothebart | 2008-11-29 12:23:21 -0500 (Sat, 29 Nov 2008) | 2 lines
Changed paths:
M /trunk/webcit/static/t/edit_message.html
* removed double blockquote
r6778 | dothebart | 2008-11-30 18:10:52 -0500 (Sun, 30 Nov 2008) | 4 lines
Changed paths:
M /trunk/webcit/calendar.c
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/rss.c
M /trunk
r6779 | dothebart | 2008-11-30 18:12:01 -0500 (Sun, 30 Nov 2008) | 3 lines
Changed paths:
M /trunk/libcitadel/lib/hash.c
M /trunk/libcitadel/lib/libcitadel.h
M /trunk/libcitadel/lib/stringbuf.c
* zero-safe StrtoI/L
r6782 | dothebart | 2008-12-01 17:55:13 -0500 (Mon, 01 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
* sometimes switches need break statements.
oups... how could this happen?
ah, the bb-view dropdown is slightly broken atm.
did you update libcitadel? I fixed some null-pointer conditions..
r6786 | dothebart | 2008-12-02 16:47:10 -0500 (Tue, 02 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/static/t/login.html
M /trunk/webcit/webcit.c
* fix self service account button
* fix important message handler
r6787 | dothebart | 2008-12-02 17:46:27 -0500 (Tue, 02 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
* load_seen is our only condition for tagging messages
* init startmsg
r6797 | dothebart | 2008-12-07 06:30:15 -0500 (Sun, 07 Dec 2008) | 2 lines
Changed paths:
M /trunk/citadel/modules/expire/serv_expire.c
M /trunk/citadel/modules/openid/serv_openid_rp.c
M /trunk/citadel/modules/vcard
r6796 | dothebart | 2008-12-07 06:29:43 -0500 (Sun, 07 Dec 2008) | 3 lines
Changed paths:
M /trunk/libcitadel/lib/hash.c
M /trunk/libcitadel/lib/libcitadel.h
* Allow hashiterator to do bigger steps than 1 and to go
r6799 | dothebart | 2008-12-07 18:25:04 -0500 (Sun, 07 Dec 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/lib/hash.c
M /trunk/libcitadel/lib/libcitadel.h
* *grml* always tried to avoid this, but can't live without...
r6800 | dothebart | 2008-12-07 18:27:13 -0500 (Sun, 07 Dec 2008) | 4 lines
Changed paths:
M /trunk/webcit/calendar.c
M /trunk/webcit/event.c
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk
r6802 | dothebart | 2008-12-08 16:16:49 -0500 (Mon, 08 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
D /trunk/webcit/static/t/msg_listselector.html
A /trunk/webcit/static/t
r6803 | dothebart | 2008-12-08 17:08:25 -0500 (Mon, 08 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/context_loop.c
M /trunk/webcit/downloads.c
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M
r6808 | dothebart | 2008-12-10 19:00:36 -0500 (Wed, 10 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/context_loop.c
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
A /trunk/webcit/static/t
Mi Dez 10 2008 11:07:09 EST von IGnatius T [EMAIL PROTECTED]
Feh, it's $$$-ware.
the basic version is for free, and does the job for me... you just need to
register to mozplugger to get it.
r6811 | dothebart | 2008-12-11 16:53:23 -0500 (Thu, 11 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/static/t/load_attachments.html
M /trunk/webcit
r6812 | dothebart | 2008-12-11 17:13:50 -0500 (Thu, 11 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
* buyebye pullquote message... byebye duplicate bugs...
Matt, I generaly like what you did.
Some comments:
using wprintf isn't that good anymore, please try not to do it.
probably for most of the message structure there should be replacers, sorry I
didn't add documentation here yet; if you look into the tail of
msg_renderers.c all the
Yay, looking smarter that way, right?
we have two things not yet implemented which I definitely want to have:
* some kind of marker whether there is an attachment in that mail
* threadded lists
on the second one; I'd definitely like to do that in the server, as this
might also become the
r6820 | dothebart | 2008-12-13 05:29:42 -0500 (Sat, 13 Dec 2008) | 5 lines
Changed paths:
M /trunk/webcit/subst.c
* add counter and lastn to iterators:
ITERATE:N - number of actual element in list
ITERATE:LASTN
r6821 | dothebart | 2008-12-13 05:43:38 -0500 (Sat, 13 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/msg_renderers.c
* add matts iterator
r6822 | dothebart | 2008-12-13 06:08:24 -0500 (Sat, 13 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/static/t/section_attach_select.html
M /trunk/webcit/webcit.h
* remove last
r6823 | dothebart | 2008-12-13 06:22:38 -0500 (Sat, 13 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/static/t/view_message.html
* rename RFCA Conditional so it matches the naming
..stuff you find while writing documentation...
r6827 | dothebart | 2008-12-13 09:04:51 -0500 (Sat, 13 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/subst.c
M /trunk/webcit/webserver.c
* don't ignore the last char of a template
* don't access aray indexes
r6828 | dothebart | 2008-12-13 13:39:49 -0500 (Sat, 13 Dec 2008) | 8 lines
Changed paths:
M /trunk/webcit/Makefile.in
M /trunk/webcit/downloads.c
M /trunk/webcit/fmt_date.c
M /trunk/webcit/messages.c
A /trunk
r6830 | dothebart | 2008-12-13 17:36:33 -0500 (Sat, 13 Dec 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/Makefile.in
M /trunk/libcitadel/configure.in
M /trunk/libcitadel/debian/files
M /trunk/libcitadel
r6831 | dothebart | 2008-12-13 17:37:50 -0500 (Sat, 13 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/configure.ac
* remove libz crap, libcitadel does this now.
Sa Okt 18 2008 10:52:23 EDT von directr...@uncnsrd
Betreff: Webcit path for Sitewide/Access/HostAuth
Just a little patch that makes the Enable host based authentication
mode config option show the right value (its showing the inverted value
now).
Directic, i'e applied the patch accidently
r6840 | dothebart | 2008-12-14 17:04:50 -0500 (Sun, 14 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/roomops.c
* fix some conditions with unassigned variable access
Mi Dez 17 2008 14:13:23 EST von IGnatius T foo...@uncnsrd
Better now, but I see a different problem: on a fresh install, for a new
user, the preferences screen is missing a bunch of fields.
hm, yes, once you said it its total clear to me that this had to happen ;)
when heading out on
r6848 | dothebart | 2008-12-18 17:34:10 -0500 (Thu, 18 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/static/t/edit_message.html
* fix signature attachig in message composing
r6854 | dothebart | 2008-12-20 12:15:55 -0500 (Sat, 20 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/gettext.c
M /trunk/webcit/webserver.c
* remove accidently committed test stuff
* NULL that strbuf..
r6855 | dothebart | 2008-12-20 13:18:42 -0500 (Sat, 20 Dec 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/lib/libcitadel.h
M /trunk/libcitadel/lib/tools.c
* const mset pointer, as we don't need to write on it.
r6857 | dothebart | 2008-12-20 13:29:24 -0500 (Sat, 20 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/webcit.h
* msg_is_in_mset isn't here
* move load_seen into its own function
r6858 | dothebart | 2008-12-20 18:50:08 -0500 (Sat, 20 Dec 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/lib/hash.c
* handle negative index condition
r6859 | dothebart | 2008-12-20 18:53:31 -0500 (Sat, 20 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/inetconf.c
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/paramhandling.c
M
to JavaScript. Shouldn't be any
need for one to build their own queries on client-side, named arrays could be
a possibility in the future.
Dec 22 0:38 from dothebart
Citadel commit log: revision 6860
r6870 | dothebart | 2008-12-24 09:01:34 -0500 (Wed, 24 Dec 2008) | 4 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/subst.c
* remove msgids from handling
* make the sorting stuff putbstr, so its all
r6871 | dothebart | 2008-12-24 19:40:45 -0500 (Wed, 24 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/tcp_sockets.c
* don't shut down webcit in the timeout signal handler, sincee we need to serve
the citserver
Mi Dez 24 2008 23:16:53 EST von IGnatius T foo...@uncnsrd
Betreff: Re: re commit r5300
Ig, could you drop some more words on this? which rooms will carry this?
whats webcit to do if it hits them?
Currently we do not render the Journal view in WebCit. It's only there for
the
r6873 | dothebart | 2008-12-26 08:58:30 -0500 (Fri, 26 Dec 2008) | 2 lines
Changed paths:
M /trunk/libcitadel/lib/hash.c
* fix iteration
r6874 | dothebart | 2008-12-26 08:59:37 -0500 (Fri, 26 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/static/t/select_messageindex.html
M /trunk/webcit/webserver.c
* hide message
r6879 | dothebart | 2008-12-27 18:19:17 -0500 (Sat, 27 Dec 2008) | 3 lines
Changed paths:
M /trunk/webcit/downloads.c
M /trunk/webcit/inetconf.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/netconf.c
M
ok, that went half ez. the groupcahnge detection is not yet all done yet.
though once the presentation layer doesn't matter anymore, i'd like to test
this to print out propfind answers, so you can access files via dav.
Mo Dez 29 2008 15:04:33 EST von Ford i...@uncnsrd
(sorry, I just take every chance I get to knock svn)
It does the job. It does it well. Well enough not to invest the time to dig
into a more featured system (and as you might suppose a system offering a
feature subset like CVS is all out
r6884 | dothebart | 2008-12-29 17:49:38 -0500 (Mon, 29 Dec 2008) | 2 lines
Changed paths:
M /trunk/webcit/downloads.c
* add a destructor, else we will loose memory.
stu, Google already found you in advance, I've already added you to
http://www.citadel.org/doku.php?id=installation:start#optional.dependencies
and
http://www.citadel.org/doku.php?id=installation:start#contributed.source.code
please consider providing a lhfs-ified version too;
I'd say, adding a new optional parameter to ITERATE numbering the elements
would be the best thing to do.
That way you could specify it in the templates or preferences (if you change
the template to follow that notation...)
afair from the first starts there is some code in preferences.c to print the
hash on each change into the log, maybe that could help?
I have seen it working well Maybe the change to put the loading into an
abstract function introduced bugs here...
r6912 | dothebart | 2009-01-08 18:11:56 -0500 (Thu, 08 Jan 2009) | 4 lines
Changed paths:
M /trunk/webcit/addressbook_popup.c
M /trunk/webcit/auth.c
M /trunk/webcit/calendar.c
M /trunk/webcit/calendar_view.c
M
could we also add a throbber to the addressbook popup onload?
r6913 | dothebart | 2009-01-09 12:31:42 -0500 (Fri, 09 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/roomops.c
! fix bug with gotoroom introduced in the last version. Thanks Matt for
pointing me there.
r6916 | dothebart | 2009-01-09 16:33:36 -0500 (Fri, 09 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit
M /trunk/webcit/addressbook_popup.c
M /trunk/webcit/debian
M /trunk/webcit/debian/po
M /trunk/webcit
r6927 | dothebart | 2009-01-10 13:04:27 -0500 (Sat, 10 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit/calendar.c
M /trunk/webcit/fmt_date.c
M /trunk/webcit/messages.c
M /trunk/webcit/preferences.c
M /trunk
Ok,
This was one of the first goals I had when I started out templating
everything ;-)
well... maybe I got distracted getting the templating stuff done neat ;-)
Yes, I figured it out that way. It was a bit fiddling, but I managed to get
it all down so that just one struct was needed. Thats smart, because of all
functions can work genericaly on mime parts.
Probably your fix did the right thing [TM]
One thing thats still buggy is:
mime (
r6934 | dothebart | 2009-01-11 15:17:57 -0500 (Sun, 11 Jan 2009) | 4 lines
Changed paths:
M /trunk/webcit/downloads.c
M /trunk/webcit/messages.c
M /trunk/webcit/preferences.c
M /trunk/webcit/preferences.h
M
r6935 | dothebart | 2009-01-11 17:44:15 -0500 (Sun, 11 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/subst.c
+ all special token parameters may now have their string in braces like
?bla(:(foo))
r6942 | dothebart | 2009-01-12 15:14:46 -0500 (Mon, 12 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/msg_renderers.c
M /trunk/webcit/roomops.c
M /trunk/webcit/subst.c
M /trunk
r6946 | dothebart | 2009-01-12 18:31:20 -0500 (Mon, 12 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/setup.c
+ let the admin select the locales to preset / not set at install time; unset
LANG in the no-preset case.
hm, why do messages show up centered right now? Matt? its just some...
I'm surfing uncensored with SVN Head webcit.
r6952 | dothebart | 2009-01-14 18:46:21 -0500 (Wed, 14 Jan 2009) | 5 lines
Changed paths:
M /trunk/webcit/auth.c
M /trunk/webcit/downloads.c
M /trunk/webcit/graphics.c
M /trunk/webcit/messages.c
M /trunk/webcit
hm, upsi. I actualy broke s.th.
matt, concerning
Conditional_ROOM_DISPLAY_MSG and Conditional_MAIL_SUMM_LASTMSG;
we have to find a more generic way to achieve what you want to do here.
two thoughts on this:
we could add optional parameters to ITERATE; plus we have a way to retrieve
r6953 | dothebart | 2009-01-14 19:23:48 -0500 (Wed, 14 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/subst.c
M /trunk/webcit/subst.h
* temporarily disable parameter-checking. Conditionals don't contain enough
r6954 | dothebart | 2009-01-15 18:32:22 -0500 (Thu, 15 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/subst.c
M /trunk/webcit/subst.h
* document function calls and structures
Fr Jan 16 2009 04:43:59 EST von m...@comalies (comalies)
I'm going through the changes right now, but I've run into a problem with
another iterator (LKRA):
gdb) frame 0
#0 0x0002a008 in CheckContext (Target=0x25d320, Need=0x2164a0,
TP=0xb0281294, ErrType=0x679a6 Conditional) at subst.c:204
r6961 | dothebart | 2009-01-18 11:55:06 -0500 (Sun, 18 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/preferences.c
! fix crash in X-Preferences API; return NULL if not found.
r6962 | dothebart | 2009-01-18 14:33:45 -0500 (Sun, 18 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit/messages.c
M /trunk/webcit/subst.c
M /trunk/webcit/webserver.c
+ add flag to print backtraces in template
r6967 | dothebart | 2009-01-19 15:43:53 -0500 (Mon, 19 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/static/t/iconbar.html
M /trunk/webcit/static/t/msgcontrols.m.html
* applied samjams fix. Note: /static is also
r6979 | dothebart | 2009-01-22 04:48:50 -0500 (Thu, 22 Jan 2009) | 2 lines
Changed paths:
M /trunk/citadel/modules/openid/serv_openid_rp.c
* make it const so gcc doesn't moan
r6980 | dothebart | 2009-01-22 04:49:52 -0500 (Thu, 22 Jan 2009) | 2 lines
Changed paths:
M /trunk/citadel/citadel_dirs.c
M /trunk/citadel/citadel_dirs.h
+ beautification: remove double slashes from filenames
how'bout adding a user templated CSS?
you could add preferences for the font sizes which show up there...
zap solution for apple cinema display users and eee pc users.
hm, something strange with current webcit stable; didn't test that with SVN
Head yet...
If you create a Allday Event, and save it, it goes back to the day-view, but
the newly created event isn't displayed; re-entering that day it will show
up.
the del key on your keyboard..
r6985 | dothebart | 2009-01-24 16:02:14 -0500 (Sat, 24 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/po/de.po
* fix text in translation; thanks to Dirk Heinrichs for pointing this ou; fixes
#450
r6992 | dothebart | 2009-01-25 11:03:49 -0500 (Sun, 25 Jan 2009) | 3 lines
Changed paths:
M /trunk/libcitadel/Makefile.in
M /trunk/libcitadel/configure.in
M /trunk/libcitadel/debian/rules
A /trunk/libcitadel/lib
This is the backend needed to signal errormessages to firephp, a firebug
plugin.
I'm going to replace the messages into the templates by these.
That way errormessages won't garble the layout anymore, and you can debug
templates in a proper manner.
So Jan 25 2009 08:40:03 EST von m...@comalies (comalies)
Just some notes out of the last commit:
* I created http://www.citadel.org/doku.php/faq:everydayuse:webcit_browser
to officially state what browsers work well and why some features don't work
in IE. A link to there has been placed on
r6993 | dothebart | 2009-01-25 16:31:24 -0500 (Sun, 25 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit/auth.c
M /trunk/webcit/groupdav_main.c
M /trunk/webcit/listsub.c
M /trunk/webcit/locate_host.c
M /trunk
I've tried to structure the wcsession a little, grouped those who will just
have a lifetime of one request, which data they contain, Maybe we should
split it up later by these bounds.
as mentioned above, do a make clean, bootstrap configure run, just to be
shure.
r6994 | dothebart | 2009-01-25 19:28:20 -0500 (Sun, 25 Jan 2009) | 5 lines
Changed paths:
M /trunk/libcitadel/lib/json.c
M /trunk/libcitadel/lib/libcitadel.h
M /trunk/libcitadel/lib/stringbuf.c
M /trunk/libcitadel
r6995 | dothebart | 2009-01-25 19:30:22 -0500 (Sun, 25 Jan 2009) | 2 lines
Changed paths:
M /trunk/webcit/context_loop.c
M /trunk/webcit/roomops.c
* handle new strbufs in wcsession correctly
r6996 | dothebart | 2009-01-25 19:30:54 -0500 (Sun, 25 Jan 2009) | 3 lines
Changed paths:
M /trunk/webcit/subst.c
M /trunk/webcit/webcit.c
M /trunk/webcit/webcit.h
* add wildfire output to errormessages
ok, It's working. Tiny Howto:
* install firebug in firefox
* install firephp in firefox
* click on the tiny brown bug in the loer right
* use ^ to make firebug its own window
* enable the konsole and the network monitor for your devel webcit host
* enable firephp for your devel host
We definitely have a problem with citadel messing up on upgrade to SVN Head.
My work installation just made the same as my test-installation.
all rooms where gone in all room listings, I could enter them with goto
hidden room, it would barf some errors at me, and after that it will be
normal
r7000 | dothebart | 2009-01-26 12:41:39 -0500 (Mon, 26 Jan 2009) | 2 lines
Changed paths:
M /trunk/libcitadel/debian/files
M /trunk/libcitadel/lib/vcard.c
* use memcpy instead of strcpy, as here we know how many chars
601 - 700 of 2260 matches
Mail list logo