Commit graph

158 commits

Author SHA1 Message Date
friendica
972780c3ce whitespace 2015-03-09 16:28:06 -07:00
friendica
26a414fe4b make network page default options work more or less universally instead of just from the navbar, and fix some saved-search weirdness related to the delete-term icon 2015-03-09 16:27:12 -07:00
friendica
e157371c39 remote_user => remote_channel 2015-01-28 20:58:59 -08:00
friendica
a496036066 local_user => local_channel 2015-01-28 20:56:04 -08:00
Stefan Parviainen
34ecbcceea Make nav search use textcomplete 2015-01-07 19:39:50 +01:00
Stefan Parviainen
ce88f0ab6a Add hint on how to use search box 2014-12-14 18:40:59 +01:00
Stefan Parviainen
513efc8928 Add some ids to nav elements 2014-12-12 16:27:45 +01:00
Habeas Codice
ac27db22c1 Merge remote-tracking branch 'upstream/master'
Conflicts:
	boot.php
	include/dba/dba_driver.php
	include/diaspora.php
	include/follow.php
	include/session.php
	include/zot.php
	mod/photos.php
	mod/ping.php
2014-11-13 13:06:31 -08:00
Habeas Codice
1a5a5c7edb PostgreSQL support initial commit
There were 11 main types of changes:
- UPDATE's and DELETE's sometimes had LIMIT 1 at the end of them. This is not only non-compliant but
it would certainly not do what whoever wrote it thought it would. It is likely this mistake was just
copied from Friendica. All of these instances, the LIMIT 1 was simply removed.
- Bitwise operations (and even some non-zero int checks) erroneously rely on MySQL implicit
integer-boolean conversion in the WHERE clauses. This is non-compliant (and bad programming practice
to boot). Proper explicit boolean conversions were added. New queries should use proper conventions.
- MySQL has a different operator for bitwise XOR than postgres. Rather than add yet another dba_
func, I converted them to "& ~" ("AND NOT") when turning off, and "|" ("OR") when turning on. There
were no true toggles (XOR). New queries should refrain from using XOR when not necessary.
- There are several fields which the schema has marked as NOT NULL, but the inserts don't specify
them. The reason this works is because mysql totally ignores the constraint and adds an empty text
default automatically. Again, non-compliant, obviously. In these cases a default of empty text was
added.
- Several statements rely on a non-standard MySQL feature
(http://dev.mysql.com/doc/refman/5.5/en/group-by-handling.html). These queries can all be rewritten
to be standards compliant. Interestingly enough, the newly rewritten standards compliant queries run
a zillion times faster, even on MySQL.
- A couple of function/operator name translations were needed (RAND/RANDOM, GROUP_CONCAT/STRING_AGG,
UTC_NOW, REGEXP/~, ^/#) -- assist functions added in the dba_
- INTERVALs: postgres requires quotes around the value, mysql requires that there are not quotes
around the value -- assist functions added in the dba_
- NULL_DATE's -- Postgres does not allow the invalid date '0000-00-00 00:00:00' (there is no such
thing as year 0 or month 0 or day 0). We use '0001-01-01 00:00:00' for postgres. Conversions are
handled in Zot/item packets automagically by quoting all dates with dbescdate().
- char(##) specifications in the schema creates fields with blank spaces that aren't trimmed in the
code. MySQL apparently treats char(##) as varchar(##), again, non-compliant. Since postgres works
better with text fields anyway, this ball of bugs was simply side-stepped by using 'text' datatype
for all text fields in the postgres schema. varchar was used in a couple of places where it actually
seemed appropriate (size constraint), but without rigorously vetting that all of the PHP code
actually validates data, new bugs might come out from under the rug.
- postgres doesn't store nul bytes and a few other non-printables in text fields, even when quoted.
bytea fields were used when storing binary data (photo.data, attach.data). A new dbescbin() function
was added to handle this transparently.
- postgres does not support LIMIT #,# syntax. All databases support LIMIT # OFFSET # syntax.
Statements were updated to be standard.

These changes require corresponding changes in the coding standards. Please review those before
adding any code going forward.

Still on my TODO list:
- remove quotes from non-reserved identifiers and make reserved identifiers use dba func for quoting
- Rewrite search queries for better results (both MySQL and Postgres)
2014-11-13 12:21:58 -08:00
Stefan Parviainen
24bdf58d2b Use consistent terminology for channel directory 2014-11-09 09:37:06 +01:00
friendica
bae3029c63 merge madness 2014-10-19 16:12:05 -07:00
Stefan Parviainen
6867a8a7f6 Login menu 2014-10-16 17:21:37 +02:00
marijus
f9200027d0 fix userinfo icon size 2014-10-09 11:31:48 +02:00
friendica
9135ad30d8 network page default option 2014-10-04 23:53:05 -07:00
friendica
5292e3a100 implement a "powered-by" but leave it turned off until somebody with a good eye for layout can figure out where best to put it. 2014-09-29 21:58:35 -07:00
friendica
22e6e691ca Navbar notifications: don't show "nothing new here" unless we've checked and there's nothing. Until we know for sure, display "Loading...". 2014-09-20 16:34:48 -07:00
marijus
6c806f6f48 aalso change the way we check for number of chatrooms 2014-09-20 17:28:42 +02:00
marijus
bd54358aa6 show bookmarks menu only if we have any bookmarks already 2014-09-20 16:31:56 +02:00
friendica
b522ab13cb nav channel selection 2014-08-18 20:03:48 -07:00
friendica
5dcd0654d4 always provide a profile edit entry in the nav usermenu 2014-07-24 21:29:07 -07:00
marijus
bd06e58007 whitespace 2014-06-14 15:38:44 +02:00
marijus
b9256eed30 unclutter menues a little 2014-06-14 15:31:36 +02:00
friendica
d17768d4e7 change app dropdown to point to apps module (changes nav template). Important: Plugins using the app-menu hook will no longer be accessible from there and may require re-writing to plug into the system apps page. Also filter apps in items from the language detector to avoid false triggers from the base64 content. 2014-05-21 17:23:34 -07:00
friendica
32e71cf06b finish "ifpending" connections 2014-04-04 17:43:44 -07:00
friendica
97f0424b18 introduce a connection type called 'ifpending' for number 6 of issue #395 - so that we can still have an unconditional 'pending' link. Needs testing before integrating with the nav menu 2014-04-04 16:56:49 -07:00
friendica
61f47cd5ed move language selector to a module 2014-03-05 03:19:20 -08:00
friendica
81c439bc7d revert the temporary fix for the missing hdr.tpl and add the ability to provide context sensitive help/documentation by passing the current URL path to the help module as $_REQUEST['cmd']. So we could create a special help page for settings/display or whatever. The only issue is whether this should be presented first with a link to the main help page, or if we put a line at the top of the main help page that says "I need help for settings/display". Also edited the help target window name, as "friendika-help" is a bit dated. 2014-03-03 14:33:49 -08:00
friendica
895c9411d9 add choklet template with several defined flavours, two and three column fluid layouts with optional side margins and a region for a blog-style header photo 2014-03-02 16:46:34 -08:00
friendica
d8434bb480 use the medium size photo on the nav bar if that photo stays larger, as the small one usually looks awful when you scale it up. 2014-02-20 01:49:40 -08:00
friendica
e8d98fbc85 extend the usermenu so we don't have to keep going back to channel homepage to get to the other channel links 2014-02-06 16:43:04 -08:00
friendica
d32bbaf599 split private messages into two modules - "message" is just for message lists, "mail" is for reading and writing conversations. This is so we can Comanchify it cleanly. 2013-12-21 23:47:44 -08:00
friendica
950bd72e02 use sitename for the banner if nothing else has been set 2013-12-14 21:37:37 -08:00
friendica
5382f607d9 yeah - that's what I'm going to do. we'll just keep system notifications. If somebody wants web pages for the others we'll start fresh. It's easier than starting with curfty friendica code that doesn't work anymore and will never work without starting over. 2013-12-06 00:11:15 -08:00
friendica
1aa79d9ee6 some code cleanup - gad I forgot what a mess the "other" notifications tabs (everything but system) were in. Maybe I'll just remove them so we can start over. 2013-12-06 00:02:39 -08:00
friendica
7536ed6e44 allow themes to mess with the navbar contents without a custom template. It's done as a callback using a transient plugin hook.
For instance to get rid of the notifications link:

insert_hook('nav','strip_notify');

function strip_notify($a,&$b) {
    unset($b['nav']['notifications']);
}
2013-11-28 20:17:07 -08:00
marijus
3311fe4813 make autocomplete better themable by adding an id 2013-11-14 18:03:16 +01:00
friendica
1aa69604fc more redbasic icon work 2013-10-09 18:33:33 -07:00
friendica
1e7034c4da nav icons 2013-10-09 03:26:24 -07:00
Olivier Migeot
98e87b2149 Changed CSS class "selected" to "active" in navbar, according to https://abcentric.net/display/f17b319c6d4b616a0d0a639e177969c6ae084248f1ee2bec9d8147c9291bf495@abcentric.net 2013-09-18 12:11:46 +02:00
friendica
c6df954fc0 make displaying the language selector configurable 2013-09-03 18:48:01 -07:00
marijus
9383694432 make home link on remote sites work again 2013-07-18 20:01:03 +02:00
friendica
53c69a17c5 more cleanup 2013-04-14 22:28:45 -07:00
friendica
dd22e1b582 just tinkering and trying a few things - don't get upset. It can all be reverted it it sucks. Freedom's just another word for "nothin' left to lose" and I'm not sure it's possible to create a UI that's hated more than Friendica. So that gives us plenty of artististic license to explore some different directions and see if they lead to anything interesting. 2013-03-05 15:48:56 -08:00
friendica
ea3940c4b0 start formatting for Doxygen 2013-02-25 17:09:40 -08:00
Thomas Willingham
c4ca0f796a Fix broken menu for multiple profiles. 2013-02-02 16:28:10 +00:00
friendica
357e71cb44 simplify friendship approval - merge with connection editing 2013-01-27 17:05:32 -08:00
friendica
28ab6d5bf5 lostpass fixes and login/logout flow if authenticated but no default channel exists 2013-01-27 01:19:24 -08:00
friendica
b8c92a0a42 fix some displayed links that were wonky 2013-01-22 23:08:46 -08:00
friendica
d8d8dd5ced directory services cleanup 2013-01-19 01:07:35 -08:00
friendica
a96d3ac66f The rest of the front end for the new notifications - now only missing "mark all seen" for some types, ajax loader for a couple of types, and perhaps a birthday cake icon if any birthdays today, a bit of css cleanup of duplicated or obsolete stuff 2013-01-08 11:59:29 -08:00