Commit graph

198 commits

Author SHA1 Message Date
Klaus Weidenbach
d0361582b0 Correcting reported Doxygen syntax warnings.
Fixed wrong Doxygen syntax and add some of the available FIXME to
Doxygen documentation.
Updated Doxygen configuration to add also all capital letter tags.
Adding some more Doxygen documentation.
2015-03-29 22:23:00 +02:00
friendica
3d60008842 provide a site-wide expiration policy without loopholes - still need work to reduce the impact of expiration queries. 2015-03-24 15:53:55 -07:00
friendica
480dac1af2 add reddress to profile - but all is not as it seems. Copy to clipboard is blocked because it isn't really a reddress and won't work if you copy it and try and use it somewhere. We should really convert the symbol back to '@' on copy and allow it to be copied, but this isn't as easy as it sounds and is left as an exercise for the community. If we just allow it to be copied we'll get a lot of bugs that making friends doesn't work. It does, but that isn't a legitimate reddress and even if we made allowances for it, Diaspora and Friendica and other webfinger based services wouldn't and would just say it can't be found or it's an illegal address. So if we block copy we'll just get bugs that it can't be copied. Eventually somebody will see this checkin and take it on themselves to figure out how to fix the address when copied to clipboard and then allow it to be copied. And there will be joy. 2015-03-07 23:35:56 -08:00
friendica
11df605c2e support rel=me on channel "homepage" url 2015-02-24 00:45:03 -08:00
friendica
4b348d2489 Merge branch 'master' into tres
Conflicts:
	view/css/mod_events.css
	view/theme/redbasic/css/style.css
2015-02-05 19:38:43 -08:00
friendica
561bab4ece remote rating and addition of rate-me to channel profile sidebar 2015-02-04 17:32:29 -08:00
friendica
3988948516 first cut at rating widget. The flaw is that it is limited because it requires local_channel() (formerly local_user()). We need to extend this to take you home like rpost does if you're logged in as remote_channel() - and/or we need zot to send the rating message to the source channel and target in addition to the directories. 2015-02-04 15:48:39 -08:00
friendica
912be23e16 Merge branch 'master' into tres
Conflicts:
	include/group.php
	include/text.php
	mod/acl.php
	mod/channel.php
	mod/connections.php
	mod/display.php
	mod/group.php
	mod/item.php
	mod/locs.php
	mod/network.php
	mod/photos.php
	mod/ping.php
	mod/starred.php
	mod/viewsrc.php
2015-01-29 15:09:35 -08: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
friendica
4c2a1e572a start on item_restrict conversion 2015-01-22 21:04:54 -08:00
friendica
e46eba1258 heavy lifting converting item flag bits 2015-01-22 17:41:16 -08:00
friendica
51848c6190 working through the xchan table to remove bitfields, mostly complete except for updating the updater 2015-01-20 19:33:19 -08:00
friendica
ee3eee425c that should take care of the bitfields in hubloc 2015-01-20 16:13:18 -08:00
Stefan Parviainen
93735df2c7 Allow tags in mail, many profile fields, and admin info 2015-01-13 17:54:40 +01:00
Christian Vogeley
f0c7612bcd Merge remote-tracking branch 'upstream/master'
Conflicts:
	doc/html/classRedmatrix_1_1Import_1_1Import-members.html
	doc/html/classRedmatrix_1_1Import_1_1Import.js
2015-01-11 16:22:59 +01:00
Christian Vogeley
43f143a211 Fix for issue #763 Error creating new channel within the limits of the
subscription plan
2015-01-11 16:12:36 +01:00
Stefan Parviainen
2444a3f9d9 Don't show links to edit alternate profiles if multi_profiles is disabled 2014-12-30 21:33:20 +01:00
Stefan Parviainen
62dabecf97 Show tags in other channels profile field to make it easier to navigate to the channels 2014-12-07 16:19:22 +01:00
Habeas Codice
e3b0b5ed52 implicit boolean, formatting 2014-11-20 04:55:01 -08: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
friendica
d432f4ccd5 issue #683 - don't linkify homepage field without validating 2014-11-10 19:20:23 -08:00
friendica
3b22e2f5f5 some minor cleanup of unreported (and as yet undiscovered) issues with permissions toggling. No smoking guns and no obvious issues discovered here. Repeated and tried to duplicate zottell's issue as described without seeing any obvious problems. 2014-11-05 16:21:03 -08:00
friendica
d5d6158973 ok heads up - potentially destabilising change. I've tried to sort out all the default connection permissions for those who don't have a predefined (or therefore have a "custom") permissions role. Unfortunately this includes most people that were using this software more than a month ago. The real changes are that the SELF address book entry no longer holds "auto-permissions" but instead holds your "default permissions" (if you have a pre-defined role, the defaults will be pulled from the role table).
The auto permissions have moved to a pconfig (uid.system.autoperms). A DB update will move these settings into their new homes.

What used to be the "Auto-permissions settings" page is now the "default permissions settings" page and a checkbox therein decides whether or not to apply the permissions automatically. A link to this page will only be shown when you have the "custom" role selected.

With luck nobody will notice anything wrong. But at least for the next few days, please review permissions that have been assigned to new connections (either automatically or manually) and make sure they make sense (e.g. they aren't "nothing"). You still need to take action when seeing a message "permissions have changed but not yet submitted" as we always let you review and perhaps adjust the settings _before_ a connection is established (unless you have autoperms turned on).
2014-11-04 17:11:02 -08:00
friendica
9cc76cb33d several unrelated things - auto_follow wasn't working for new accounts, error returned in private mention to a collection, and added auto-completion to photo tags; though it only matches people so the hover text is now wrong. Also made the photo edit form XHTML (XML) compliant. 2014-10-27 19:23:40 -07:00
friendica
ed7712cfbf private forum issues 2014-10-21 16:33:35 -07:00
friendica
2db7d88e28 this is the reason Diaspora forum tagging was broken 2014-10-14 18:02:34 -07:00
friendica
bca4d540e0 disable email notifications when bulk importing content. 2014-10-08 15:15:20 -07:00
Jeroen
ae9b0c0e1b Changed default avatars to PNG as agreed with Mike here: https://redmatrix.nl/channel/jeroenpraat/?f=&mid=83603d8f0876c040efafce87755fcd252dbe8da4a75d82fdb230519e3c8dcb72@redmatrix.nl. Added a few new. You can set it like this: util/config system default_profile_photo red_avatar 2014-10-05 18:32:28 +00:00
Thomas Willingham
557894bc01 That's a string, not an integer 2014-10-03 15:16:05 +01:00
Thomas Willingham
09e0b4e2a1 Set timezone when creating a channel. 2014-10-03 00:57:07 +01:00
friendica
16b94f1dc0 issues with diaspora comment signatures on relayed comments that are relayed through a redmatrix site (parent post is redmatrix) and involve a private post. 2014-10-02 02:43:07 -07:00
friendica
baa0b0f393 only auto-follow the site recommendations if creating the first channel for an account. 2014-10-01 15:40:19 -07:00
friendica
467c6c72f0 ability to pre-populate connections for new channels. e.g. "MySpace Tom" 2014-10-01 14:48:08 -07:00
habeascodice
73ebdff083 Merge remote branch 'upstream/master' 2014-09-28 19:31:19 -07:00
habeascodice
c0b59ae36a Typo in regex causes runtime error 2014-09-28 19:30:47 -07:00
friendica
fa019791fa some background work for import/export of things and liked things/profiles 2014-09-27 00:14:35 -07:00
friendica
d8c03526ed optionally include wall items (posts) in import/export 2014-09-25 20:21:23 -07:00
friendica
c6062d7872 usability tweaks 2014-09-17 21:52:30 -07:00
friendica
51d9f0d97a channel permission roles 2014-09-17 21:16:15 -07:00
friendica
4014093572 implement permission roles - the backend should be done except for maybe a couple of small tweaks. Now we just need to define the rest of the roles and create a chooser for them. Adam started on this some time back but I don't know where that has gone. 2014-09-17 17:59:46 -07:00
friendica
a1b66f56f0 use the more portable encoded_item format for exported items - but with added attributes so we can use it as a reasonably complete item backup. The encoded_item format gives us extended author and owner information in case we need to probe them to bring the entry back. It also contains taxonomy entries. Importing and/or recovering will best be accomplished in chunks. It could take some time and some memory to chew through this. 2014-09-16 03:33:48 -07:00
friendica
5f9c326ad7 channel export with items 2014-09-15 21:31:32 -07:00
friendica
c6d07feff5 This is long overdue - use a symblic constant NULL_DATE instead of the easily mis-typed sequence '0000-00-00 00:00:00' 2014-09-08 20:35:15 -07:00
friendica
e8ef515b61 store diaspora meta info in the item table. It has to go there or it will kill us with complex joins. We can phase out the sign table once this all checks out. 2014-09-03 05:09:43 -07:00
friendica
e524835463 the rest of the diaspora local discovery stuff 2014-08-21 20:31:55 -07:00
friendica
1d6f494936 some work on extended profile fields 2014-08-13 22:22:52 -07:00
friendica
00fc23bf4e issue #551 provide import/export of profiles (if this feature is enabled) 2014-08-04 16:48:40 -07:00
friendica
44ee18b810 Let site admin choose what profile fields to support. 2014-08-02 23:28:51 -07:00
friendica
2721d58a1c correct the permissions on profile page 2014-07-17 22:07:23 -07:00
friendica
1accf82bd1 clean up more code duplication 2014-07-14 21:21:24 -07:00
friendica
06b7aea1a0 visage tracking opt-in/opt-out 2014-07-03 17:26:42 -07:00
friendica
0cfcb02311 ability to like things 2014-06-23 05:19:28 -07:00
friendica
c4c1c37bd3 profile likes 2014-06-22 22:16:26 -07:00
friendica
a39a1584bd allow birthdays with just a year (no month or day). 2014-05-01 18:40:00 -07:00
friendica
506ae56385 Better handling of restricted /channel and /profile permissions. We will show the name, profile photo and a 'connect' button if appropriate on these pages regardless of permissions. A blank page makes it difficult for folks to figure out how to connect and if it is their real life friend 'x' or not. It also matches our overall policy (adopted from Facebook's lessons learned) that the channel name and default profile photo are always visible and can't really be blocked without messing up the usability of the entire network. This also makes sure that a connect button can be found somewhere besides the directory - where the entry could be blocked; and avoid somebody having to figure out the webbie and find the link to "follow" (another related issue). 2014-04-14 16:45:16 -07:00
Thomas Willingham
163c83a9e5 Ooops, replaced too many 2014-04-12 00:11:43 +01:00
Thomas Willingham
a82b1fe590 Revert to prepare_text, use bbcode only for with 2014-04-12 00:08:50 +01:00
Thomas Willingham
4582b8dd64 Bring BBCode to profiles 2014-04-11 14:54:07 +01:00
friendica
4901ef8faf provide the ability for rpost to post as another of your channels. This does not yet work, so the functionality has not been enabled. 2014-04-05 02:32:07 -07:00
Thomas Willingham
f4dd8657cb Let admins set a default expire days value. 2014-04-01 19:36:56 +01:00
friendica
04d9187c7a photo timestamp was missing from main profile photo url which prevents photo changes from being immediately seen there. 2014-03-31 15:04:56 -07:00
friendica
79f5fd8e2a allow zotfeed to create a firehose of a site. 2014-03-26 16:09:07 -07:00
friendica
350624e993 don't allow normal channels to have the name 'sys'. 2014-03-23 18:45:42 -07:00
friendica
7575ff11fb make sure crypto is loaded before creating a keypair 2014-03-23 18:34:17 -07:00
friendica
944d051e45 create_sys_channel during setup bypasses our check when creating the first account that there is a site keypair. Esnure that a site keypair is created before any sys channels are created. 2014-03-23 18:12:32 -07:00
friendica
3cb179aff1 contact_block() not being shown to unauthenticated visitors - even if perms allow. Also separate the permissions logic for this function so that we can have a mini-profile widget and a separate contact_block widget instead of always lumping them together. We probably also should move contact_block() outside of include/text.php as it doesn't really belong there. Just not sure where it belongs - perhaps contact_widgets wouold be a good place. 2014-03-13 17:13:36 -07:00
friendica
a072668f8a undo 2014-03-04 15:29:27 -08:00
Thomas Willingham
f2f6485a4f Make zid() work for observers as well as local users 2014-03-04 23:18:33 +00:00
friendica
08313bac6c allow personalised page layouts for modules. 2014-02-25 14:12:51 -08:00
friendica
29ebfc25ca take a p 2014-02-24 15:07:00 -08:00
friendica
5bd71e4e4d set theme for un-viewable profile 2014-02-24 14:19:21 -08:00
friendica
e55170c00a code cleanup 2014-02-20 17:07:43 -08:00
friendica
0b4aa5a39c get_theme_uid() - if no uid, look for a system channel and use that. This allows default theme/scheme tweaks at the server level. 2014-02-17 20:38:30 -08:00
friendica
ea709361f6 snakebite, cont. magic-auth via openid is now possible, with the caveat that one needs a hand-crafted xchan at the moment to make use of it and if you wish to do so, there will be no assistance or help provided. The risk of system instability and mangled DBs now and going forward is significant if you try this. 2014-02-17 20:10:43 -08:00
friendica
16cd9e2a7e don't include deleted channels in number of channels service class checks 2014-02-16 14:48:07 -08:00
friendica
c7dda0c4c1 return the expected array 2014-02-12 15:12:42 -08:00
marijus
8e68ecc68b dont show onlinestatus if block_public is on 2014-02-12 23:41:08 +01:00
friendica
e6185eea28 The scenario is that you're authenticated via magic-auth on a remote hub and you change channels locally. Next time you start an auth exchange we'll look to see if your identity changed and we should start fresh if that's the case, rather than just falling through and keeping the old credentials. 2014-02-10 15:39:19 -08:00
friendica
d970c69f91 online indication to the directory popup 2014-01-28 19:49:56 -08:00
friendica
cc11535e34 online indication on profile sidebar 2014-01-28 17:07:25 -08:00
Thomas Willingham
a59b7c97f4 Missed these from git add...a year ago 2014-01-17 23:30:33 +00:00
friendica
18a40d0c37 prevent zid's from reaching the DAV core code. 2014-01-16 01:19:58 -08:00
zottel
d71989c6ba fix the fix (can't work on query if it hasn't been added to $dest yet) 2014-01-10 09:21:36 +01:00
friendica
ba0fdde51c process str_replace before urlencoding 2014-01-09 14:56:43 -08:00
zottel
cd65d172ba urlencode query_string for magic auth to make sure GET params make it back
to the originating server
2014-01-09 15:59:42 +01:00
friendica
22f614feba a bit more backend work on things 2013-12-28 17:04:23 -08:00
friendica
63a42480c7 add account_level, is_foreigner and is_member functions; convert all e2ee user input and prompts to hex to avoid javascipt's lame handling of quotes. !!This breaks all prior encrypted posts.!! 2013-12-23 15:13:09 -08:00
friendica
1a42580ad4 remove a couple of mysql reserved words from being used as table or row names. For this round we're getting 'group' and 'desc'. Warning: potentially destabilising as this touches a lot of code. 2013-12-22 18:37:39 -08:00
friendica
97728543c1 clean up sys_channel creation so it will work 2013-12-22 14:08:38 -08:00
Thomas Willingham
0d5c5187f9 Style 2013-12-22 21:15:13 +00:00
Thomas Willingham
2074bd0a3b Must have broken that in a merge - put it back 2013-12-22 21:13:24 +00:00
Thomas Willingham
c4b4f27796 Some sys chan stuff 2013-12-22 20:47:57 +00:00
friendica
bccc20f38c default photo issue, and connections page showing deleted accounts. Also show last updated on connedit page 2013-12-19 19:16:46 -08:00
friendica
7c81889b33 make default profile photo configurable - should be functional but needs admin ui 2013-12-19 16:33:36 -08:00
friendica
40e2900326 comanchify all the simple cases - those that only load a profile. Rework permission checks for the profile sidebar so that it is all done internally. Remove crepair which we aren't using. 2013-12-11 14:54:36 -08:00
friendica
652959678f cleanup and Comanchification of mod_profile 2013-12-10 23:27:17 -08:00
friendica
78d19f3395 move profile tabs and network/matrix tabs to include/conversation 2013-12-05 21:00:14 -08:00
friendica
13feafce17 add poco and follow to default xchan creation 2013-12-04 18:30:14 -08:00