1836 Commits
0.8 ... 1.3

Author SHA1 Message Date
redmatrix
dd4a66353a Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-03-03 14:49:34 -08:00
redmatrix
2cf54c465d remove the markdown feature. Do not re-enable unless you are willing to support it. 2016-03-03 14:47:39 -08:00
Mario Vavti
d3491c9165 fix jot form 2016-03-03 13:46:08 +01:00
Mario Vavti
8ca877bdd3 slide up cover on click 2016-03-03 12:31:49 +01:00
Mario Vavti
b704f977da Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-03-03 12:08:21 +01:00
Mario Vavti
59e04aed1b move cover-photo to template, add the ability to define a title and subtitle (defaults to channel name and addres), move js from redbasic.js to template. 2016-03-03 12:07:58 +01:00
redmatrix
436e91a1e1 rename the menu entry and page to 'Profile Fields' to maintain consistency 2016-03-02 16:39:34 -08:00
redmatrix
6f4c45a489 UI cleanup for admin profile field management page 2016-03-02 15:36:14 -08:00
redmatrix
157bbb14b5 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-03-02 11:35:48 -08:00
redmatrix
5c22f59c4f issue #305 2016-03-02 11:32:32 -08:00
Jeroen van Riet Paap
aa62bad07b little nl string fix 2016-03-02 15:33:18 +01:00
Mario Vavti
d3f2d2a2db small fix to simple cover-photo 2016-03-02 14:30:33 +01:00
Mario Vavti
c5d08fd5fd add a fade in effect to main while scrolling up cover photo 2016-03-02 13:33:18 +01:00
Mario Vavti
22729da2a2 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-03-02 12:31:46 +01:00
Mario Vavti
c97cc1487c a simple cover-photo implementation for redbasic default template 2016-03-02 12:31:25 +01:00
redmatrix
428b4dbad6 sort out the with and howlong dependencies 2016-03-01 22:47:07 -08:00
redmatrix
548bf884a4 profile field admin page (functional only: still needs a lot of HTML/CSS cleanup) 2016-03-01 21:06:27 -08:00
redmatrix
a0baa480e3 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-03-01 15:01:48 -08:00
redmatrix
765dd5569b Allow configuration of the display order of profile fields. This is an important piece of a more general profile configuration framework which will eventually be accessible via the admin page. 2016-03-01 14:55:04 -08:00
redmatrix
c19a1a6b82 revup 2016-03-01 14:13:38 -08:00
jeroenpraat
8b61e546fe Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-03-01 22:09:06 +01:00
jeroenpraat
7206e8af3a Small fix for deleted forum channels showing in the forum widget (had this after migration from RM on 1 or 2 channels) 2016-03-01 22:08:50 +01:00
Mario Vavti
7808689198 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-03-01 20:40:33 +01:00
Mario Vavti
966d1586c0 fix js error and add id to field input block 2016-03-01 20:40:11 +01:00
redmatrix
edffd9f183 Merge pull request #304 from phormanns/master
fix typo in postgres schema
2016-03-02 06:22:46 +11:00
Peter Hormanns
7edc505c2f fix typo in postgres schema 2016-03-01 17:54:52 +01:00
Mario Vavti
4df78b06cf fix padding 2016-03-01 15:11:15 +01:00
Mario Vavti
492609d20b do not show empty buttons if not logged in 2016-03-01 14:41:14 +01:00
Mario Vavti
0f76af261c another resize issue 2016-03-01 14:11:42 +01:00
Mario Vavti
9d00db06b2 fix resize issue 2016-03-01 14:03:34 +01:00
Mario Vavti
141f3e21b2 move preview content outside of editor space 2016-03-01 13:40:19 +01:00
Mario Vavti
fe6cbb414c adjust padding 2016-03-01 13:32:18 +01:00
Mario Vavti
e13d65eea3 set line-height to initial 2016-03-01 13:29:59 +01:00
Mario Vavti
4d6050f8e5 another css fix 2016-03-01 13:22:19 +01:00
Mario Vavti
0ebce75c7d css fixes to make jot look better with background colors or images 2016-03-01 13:09:04 +01:00
redmatrix
91bb4bdf50 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-29 19:34:23 -08:00
redmatrix
be2b7c0b5f abconfig 2016-02-29 19:31:52 -08:00
Mario Vavti
2d45f9f385 provide footer bbcode 2016-02-29 23:58:32 +01:00
redmatrix
44b2503572 revup 2016-02-29 13:42:30 -08:00
Mario Vavti
3f90da5643 remove unused variable 2016-02-29 22:07:14 +01:00
Mario Vavti
d27a627c4f simplify profile edit button(s) and make it useful for multiple profiles 2016-02-29 22:01:13 +01:00
jeroenpraat
55ab5360d9 update es-es. tested it and it works now. Don't know what happened earlier. 2016-02-29 19:36:53 +01:00
Mario Vavti
bfeeb76143 fix deletion of files from filesystem 2016-02-29 15:37:34 +01:00
Mario Vavti
f2d3be2e67 do not process update activity if there is no item to update and simplify code a little 2016-02-29 14:22:35 +01:00
jeroenpraat
60b818eb24 revert es-es update. something went wrong. later today I will examine what. 2016-02-29 09:07:29 +01:00
redmatrix
ebe70a41b9 build_sync_packet - no need to sleep after the last sync delivery. 2016-02-28 18:26:08 -08:00
redmatrix
da79662081 stop the PHP warnings from Thomas's buggered sitekey 2016-02-28 16:33:52 -08:00
redmatrix
72f3f7c172 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-28 15:07:00 -08:00
redmatrix
713a796d9f revup 2016-02-28 15:06:42 -08:00
jeroenpraat
69c6d8b617 update es-es strings 2016-02-28 17:33:22 +01:00
redmatrix
a1f046992d I haven't investigated 'why', but the addition of the router class in 1db3409f36 resulted in the setup global variable $install_wizard_pass to not get initiated at the global level when the setup module file was included. This corrects the situation and makes install work but without explaining why the variable wasn't instantiated in the first place. This may be important - if any other modules use global variables internally. I don't believe that any do, but the behaviour needs to be resolved or documented. 2016-02-27 17:27:46 -08:00
redmatrix
cd5630476f Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-27 16:29:13 -08:00
redmatrix
f7f20c5917 z_fetch_url and z_post_url returning false 2016-02-27 16:27:37 -08:00
redmatrix
44797fe988 Merge pull request #302 from phellmes/de20160227
Update DE translation strings
2016-02-28 09:57:04 +11:00
Mario Vavti
2d045a12bf Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-27 16:52:11 +01:00
Mario Vavti
a2fe22412f missing include 2016-02-27 16:51:54 +01:00
jeroenpraat
df69465357 update NL strings 2016-02-27 15:56:45 +01:00
phellmes
e4361cb202 Update DE translation strings 2016-02-27 14:28:06 +01:00
Mario Vavti
58cf9d832c make attach_delete() return and comment out album rename functionality since this is not supported by the backend at the moment. 2016-02-27 12:31:07 +01:00
redmatrix
6126070a1d Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-26 12:49:02 -08:00
redmatrix
459166116d turn timezone aware birthdays into a feature for those who want an uncluttered calendar - at the expense of possibly sending somebody's birthday greeting on the wrong day if they are in a different timezone. 2016-02-26 12:45:44 -08:00
Mario Vavti
776bc51172 fix link to photo album and make sure that small photos are not overwritten by body text. 2016-02-26 15:21:14 +01:00
Mario Vavti
df57c90d2d several photo item template fixes 2016-02-26 14:25:18 +01:00
Mario Vavti
5a563b8e76 some improvement for file activity 2016-02-26 11:17:21 +01:00
Mario Vavti
0653a2e0a9 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-26 09:21:01 +01:00
Mario Vavti
d19dfc87a6 get rid of duplicate function 2016-02-26 09:20:44 +01:00
redmatrix
dc8c7a2d2e small improvements to profile like activity 2016-02-25 16:21:38 -08:00
redmatrix
ba2ede0a8f this reverts ea54987ca4 2016-02-25 15:41:52 -08:00
redmatrix
6892ba4cd8 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-25 15:14:57 -08:00
Mario Vavti
5ad9b48f1d revert f62ec4132e - allow one self to be added to a privacy group. 2016-02-25 23:59:57 +01:00
redmatrix
7972de13ca backtrace openssl_verify errors so that we can find bad keys - as there is very little relevant context available at this level. 2016-02-25 14:34:30 -08:00
Mario Vavti
ea54987ca4 in update_birthdays() we should probably set adjust to 0 instead of 1 since a birthday is more a kind of a global holiday 2016-02-25 23:03:38 +01:00
Mario Vavti
b2474334a7 provide an edit button for the profile page 2016-02-25 22:50:16 +01:00
redmatrix
2a0d4a2011 Merge pull request #299 from git-marijus/master
we have got a button for events in the nav. no need for it in the tab…
2016-02-26 06:27:42 +11:00
Mario Vavti
be27fb5644 we have got a button for events in the nav. no need for it in the tabs if we are local. 2016-02-25 13:40:15 +01:00
redmatrix
ebfa1a12b9 when creating an event from a post in our stream, if the original post was private, set the event permissions to "just me". If it was a public event, set the event permissions to the channel default permissions. 2016-02-25 00:36:35 -08:00
redmatrix
43521bb10b Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-24 18:56:04 -08:00
redmatrix
c95d7c69eb issue #216 - calendar sharing 2016-02-24 18:54:52 -08:00
jeroenpraat
f12b0fe316 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-25 02:05:16 +01:00
jeroenpraat
8944d7a7a2 another dutch update 2016-02-25 02:03:58 +01:00
redmatrix
6300f47cdc schema change to support channel move (a completely different operation than channel clone) 2016-02-24 17:00:16 -08:00
redmatrix
2b95580cc0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-24 16:41:46 -08:00
jeroenpraat
93b84f1262 interim dutch string update 2016-02-25 01:39:50 +01:00
jeroenpraat
1ffae1327f Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-25 01:05:31 +01:00
jeroenpraat
01a8292d65 fix TOS 2016-02-25 01:04:37 +01:00
Mario Vavti
9d3ce55978 fix boxy scheme 2016-02-25 00:24:58 +01:00
redmatrix
7e6febe2a6 add 'requires' field to plugin info to list other dependent plugins/addons and disable if dependencies are not installed/enabled 2016-02-24 15:19:28 -08:00
Mario Vavti
e73df9ed1d give nav dropdowns a fixed width to preventtext-overflow: ellipsis cut of to much of the text in some situations 2016-02-24 23:16:42 +01:00
redmatrix
b101a8f6fb missing function 2016-02-24 11:20:46 -08:00
redmatrix
d074c53889 function to process atom stream without actually storing anything 2016-02-23 16:34:53 -08:00
git-marijus
039eb58524 Merge pull request #297 from bashrc/bashrc/comma
Remove stray comma
2016-02-23 22:53:14 +01:00
Bob Mottram
29c9e7c0a2 Remove stray comma 2016-02-23 19:50:45 +00:00
Wave
f15a06c0c2 Merge pull request #296 from wave72/master
Updated Italian strings
2016-02-23 11:55:23 +01:00
Paolo Tacconi
ab89eb050a Updated Italian strings 2016-02-23 11:52:45 +01:00
Mario Vavti
eca1f84328 change wording in case where registration is by apprval only 2016-02-23 11:23:43 +01:00
redmatrix
3bde7b8f18 add salmon key param 2016-02-22 16:20:19 -08:00
jeroenpraat
9db1148650 pubsites: network column is not needed anymore (mentioned in intro text). Because of more vertical space Access and Register columnis separate again. 2016-02-22 19:28:32 +01:00
jeroenpraat
502fed198d only hubs from local configured project on pubsites (hubzilla by default). as agreed with Mike. 2016-02-22 19:10:01 +01:00
Mario Vavti
411c510778 change wording 2016-02-22 13:42:05 +01:00
Mario Vavti
dd6e3d873d some work on mod/register 2016-02-22 13:04:48 +01:00
redmatrix
f9b092c619 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-21 18:15:40 -08:00
redmatrix
edc7c0837b remove bookmark identifier from embedded links since they aren't bookmarkable without an associated taxonomy entry. 2016-02-21 18:14:28 -08:00
jeroenpraat
f535d438b2 I don't think we need redmatrix hubs (or hubs without no project name) in this list. The other way around (hubzilla in redmatrix pubsites) is no problem I think. If not agreed, please revert. 2016-02-22 03:03:32 +01:00
redmatrix
119ffd2d2d Merge pull request #290 from anaqreon/homeinstall
Added sendmail installation to .homeinstall script so that hub can se…
2016-02-22 12:43:41 +11:00
redmatrix
2c3bec3d7c Merge pull request #291 from phellmes/de201602201300
Update DE strings
2016-02-22 12:43:15 +11:00
redmatrix
f1564b4cff retry the move of AccessList to composer format (one or more third-party plugins will likely break as a result) 2016-02-21 16:49:49 -08:00
redmatrix
c9252d49f7 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-21 14:54:59 -08:00
redmatrix
411abdf8a7 fix double encoding 2016-02-21 14:54:34 -08:00
jeroenpraat
1fcc863298 There was nothing wrong with my pimped pubsites (was another problem). Took the opportunity to update schemas. Plus updated spanish and dutch strings. 2016-02-21 23:00:12 +01:00
jeroenpraat
e37c1ed981 Revert pubsites.php. There seems something wrong. Let me troubleshoot that first. 2016-02-21 20:00:09 +01:00
jeroenpraat
0c5a2925ad Pimped the pubsites page. I tried to get this into a .tpl-file, but it was to complicated for me. Pubsites page is now more narrow (fits on most devices) and location is not taking a complete column (location is almost never used). Also a fix on the auto-create-channel part on the register page. 2016-02-21 19:31:11 +01:00
Andrew Manning
272ffe6983 Renamed homeinstall config file and added check for required config parameters. Spelling corrections. 2016-02-20 14:04:11 -05:00
Andrew Manning
368bb18935 Merge branch 'master' of https://github.com/redmatrix/hubzilla into homeinstall 2016-02-20 13:53:00 -05:00
Mario Vavti
22f172d697 grid->network, whitespace and bootstrapify create button 2016-02-20 14:01:20 +01:00
phellmes
fe9abcfaae Update DE strings 2016-02-20 13:47:25 +01:00
redmatrix
dfbe2eaf98 Revert "move accesslist class to namespace"
This reverts commit a9711895cf.
2016-02-20 00:49:37 -08:00
redmatrix
a9711895cf move accesslist class to namespace 2016-02-20 19:39:54 +11:00
redmatrix
8882ffc0de ensure auto_channel_create() is executed for all workflows when UNO is set. 2016-02-19 19:21:57 -08:00
redmatrix
fdd7faab51 string update 2016-02-19 19:12:26 -08:00
redmatrix
d004017b01 issue #288 allow relative_date() to be translated into languages with more than two plural forms, such as pl. 2016-02-19 19:07:07 -08:00
Andrew Manning
f2d27d543d Added sendmail installation to .homeinstall script so that hub can send email notifications 2016-02-19 20:43:28 -05:00
redmatrix
1db3409f36 add router class 2016-02-19 16:19:15 -08:00
redmatrix
cfa2ac2d0a move dreport to zotlabs\zot namespace 2016-02-19 14:02:55 -08:00
redmatrix
ebc66d7008 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-19 13:36:48 -08:00
redmatrix
3f0eb84ecf get_feature_default() was using filtered view, preventing it from working in all cases 2016-02-19 13:34:29 -08:00
Mario Vavti
fbc6c60805 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-19 22:28:57 +01:00
Mario Vavti
02e82e496e pimp up mod new_channel 2016-02-19 22:28:21 +01:00
redmatrix
8e586008dd issue #287 require old password to change password 2016-02-19 13:18:51 -08:00
redmatrix
50c7c33ed1 no linefeed at end 2016-02-19 12:02:23 -08:00
redmatrix
ca52d39abe finish up the storage move 2016-02-19 11:58:17 -08:00
redmatrix
28d07fd6b2 move storage assets to zotlabs/storage 2016-02-19 00:06:10 -08:00
redmatrix
5a7b994e59 siteinfo regression with Zotlabs\Project - add an autoloader 2016-02-18 19:32:06 -08:00
redmatrix
4512a4cdd4 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-18 15:26:50 -08:00
redmatrix
342fda94e4 Provide Zotlabs\Project and System class for querying details about the project/version info. Move these out of /boot.php 2016-02-18 15:24:58 -08:00
jeroenpraat
33c34984e6 h1>h2 (thanks to Mario) and help text below label on register page (like on new channel). 2016-02-18 19:48:11 +01:00
jeroenpraat
fe392a3144 Removed export temporary from UNO. Removed 'Remove Channel' from UNO, cause a UNO member has only 1 channel, so it's logical to remove the acccount (by experience on UNO hub). Styling oauth settings. 2016-02-18 16:53:04 +01:00
Wave
eeed7077ca Merge pull request #286 from wave72/master
updated Italian strings
2016-02-18 15:06:19 +01:00
Paolo Tacconi
dba1854837 updated Italian strings 2016-02-18 15:01:53 +01:00
redmatrix
c107bcfbd9 some necessary doco for set_iconfig() 2016-02-18 00:51:36 -08:00
redmatrix
912ebfebff Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-18 00:23:31 -08:00
redmatrix
76bf892f9f iconfig - add sharing variable 2016-02-18 00:20:08 -08:00
redmatrix
12a9b49c6d Merge pull request #285 from anaqreon/master
Added the installation of curl to the .homeinstall script
2016-02-18 13:53:13 +11:00
Andrew Manning
aecf9e32ef Added the installation of curl to the .homeinstall script 2016-02-17 21:15:43 -05:00
redmatrix
879bc71927 this qualifies as an interface change 2016-02-17 17:29:06 -08:00
redmatrix
4da7fcb41d schema updates for iconfig 2016-02-17 16:24:26 -08:00
redmatrix
3a84e7051e Merge branch 'iconfig' 2016-02-17 16:21:22 -08:00
redmatrix
161050df07 format atom event renderings so they are reasonably compatible with GNU-social 2016-02-17 15:56:30 -08:00
redmatrix
29284319a5 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-17 14:36:16 -08:00
redmatrix
86e73fd313 add ca help files (per Paco) 2016-02-17 14:35:45 -08:00
redmatrix
62e141a89c provide del_iconfig for completeness 2016-02-17 14:14:42 -08:00
jeroenpraat
cd8b7687c1 More clarification about privacy of private content. Changed Channel Name to simply Name when registering/creating an account or channel. First time when people see this they get confused (by experience on my hubs). This will even be more with UNO. 2016-02-17 20:47:52 +01:00
Mario Vavti
4436cd9ade Change description 2016-02-17 12:37:02 +01:00
Mario Vavti
ddbe3c7426 make always preload images before rendering the page a display setting 2016-02-17 12:32:12 +01:00
Mario Vavti
b8c7b2f81d more refinement on collapsing 2016-02-17 11:07:47 +01:00
redmatrix
696c6e88ea iconfig debugging - federation now working 2016-02-17 01:05:28 -08:00
redmatrix
a83eb14ff6 iconfig debugging 2016-02-17 00:42:51 -08:00
redmatrix
8e6dc0b66b revup 2016-02-17 00:14:49 -08:00
redmatrix
41ec5403e1 slight changes to set_iconfig - if passed an item structure only update the structure. Update the DB only if passed an item_id. This makes a clean separation of behaviour that's easy to document. One could get into some weird situations the original way which tried to update and sync both. 2016-02-16 22:53:27 -08:00
redmatrix
77eb6c5761 more work on iconfig 2016-02-16 20:49:32 -08:00
redmatrix
89c6cda303 allow admin to set and lock features when UNO is enabled 2016-02-16 18:58:29 -08:00
redmatrix
d49afead67 allow redirection to site workflow page even if auto channel create is applied 2016-02-16 18:36:29 -08:00
redmatrix
0a10215371 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-16 18:15:40 -08:00
redmatrix
64f5d80ff2 some iconfig basics 2016-02-16 18:15:19 -08:00
redmatrix
28a593e1ce revup 2016-02-16 15:19:52 -08:00
jeroenpraat
f738902107 @hubdomain also for auto-create-channel + adding css wrapper (ongoing work) 2016-02-16 21:46:24 +01:00
Mario Vavti
364972a292 Thats probably better but there are still edge cases... 2016-02-16 21:29:09 +01:00
Mario Vavti
0eb0256502 typo 2016-02-16 21:02:28 +01:00
Mario Vavti
679fb7d0d2 content -> viewport 2016-02-16 20:58:10 +01:00
Mario Vavti
45247d1595 only prefetch images on update_mode update 2016-02-16 20:53:38 +01:00
Mario Vavti
3be6ef6bfc since we preload images now we also can collapse and calculate posts above the viewport 2016-02-16 14:42:13 +01:00
redmatrix
c5827c8b4f Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-15 20:33:10 -08:00
redmatrix
bb381daae3 update fr strings from transifex 2016-02-15 20:32:42 -08:00
redmatrix
d0090f09fb Merge pull request #283 from phellmes/connedit
Add string translation to auto approval option
2016-02-16 10:33:39 +11:00
Mario Vavti
afb86aa908 clean up some unused stuff and start loading content a bit earlier 2016-02-15 22:20:55 +01:00
phellmes
3b97a9f766 Add string translation to auto approval option
Make the description for the auto-approval option translatable.
Put the switch array of that option (with another missing t-funtion)
into a $yes_no variable to be consistent with other settings pages.
2016-02-15 21:23:04 +01:00
redmatrix
d3c779f635 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-14 16:17:15 -08:00
redmatrix
4f285911f0 form cleanup (profile_photo and cover_photo), admin 'user_approve' not found, missing close div in mood_content.tpl 2016-02-14 16:15:55 -08:00
jeroenpraat
8ccddfefd9 Spanish and Dutch string update 2016-02-14 16:18:03 +01:00
redmatrix
4351a83d16 Merge pull request #282 from royalterra/master
add https://blablanet.es faillback server
2016-02-14 07:13:22 +11:00
royalterra
ddefe3b3ac add https://blablanet.es faillback server
{"version":"2016-02-12.1307H","version_tag":"1.2.2","server_role":"advanced","commit":"dd2d123","url":"https:\/\/blablanet.es","plugins":["b2tbtn","bookmarker","chess","dfedfix","diaspora","diaspost","dirstats","donar","jappixmini","libertree","ljpost","mailhost","mchat","metatag","noticias","pgpkey","pumpio","sendzid","smiley_pack","smileybutton","statistics","statistics_json","status","statusnet","twitter","wholikesme","wppost","xmpp","xmppac"],"register_policy":"REGISTER_OPEN","invitation_only":0,"directory_mode":"DIRECTORY_MODE_SECONDARY","language":"es","rss_connections":1,"expiration":0,"default_service_restrictions":false,"locked_features":[],"admin":[{"name":"BlaBlanet-ES","address":"blablanet-es@blablanet.es","channel":"https:\/\/blablanet.es\/channel\/blablanet-es"}],"site_name":"BlablaNet Espa\u00f1a  donde est\u00e1n tus amigos, Tu Red Social","platform":"BlaBlaNet","dbdriver":"mysqli","lastpoll":"2016-02-13 14:39:07","info":"","channels_total":29,"channels_active_halfyear":26,"channels_active_monthly":11,"local_posts":6600,"hide_in_statistics":0}
2016-02-13 15:16:09 +00:00
redmatrix
dd2d12350c Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-12 14:03:09 -08:00
redmatrix
ade91f8190 directory modes reversed 2016-02-12 14:02:50 -08:00
Jeroen van Riet Paap
d04aef4c44 don't confuse people with matrix 2016-02-12 17:17:26 +01:00
Mario Vavti
689a6dc085 https://blablanet.es/siteinfo/json reports itself as directory_mode DIRECTORY_MODE_PRIMARY. AFAIK this should not be the case as we can only have one primary per realm. 2016-02-12 11:12:47 +01:00
Mario Vavti
0b487122f6 tryout: introduce loading of images before rendering content and provide some detailed logging in js-console 2016-02-12 11:00:50 +01:00
redmatrix
31aaf40ade Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-11 20:37:42 -08:00
redmatrix
af7c7642bb whitespace 2016-02-11 20:37:30 -08:00
redmatrix
d939173c0e Merge pull request #278 from royalterra/master
Update boot.php Add Failback Server blablanet.es
2016-02-12 14:31:29 +11:00
redmatrix
a87efe45e0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-11 15:25:26 -08:00
redmatrix
55515a25d1 guest photo upload failing when js_upload is in use due to non-existent acl parameters 2016-02-11 15:24:21 -08:00
royalterra
7d7a254238 Merge pull request #1 from royalterra/royalterra-patch-1
Update boot.php Failback Server blablanet.es
2016-02-11 22:35:45 +00:00
royalterra
564a5ea4d5 Update boot.php Failback Server blablanet.es
This HUB is running us fallback many months us fallback server
2016-02-11 22:21:03 +00:00
Mario Vavti
d9c59a19fb update readmore.js to a more recent version 2016-02-11 13:51:37 +01:00
redmatrix
83b5adf194 feed dates are always UTC. This means we will need another mechanism to pass localised dates to items_fetch() 2016-02-10 23:05:47 -08:00
redmatrix
a26d1794fe feed dates weren't being honoured. When that was fixed they turned out to be reversed. 2016-02-10 23:00:40 -08:00
redmatrix
06a1258a9a put a sane lower time limit on content search for public feed requests 2016-02-10 19:29:00 -08:00
redmatrix
d31d3df4ea hook changes to support pubsubhubbub 2016-02-10 19:12:28 -08:00
redmatrix
91801d2e2c rev update 2016-02-10 13:55:51 -08:00
jeroenpraat
bcb94f8238 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-02-09 16:15:49 +01:00
jeroenpraat
1d2260b44e Castellano and Nederlands string updates 2016-02-09 16:15:20 +01:00
git-marijus
81c10fc739 Merge pull request #276 from phellmes/invite
Invite module UI and strings update
2016-02-09 15:57:45 +01:00
phellmes
191a2fd5be [invite module] remove trailing spaces from translatable strings 2016-02-09 14:20:26 +01:00
phellmes
97be144913 [invite module] update UI template 2016-02-09 14:07:54 +01:00
redmatrix
f984502499 need to re-arrange a few things for a short vcard 2016-02-08 19:33:25 -08:00
redmatrix
315ce6d880 lots more zcard tweaks 2016-02-08 18:16:42 -08:00
redmatrix
3da8f9b13c duplicated lines in en config file 2016-02-08 14:51:03 -08:00
redmatrix
a14b87baf2 make yet another recommended security header optional - this time because of piwik. Personally I think if you want to track people you really don't understand this project and its history, but whatever.... 2016-02-08 14:48:11 -08:00
redmatrix
90fd23e0cd try that patch again 2016-02-08 14:19:49 -08:00
redmatrix
d96e985be0 Revert "sort out the well-known acme-challenge mess - at least on apache"
This reverts commit be99c7fe12.
2016-02-08 14:06:44 -08:00
redmatrix
c8788204a9 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-08 13:58:25 -08:00
redmatrix
be99c7fe12 sort out the well-known acme-challenge mess - at least on apache 2016-02-08 13:57:40 -08:00
Mario Vavti
48963f62f9 avoid collapsing only above the viewport 2016-02-08 22:19:38 +01:00
redmatrix
00ae6bdac6 a few tweaks to uno settings page to allow a default ACL to be created 2016-02-07 21:06:17 -08:00
redmatrix
a606173e07 change register workflow if uno is set 2016-02-07 20:11:08 -08:00
redmatrix
d8e6fd5df0 provide get_server_role() to abstract different roles and capabilities 2016-02-07 18:11:10 -08:00
redmatrix
ec950de205 block public was still referenced in admin/site template 2016-02-07 15:44:42 -08:00
redmatrix
62e7fa6a23 update UI template for 'mood' module 2016-02-07 15:38:54 -08:00
redmatrix
021584d782 fix uno import by disabling for now 2016-02-05 23:45:16 -08:00
redmatrix
a5c111ef4f uno stuff 2016-02-05 23:13:33 -08:00
redmatrix
7868e47643 more uno groundwork 2016-02-05 13:32:15 -08:00
redmatrix
b4e3cd000f rev update 2016-02-05 00:06:35 -08:00
redmatrix
9c3568800c remove blackout setting now that the keepout plugin performs the same tasks (plus a lot more) 2016-02-04 23:59:09 -08:00
redmatrix
9cf105f8ea initial uno config 2016-02-04 23:58:31 -08:00
redmatrix
a8456782b5 will probably need this to make it work 2016-02-04 22:39:56 -08:00
redmatrix
4250895243 make strict transport security header optional 2016-02-04 20:38:22 -08:00
redmatrix
bfeb89075f comment buttons hook 2016-02-04 19:06:11 -08:00
redmatrix
721f61a71d update docs 2016-02-04 18:38:36 -08:00
redmatrix
a6e5d26aea Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-02-04 18:36:36 -08:00
redmatrix
d586f64e40 update the poke page layout and UI 2016-02-04 18:35:40 -08:00
redmatrix
a0900ba052 Merge pull request #274 from mrjive/master
Small adding in search result page in /help
2016-02-05 11:11:36 +11:00
redmatrix
40b00ab362 add system black/white list for embeds ahead of personal config 2016-02-04 16:09:36 -08:00
redmatrix
18208fab84 poke basic config setting 2016-02-04 11:58:56 -08:00
redmatrix
c598bbb8a9 Merge branch 'embedsec' 2016-02-03 20:33:34 -08:00
redmatrix
e6f388d869 finish moving block_public to the new security page 2016-02-03 20:32:26 -08:00
redmatrix
24e2eedd0f don't implement the default embed whitelist just yet 2016-02-03 20:29:46 -08:00
redmatrix
c75f76f740 heavy lifting on admin security page 2016-02-03 20:24:46 -08:00
redmatrix
006efbd906 change view_storage from perms_public to perms_specific in the social_private role 2016-02-03 15:44:36 -08:00
redmatrix
28386d7471 admin security page for configuring white and black lists and other security options. 2016-02-03 15:23:24 -08:00
mrjive
f9545dc359 Added section-title-wrapper and section-conent-wrapper to search result page in /help 2016-02-03 14:02:34 -08:00
mrjive
e527a52f6a Merge pull request #21 from redmatrix/master
updating from original codebase
2016-02-03 22:46:54 +01:00
redmatrix
a7ed50ecd4 more zcard tweaks 2016-02-02 19:39:47 -08:00
redmatrix
06dcaaa821 some zcard cleanup - still eneds a lot more work 2016-02-02 17:14:07 -08:00
Wave
88669fa033 Merge pull request #271 from wave72/master
Updated Italian strings
2016-02-02 16:59:03 +01:00
Paolo Tacconi
225aa28a1b Updated Italian strings 2016-02-02 16:52:25 +01:00
Mario Vavti
f1245206ce change aside width to reflect recent widget style changes 2016-02-02 12:40:40 +01:00
redmatrix
7f453949a1 minor tweaks 2016-02-01 23:09:45 -08:00
redmatrix
38f385f67d slight formatting improvements 2016-02-01 21:23:47 -08:00
redmatrix
5f5342c0d3 adjust for folks that still have 175px profile photos 2016-02-01 21:21:22 -08:00
redmatrix
15e003f030 missing template 2016-02-01 21:14:36 -08:00
redmatrix
5edbc00865 profile embeds (still needs a bit of work) 2016-02-01 21:09:50 -08:00
redmatrix
723a49ccee add photos to the profile "likes this" dropdowns 2016-02-01 17:42:53 -08:00
redmatrix
ff487a0271 more oembed provider work - channel articles 2016-02-01 14:52:08 -08:00
mrjive
337735094b Merge pull request #20 from redmatrix/master
updating from original codebase
2016-02-01 11:25:07 +01:00
redmatrix
01b5b13475 oep for the photo top page 2016-01-31 20:44:54 -08:00
redmatrix
fd9f792f90 add album embed (embed the most recent photo with link to album) 2016-01-31 20:05:47 -08:00
redmatrix
e8ded61efb minor changes to changelog 2016-01-31 19:26:02 -08:00
redmatrix
b0e098bb68 rev update 2016-01-31 19:16:32 -08:00
redmatrix
f26c698f4a add zid 2016-01-31 16:33:25 -08:00
redmatrix
a341c889b7 add oembed provider for photos 2016-01-31 15:55:27 -08:00
jeroenpraat
1f87fef968 es-es+nl strings and fixing css maintained schemas 2016-01-30 23:44:45 +01:00
Mario Vavti
c8d0a2b4bb one more css fix 2016-01-30 14:40:45 +01:00
Mario Vavti
385709853b css fixes 2016-01-30 14:26:38 +01:00
Mario Vavti
0405a49df1 fix a slight regression 2016-01-30 13:47:58 +01:00
Mario Vavti
b6543beca2 do not make a difference if there are images or not for now 2016-01-30 01:34:27 +01:00
Mario Vavti
da198fdda5 more on collapsing 2016-01-30 01:28:01 +01:00
Mario Vavti
24f912e0b2 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-01-30 00:31:09 +01:00
Mario Vavti
d7abacb7b2 it is not perfect but it still may ease the collapsing of items above the viewport a little... 2016-01-30 00:30:49 +01:00
redmatrix
08aeeadd71 move permission check before global block check 2016-01-29 14:07:10 -08:00
redmatrix
c214692f66 add peer filtering to all .well-known services 2016-01-28 17:06:13 -08:00
redmatrix
35a9a468ce widget_item - provide ability to use the page title instead of the message_id to locate the desired item. You can use either, but the page title is often easier to use and discover. 2016-01-28 15:23:42 -08:00
mrjive
28943af494 Merge pull request #19 from redmatrix/master
updating from original codebase
2016-01-28 23:19:13 +01:00
redmatrix
5f1eb18da4 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-27 23:03:05 -08:00
redmatrix
ae3ca2b7df block_public_blackout setting 2016-01-27 23:02:36 -08:00
Jeroen van Riet Paap
9ea904c12d remark in the private notes encrypted
Notes are not encrypted and are readable in the database by the admin. Made a remark about that. Probably this needs to be fixed, but till than, it's better to warn people.
2016-01-28 00:21:43 +01:00
Jeroen van Riet Paap
9a4cbc05a6 no trailing slash 2016-01-27 23:48:14 +01:00
Jeroen van Riet Paap
08fbe17627 no trailing slash
it will break your system
2016-01-27 23:40:33 +01:00
Mario Vavti
722d7ff38d lower caution level from danger to warning for ignore button 2016-01-27 09:46:18 +01:00
redmatrix
5d6657f77a provide an icon to make 'add privacy group' stand out from the list of groups. Please revert if you think it's too messy. 2016-01-27 00:11:15 -08:00
redmatrix
d83b907cdc rename collections to privacy groups 2016-01-26 23:44:15 -08:00
redmatrix
202817740a control the generation or acceptance of directory keywords 2016-01-26 19:04:32 -08:00
redmatrix
9b08051703 bring back the ability to ignore a pending connection request without deleting it and without always having it in your face and without jumping through hoops. 2016-01-26 16:57:36 -08:00
redmatrix
9c71b74d37 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-26 15:39:25 -08:00
redmatrix
535a54040f add abook_account to cloned abook records, was missing 2016-01-26 15:38:56 -08:00
jeroenpraat
68030d12cf Linking new connection notification to pending connections (see Channel 1) and improved email notifications about new connections. Could not find a way to do this also for the generic notifications. Added hub domain of channel address on the new channel page. A few people on my hub didn't understood. This example will make it more clear. Some minor bits. 2016-01-27 00:24:05 +01:00
redmatrix
3494fddd7c change help text on other channel expiration setting to inform that there is a system limit. Ignore imported feed content that is older than expiration interval. 2016-01-26 15:12:34 -08:00
redmatrix
424af13891 fix undefined variable reference in widget_item 2016-01-26 14:14:18 -08:00
redmatrix
9081ddb455 don't provide notification icons on manage page for delegated channels 2016-01-24 18:36:38 -08:00
redmatrix
1ccf836ebb regression: channel name missing on delegate section of manage page 2016-01-24 18:33:02 -08:00
redmatrix
5e9e1b2c91 cleanup and add comments about what we're trying to do here 2016-01-24 15:44:16 -08:00
redmatrix
baed7d339e make exec the default for proc_run - use system.use_proc_open to use proc_open. Also prohibit delegated channels from manually invoking new_channel under the delegated account. 2016-01-24 15:20:25 -08:00
redmatrix
6759a28579 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-24 13:54:07 -08:00
redmatrix
0db2fe6e39 remote delegation issue when already logged in with different account on same site. 2016-01-24 13:53:18 -08:00
jeroenpraat
845945e70a es-es+nl string update 2016-01-24 15:31:08 +01:00
redmatrix
ae6ae88151 update hidden_configs with proc_run_use_exec 2016-01-23 16:29:39 -08:00
redmatrix
7b73a689e1 provide option to use exec in proc_run 2016-01-23 16:25:38 -08:00
Jeroen van Riet Paap
945689d01c doc 2016-01-22 16:25:00 +01:00
redmatrix
d70f69566f Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-22 02:25:05 -08:00
redmatrix
48495f41e8 provide mechanism for custom .well-known handlers and static files (e.g. for letsencypt ownership verification). Document that if you create a .well-known directory to validate a letsencrypt cert you need to remove it before installing hubzilla. We probably need a check for this in the install checklist. 2016-01-22 02:22:27 -08:00
redmatrix
47f7750f26 Merge pull request #266 from anaqreon/activitystreams
Activitystreams
2016-01-22 20:35:30 +11:00
redmatrix
81e3aa4fc8 Merge pull request #267 from bashrc/bashrc/node
Change node script types
2016-01-22 20:35:07 +11:00
Bob Mottram
8f6e01a70b Change node script types 2016-01-22 09:18:02 +00:00
redmatrix
75468c255a Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-21 19:26:22 -08:00
redmatrix
e52f64e3d2 fix visitor photo uploads 2016-01-21 19:26:04 -08:00
redmatrix
7d7ef5ac4e add a fixme 2016-01-21 18:42:44 -08:00
Andrew Manning
b368e0a1f9 Merge branch 'master' of https://github.com/redmatrix/hubzilla into activitystreams 2016-01-21 21:40:29 -05:00
Andrew Manning
dff2cdc650 Added more ActivityStreams schema support to boot.php for games 2016-01-21 21:39:43 -05:00
redmatrix
dcaef756e7 Merge pull request #265 from bashrc/bashrc/tidying
General tidying
2016-01-22 09:57:16 +11:00
redmatrix
2be515e7bb set the actual value of the password input field to a single space on remove channel and remove account because firefox does not honour 'autocomplete="off"' and insists on filling in the password, which completely defeats the purpose of password protecting this function. We want to ensure it can only be executed by somebody who knows the password and not somebody who happens upon an unattended browser session. This space is annoying and must be removed to enter the password correctly but this appears to be the only way to provide the necessary safety for that page. Setting autocomplete to a random string as suggested by the firefox doco doesn't appear to do anything useful, as autocomplete is still performed. 2016-01-21 14:32:41 -08:00
redmatrix
699d5d1081 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-21 14:04:37 -08:00
redmatrix
8847e39fb7 regression: public forums granting send stream permissions to all connections 2016-01-21 14:03:46 -08:00
jeroenpraat
55e9bd3660 A few minor tweaks in schemas + link to login form in lostpass 2016-01-21 22:02:31 +01:00
Bob Mottram
88d29a7b4b Executable flash files ??? 2016-01-21 12:26:46 +00:00
Bob Mottram
cbedb50cb3 css files should not be executable 2016-01-21 12:23:49 +00:00
Bob Mottram
78b2a4af1a README files should not be executable 2016-01-21 12:23:25 +00:00
Bob Mottram
457cc48043 Type of script 2016-01-21 12:22:54 +00:00
Mario Vavti
b711c050db make contact block look widget alike 2016-01-21 11:48:10 +01:00
Mario Vavti
928f1bfa7b css cleanup 2016-01-21 10:58:38 +01:00
Mario Vavti
2b3b6268dd Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-01-21 10:42:41 +01:00
Mario Vavti
97ebf9021c bootstrapify rating and connect buttons. position the connect button more prominent right under the profile image 2016-01-21 10:42:20 +01:00
mrjive
c49e4f52ae Merge pull request #18 from redmatrix/master
updating from original codebase
2016-01-21 09:51:32 +01:00
redmatrix
1d89198444 issue #263 - account_default_channel not set to 0 when last channel of an account is removed 2016-01-20 23:16:12 -08:00
redmatrix
8c5d5b8e1c update docs - plugin listing 2016-01-19 20:51:38 -08:00
redmatrix
d3bec0b2f9 honour poco_rating_enable in item_photo_menu 2016-01-19 15:30:17 -08:00
redmatrix
c15e3de637 hook changed, up the std_version 2016-01-19 15:21:03 -08:00
redmatrix
24bffd4418 Separate item_photo_menu() into links which deal with the post and those which deal with the author. We should probably also make this info available to themes so they could for instance provide a visual separator. 2016-01-19 15:15:34 -08:00
redmatrix
1e523414f8 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-18 19:08:26 -08:00
redmatrix
190f78fb5a several clarifications on hidden_configs 2016-01-18 19:07:41 -08:00
redmatrix
64acf3acbc Merge pull request #260 from HaakonME/master
Updated Hubzilla on OpenShift deploy script
2016-01-19 10:25:54 +11:00
redmatrix
a076a248bf add db_type to sample htconfig 2016-01-18 14:47:16 -08:00
redmatrix
1ca47074bc Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-18 14:42:22 -08:00
redmatrix
b380b618bc db_type not present in international config file templates issue #259 2016-01-18 14:42:03 -08:00
jeroenpraat
a036d88a4e Added a feature to hide rating buttons from a members channel and profile pages. 2016-01-18 21:37:47 +01:00
Haakon Meland Eriksen
2a57f716d3 Add config workflow_channel_next and set to channel 2016-01-18 19:57:00 +01:00
Haakon Meland Eriksen
86598705ef Add default_permissions_role social_private to autocreate a social private channel upon account registration 2016-01-18 19:47:06 +01:00
Haakon Meland Eriksen
5d24f62b95 Add Hubzilla Hubsites plugin to deploy script, change git for DeadSuperHero Hubzilla themes 2016-01-18 19:19:16 +01:00
Haakon Meland Eriksen
dd3f69eaf3 Merge remote-tracking branch 'upstream/master' 2016-01-18 07:31:37 +01:00
redmatrix
fc54f54b98 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-17 20:03:43 -08:00
redmatrix
80b88d819e doc updates 2016-01-17 20:03:33 -08:00
redmatrix
24c10ae733 Merge pull request #258 from einervonvielen/backup_to_usb_without_encryption
backup to external device now possible without encryption
2016-01-18 12:45:08 +11:00
redmatrix
3b18c82c88 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-17 16:51:06 -08:00
redmatrix
be83855acf generalise the site icon 2016-01-17 16:50:37 -08:00
redmatrix
10ed334e8c various issues from the forums 2016-01-17 16:29:32 -08:00
Haakon Meland Eriksen
c4a14c27cf Merge remote-tracking branch 'upstream/master' 2016-01-17 23:14:37 +01:00
jeroenpraat
819a331c4a update es-es and nl strings. adjusted a few matrix to grid strings 2016-01-17 20:03:26 +01:00
Einer von Vielen
9fa6593d7f backup to external device now possible without encryption. Before this
the daily backup did allow LUKS+ext4 compatible file system only.
2016-01-17 18:44:21 +01:00
Haakon Meland Eriksen
256472f9eb Merge remote-tracking branch 'upstream/master' 2016-01-17 11:26:18 +01:00
redmatrix
9b3b2efe9a call build_sync_packet() on pdledit updates 2016-01-17 01:05:32 -08:00
redmatrix
da9a8d54de minversion issue 2016-01-17 00:17:23 -08:00
Haakon Meland Eriksen
af8449cef8 Merge remote-tracking branch 'upstream/master' 2016-01-17 00:40:21 +01:00
redmatrix
0365f5d52c Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-16 14:04:14 -08:00
redmatrix
110ef6201e add $deliver flag to item_store() and item_store_update() [default true]. If false, do not send any notifications or process tag_deliver. This should avoid any network activity from happening as the result of a channel (actually item) import. Other minor fixes in the handling of the $allow_exec flag and further protecting CSS passed to widgets from rogue code and XSS. 2016-01-16 14:00:22 -08:00
Mario Vavti
0d5daea93d move dir total ratings button to the left to prevent the connect button beeing shifted on channels with ratings 2016-01-16 21:30:57 +01:00
Haakon Meland Eriksen
983e170f20 Merge remote-tracking branch 'upstream/master' 2016-01-16 13:44:23 +01:00
redmatrix
f66c6bfebf Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-15 11:59:38 -08:00
redmatrix
fe77ab4d71 minor version roll 2016-01-15 11:59:19 -08:00
mrjive
763c700372 Merge pull request #17 from redmatrix/master
updating from original codebase
2016-01-15 20:58:10 +01:00
Mario Vavti
2498df68c7 change button order for consistency 2016-01-15 13:20:45 +01:00
Mario Vavti
d36aa4fc89 provide a recent activity link in /connections 2016-01-15 12:08:04 +01:00
Mario Vavti
f4e1b2123a add an approve button to /connections and get rid of the modal popup in /connedit. for quick approval (default collection and perms etc.) we now can use the approve button in /connections else click the edit button and make changes and approval from /connedit. hope thats any better... 2016-01-15 11:28:05 +01:00
Mario Vavti
63ee0daac5 provide more contact infos and update some protocol type definitions 2016-01-15 10:42:44 +01:00
ken restivo
b58177e3c6 Use ctrl-d for multi-line messages. 2016-01-14 21:05:36 -08:00
redmatrix
f888548e0e issue with plugin loadable layouts 2016-01-14 20:51:59 -08:00
redmatrix
6ff192c4ea update widget docs with widget_cover_photo 2016-01-14 18:43:54 -08:00
redmatrix
64753effd1 cover photo fetch and widget 2016-01-14 17:25:27 -08:00
redmatrix
be9442e7b3 more cover photo work 2016-01-14 16:29:50 -08:00
Mario Vavti
ef2890fe51 this might be controversal - if approving a connection from the popup go back to connections page. if the popup is dismissed and the connection is approved from the page stay on /connedit page to be able to adjust perms etc... 2016-01-15 00:03:15 +01:00
Mario Vavti
614dcb8bce since the perms will be reset on approval better do not provide the perms tool before we approved a connection 2016-01-14 23:38:00 +01:00
Mario Vavti
3ba81c8bb6 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2016-01-14 23:23:28 +01:00
Mario Vavti
588d022fbb provide some info about our contacts - status (archived, hidden, etc.), public forum (like in directory) and show since when we are connected 2016-01-14 23:23:12 +01:00
redmatrix
96990fc1c5 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-14 11:47:23 -08:00
redmatrix
4506d80198 revision update 2016-01-14 11:45:48 -08:00
Haakon Meland Eriksen
72353bf044 Merge remote-tracking branch 'upstream/master' 2016-01-14 18:14:30 +01:00
mrjive
2696deb2a1 Merge pull request #16 from redmatrix/master
updating from original codebase
2016-01-14 18:07:56 +01:00
Mario Vavti
9f9fdc1434 bring back opacity for archived contacts 2016-01-14 14:00:02 +01:00
Mario Vavti
e2b79c34bc some work on connections 2016-01-14 13:50:47 +01:00
Mario Vavti
69573c6afe some template work on follow widget 2016-01-14 10:36:45 +01:00
mrjive
5c937c5642 Merge pull request #15 from redmatrix/master
updating from original codebase
2016-01-14 09:30:50 +01:00
redmatrix
e500a08f15 more progress on cover photo cropping and storage 2016-01-13 20:26:27 -08:00
redmatrix
82aec69302 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-13 17:32:42 -08:00
redmatrix
9584ca080c some initial work on uploading and cropping cover photos 2016-01-13 17:32:09 -08:00
Mario Vavti
e1ddee6c26 fix sharing of photo items 2016-01-13 11:23:40 +01:00
redmatrix
86b550e43e Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-13 01:36:08 -08:00
redmatrix
3bf9dc9f18 more work on auto channel creation during register 2016-01-13 01:17:02 -08:00
Mario Vavti
0ca7aa8c09 20em is to big for mobile use 2016-01-13 09:39:46 +01:00
redmatrix
58efd7553c very small tweaks to CLI plugin manager utility 2016-01-13 00:08:07 -08:00
redmatrix
0484f5b0dc Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-12 20:05:37 -08:00
redmatrix
961540160f cleanup text in INSTALL.txt 2016-01-12 20:05:16 -08:00
ken restivo
93096a9db8 Correct docs. 2016-01-12 18:51:57 -08:00
redmatrix
f757285ea8 cli utility for managing addons 2016-01-12 18:00:20 -08:00
redmatrix
baedd25309 'auto channel creation' - if the corresponding config variable is set, create a channel when an account is created.
Plugins can provide the necessary channel details (probably from an extended registration form). If no details are provided, a social (mostly public) channel will be created using the LHS of the email address and you will be directed to your channel page (unless email verification is required, in which case this step will be delayed until successful validation and login). If the reddress is already assigned a random name(1000-9999) reddress will be assigned.
2016-01-12 15:43:08 -08:00
ken restivo
bbc1a1f1fb Source the conf. 2016-01-12 13:20:37 -08:00
ken restivo
addf696db8 Add very simple, minimalist posting shell script. 2016-01-12 13:19:21 -08:00
redmatrix
9327ac0ba7 "aconfig" or account configuration storage, needed for some upcoming work. Built on top of xconfig. 2016-01-11 23:54:53 -08:00
redmatrix
a8a5cb05a7 logic reversal in version checking 2016-01-11 17:29:27 -08:00
redmatrix
bff33a98ce Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-11 16:37:29 -08:00
redmatrix
66c8658898 plugin version compatibility checking. To use, set MinVersion, MaxVersion or MinPHPversion in the plugin header block. Case is not important. We check the project versions against STD_VERSION, which should be rolled to a new y of x.x.y if the plugin interface or project code changes in an incompatible way. 2016-01-11 16:34:12 -08:00
Jeroen van Riet Paap
d6b2c8f296 Update README.md 2016-01-11 19:54:22 +01:00
Jeroen van Riet Paap
4e89895391 center 2016-01-11 19:52:12 +01:00
Jeroen van Riet Paap
0f5da31eb2 point to installation docu 2016-01-11 19:41:03 +01:00
mrjive
3206a46a92 Merge pull request #14 from redmatrix/master
updating from original codebase
2016-01-11 11:37:43 +01:00
Wave
42b35c5ac9 Merge pull request #253 from wave72/master
Italian strings updated
2016-01-11 11:02:09 +01:00
Paolo Tacconi
04180985cb Italian strings updated 2016-01-11 10:55:51 +01:00
Haakon Meland Eriksen
42433c0b44 Merge remote-tracking branch 'upstream/master' 2016-01-11 06:38:24 +01:00
redmatrix
f4d47f825d revert lost link 2016-01-10 20:38:47 -08:00
redmatrix
44137be88d Merge pull request #252 from einervonvielen/homeinstall
installation script for debian next to a router at home
2016-01-11 15:38:07 +11:00
redmatrix
a524f0c2c1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-10 17:40:20 -08:00
redmatrix
d79d6c7055 the mail_isreply flag wasn't being set in the right cases 2016-01-10 17:39:18 -08:00
jeroenpraat
e51035ba9a String update es-es and nl. Plus some extra bits, incl .gitignore update with pageheader.html 2016-01-10 20:45:39 +01:00
Einer von Vielen
d4645ec609 Added files for installation script 2016-01-10 18:25:36 +01:00
Einer von Vielen
51f34b6b07 indexed 2016-01-10 18:24:15 +01:00
mrjive
9cbbc92062 Merge pull request #13 from redmatrix/master
updating from original codebase
2016-01-10 09:44:43 +01:00
redmatrix
23c7086605 add locked features to siteinfo to assist in debugging 2016-01-09 23:39:53 -08:00
redmatrix
b00c22916a fix relative urls on some Diaspora profile photos 2016-01-09 14:02:58 -08:00
Haakon Meland Eriksen
41057ac364 Merge remote-tracking branch 'upstream/master' 2016-01-09 18:47:52 +01:00
redmatrix
1c982315dd issue #251 2016-01-07 20:04:13 -08:00
redmatrix
bf99906386 provide admin toggle to disable delivery reports 2016-01-07 14:27:06 -08:00
redmatrix
3c88184177 optional support for public key pinning 2016-01-07 14:06:51 -08:00
redmatrix
f4968e9f45 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-07 12:48:42 -08:00
redmatrix
100412267a extra security headers, revert or fix if functionality is blocked 2016-01-07 12:47:46 -08:00
redmatrix
00b98730f7 Merge pull request #250 from wave72/master
In Hubzilla messages.po is hmessages.po
2016-01-08 06:44:29 +11:00
Wave72
242da95eed Wrong branding in Translations doc 2016-01-07 11:24:31 +01:00
Wave72
0eb5dd6d21 In Hubzilla messages.po is hmessages.po 2016-01-07 11:08:19 +01:00
mrjive
0fa34c6880 Merge pull request #12 from redmatrix/master
updating from original codebase
2016-01-07 10:47:11 +01:00
Haakon Meland Eriksen
bfe8e1e2e9 Merge remote-tracking branch 'upstream/master' 2016-01-07 00:02:40 +01:00
redmatrix
761afd029d version roll 2016-01-06 13:53:49 -08:00
redmatrix
93565ea768 features management page for hubmins 2016-01-06 13:01:28 -08:00
Haakon Meland Eriksen
1f82beb2ef Merge remote-tracking branch 'upstream/master' 2016-01-06 06:36:40 +01:00
redmatrix
c076e72cbf provide an option to toggle the view of locked features so we can use the same list in an admin feature set & lock page. 2016-01-05 20:38:32 -08:00
redmatrix
26139ee06f make 'refresh permissions' do something useful for non-zot connections 2016-01-04 23:27:06 -08:00
redmatrix
bd394ba6dc Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-04 22:13:46 -08:00
redmatrix
1f0e603992 expire delivery reports at 10 days by default instead of 30. 2016-01-04 22:12:36 -08:00
Haakon Meland Eriksen
f5c10f249c Merge remote-tracking branch 'upstream/master' 2016-01-05 06:24:43 +01:00
ken restivo
69f9842ec9 Merge pull request #249 from chris1315/patch-5
main.bb
2016-01-04 20:03:10 -08:00
Haakon Meland Eriksen
d2d71b8630 Merge remote-tracking branch 'upstream/master' 2016-01-04 20:05:59 +01:00
chris1315
ff3aa6c663 main.bb
main documentation in french
2016-01-04 19:53:55 +01:00
mrjive
dcb5f62413 Merge pull request #11 from redmatrix/master
updating from original codebase
2016-01-04 18:20:49 +01:00
Wave
c3e2505b66 Merge pull request #248 from wave72/master
Updated Italian strings
2016-01-04 14:26:09 +01:00
Paolo Tacconi
c7cc595906 Updated Italian strings 2016-01-04 14:18:52 +01:00
redmatrix
2dd9e27a44 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-04 01:20:01 -08:00
redmatrix
26ed0b0f34 version script was all screwed up 2016-01-04 01:19:40 -08:00
redmatrix
374aadc97e Provide a mechanism for a hub admin to lock features in the on or off state. Locked features will not be available in the UI on the Additional Features page to be set by members. If all features are locked, the link to the Additional Features page will not be displayed. 2016-01-04 01:02:10 -08:00
Haakon Meland Eriksen
86dd4e7ee0 Fixed deploy 2016-01-04 06:41:25 +01:00
Haakon Meland Eriksen
714a93022f Removed deploy to get from upstream 2016-01-03 23:26:00 +01:00
redmatrix
35fd21531a Merge pull request #246 from HaakonME/HaakonME-Hubzilla-on-OpenShift-Hubzilla-Chess
Hubzilla on OpenShift deploy script with Huzilla Chess
2016-01-04 08:12:16 +11:00
redmatrix
ca00ae2e23 Merge pull request #247 from chris1315/patch-3
Create about.bb
2016-01-04 08:12:02 +11:00
jeroenpraat
b8655dd3bc forgot to add this to the docu 2016-01-03 22:01:27 +01:00
jeroenpraat
9e6f43e3ff added some real examples for the default-permission-role in de docu. also updated comanche template redable and another css class to tpl file 2016-01-03 21:56:39 +01:00
chris1315
9ec258b74d Create about.bb 2016-01-03 19:45:53 +01:00
Haakon Meland Eriksen
8ca4fb3784 Add Hubzilla Chess repo to deploy script 2016-01-03 14:13:29 +01:00
Haakon Meland Eriksen
d860dd753e Hubzilla Chess - single file commit to upstream
Adding Hubzilla Chess to Hubzilla on OpenShift deploy script
2016-01-03 12:50:15 +01:00
Haakon Meland Eriksen
b4ccc62596 Add Hubzilla Chess repo to deploy script 2016-01-03 12:23:42 +01:00
mrjive
07f5bdde60 Merge pull request #10 from redmatrix/master
updating from original codebase
2016-01-03 09:52:37 +01:00
redmatrix
5b0a17359d Provide the ability for a hub admin to specify a default permissions role for the first channel created by a new account. This simplifies channel creation by restricting the available options at registration time. The restriction is not applied to any additional channels created under the same account; and in any event can be changed immediately after channel creation, if desired. 2016-01-02 23:39:57 -08:00
jeroenpraat
1ad90b8662 Update es+nl strings and added title on hover for items (needed to view titles that are cut-off) 2016-01-02 15:14:30 +01:00
redmatrix
54ceef0ba1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2016-01-01 16:13:29 -08:00
redmatrix
c38edfcb32 issue #241 (redmatrix issue 405) 2016-01-01 16:12:43 -08:00
redmatrix
5b9afd7555 Merge pull request #245 from chris1315/patch-2
Create git_for_non_developers.bb
2016-01-02 07:49:00 +11:00
redmatrix
e665afcc2a Merge pull request #244 from anaqreon/anaqreon-titel-typo
Misspelled Titel
2016-01-02 07:48:42 +11:00
chris1315
b0ec0e9eac Create git_for_non_developers.bb 2016-01-01 16:24:49 +01:00
Andrew Manning
49e4016ba2 Misspelled Titel
should be Title
2016-01-01 05:53:29 -05:00
redmatrix
9ee7d60afe more issue #239 2015-12-31 15:17:12 -08:00
redmatrix
1964fa05e1 issue #239, provide 'Public' text on ACL selector when appropriate to do so. 2015-12-31 15:10:36 -08:00
redmatrix
caf3a69d99 yearly license update 2015-12-31 13:25:23 -08:00
redmatrix
769ad4a836 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-31 12:31:17 -08:00
redmatrix
062c03c9f7 comment clarification 2015-12-31 12:30:49 -08:00
redmatrix
2cf4ac26fd log API improvements and queue optimisation for singleton networks 2015-12-31 12:26:41 -08:00
jeroenpraat
405725875d nl+es-es string update 2015-12-29 22:09:47 +01:00
redmatrix
5f61f57b2c Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-29 11:16:47 -08:00
redmatrix
fbeb33479b store perms_accept on channel creation 2015-12-29 11:16:13 -08:00
redmatrix
ffd4557447 Merge pull request #238 from anaqreon/remove-bad-url
Removed defunct URL from old auto-update idea
2015-12-28 18:12:50 +11:00
redmatrix
cf5df259e5 refresh issue 2015-12-27 21:08:28 -08:00
Andrew Manning
3d6359f2e7 Removed defunct URL from old auto-update idea 2015-12-26 16:20:56 -05:00
redmatrix
5a229234e7 Set accept permissions to that of role so if you change to a custom role you don't start with nothing. 2015-12-25 15:56:29 -08:00
redmatrix
b1a77b2235 don't send wall-post notifications when creating webpages on another channel 2015-12-25 14:59:46 -08:00
redmatrix
6db6fef29f spelling 2015-12-25 14:56:06 -08:00
redmatrix
31fbd19c86 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-25 14:32:16 -08:00
redmatrix
a085f4df7f regression: default inherited permission was not being set for a connection if the permission was 'inherited'. We need to set these so that if somebody changes the top level permissions they don't have to go back and manually edit every connection to allow/deny what used to be an automatic inherited setting. 2015-12-25 14:25:58 -08:00
jeroenpraat
cd2c6779b7 update es-es strings 2015-12-25 17:37:05 +01:00
redmatrix
d39cd088a1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-24 14:41:47 -08:00
redmatrix
e98fcf68f0 issue #235 2015-12-24 14:41:18 -08:00
jeroenpraat
7d5e066056 After reading and talking with experts I came to the conclusion that es-es and es-419 (and such) dont differ that much. Latin-American Spanish (es-419) is a good idea, but we are not in a rush. So linked es to es-es. That's the proper way to do. See also https://github.com/redmatrix/hubzilla/issues/234#issuecomment-167117960 2015-12-24 15:29:52 +01:00
jeroenpraat
ba920260b8 reverted my previous commit. this is going to be fixed remotely upstream. Meanwhile es points to .es-419. See https://github.com/redmatrix/hubzilla/issues/234#issuecomment-166961958. 2015-12-23 19:18:46 +01:00
jeroenpraat
2988d96cf0 Spanish language codes. See issue #234 2015-12-23 16:41:22 +01:00
redmatrix
36717e5f32 start on refactor of plugin/theme/widget info block parsing 2015-12-22 19:53:00 -08:00
jeroenpraat
4dff54bcb8 update es+nl strings 2015-12-22 19:29:52 +01:00
redmatrix
7a9fe0907a make the queue api accessible to addons 2015-12-21 17:00:42 -08:00
redmatrix
bc5a675cdf Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-20 14:57:01 -08:00
redmatrix
f23e8f8d41 merge hell 2015-12-20 14:55:43 -08:00
redmatrix
61fa97baab Merge branch 'HaakonME-master' 2015-12-20 14:54:08 -08:00
redmatrix
047163b884 Merge pull request #232 from wave72/master
Added 'invitation_only' to site info
2015-12-21 06:14:33 +11:00
Haakon Meland Eriksen
6409237b29 Updated Norwegian strings for Hubzilla 2015-12-20 14:42:14 +01:00
wave72
598a428c6b Added 'invitation_only' to site info 2015-12-20 14:41:49 +01:00
Haakon Meland Eriksen
1cfb83f003 Merge remote-tracking branch 'upstream/master' 2015-12-20 14:09:30 +01:00
Wave
2aad4c2cf9 Merge pull request #4 from redmatrix/master
Merge master into dev branch
2015-12-20 10:20:36 +01:00
Wave
e2692a4baa Merge pull request #230 from wave72/master
Updated Italian strings
2015-12-20 10:17:55 +01:00
wave72
474a1267d7 Updated Italian strings 2015-12-20 10:08:43 +01:00
redmatrix
ed5ca9e4cc use realpath to bypass symlinks and check actually directory 2015-12-18 14:55:19 -08:00
redmatrix
8d61efa0e8 allow widget 'packages' as well as individual files 2015-12-18 14:10:06 -08:00
redmatrix
b816a575eb Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-18 13:46:38 -08:00
redmatrix
a99d28dea9 sql delete with limit 2015-12-18 13:46:03 -08:00
Haakon Meland Eriksen
628e565a6c Merge remote-tracking branch 'upstream/master' 2015-12-18 16:04:07 +01:00
Mario Vavti
84bf705811 update smarty to 3.1.28 stable 2015-12-18 11:33:34 +01:00
Haakon Meland Eriksen
a721f39945 Commented out extra addons, themes etc. 2015-12-18 07:24:05 +01:00
redmatrix
1b9722c65a loop detection 2015-12-17 18:16:46 -08:00
redmatrix
62a60e5542 more work on media uploads via api 2015-12-17 16:22:13 -08:00
redmatrix
539d06f02d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-17 14:27:07 -08:00
redmatrix
9c23fe5ab6 issue #228 2015-12-17 14:26:42 -08:00
Mario Vavti
f78e9001f3 fix search item attachment rendering 2015-12-17 19:39:26 +01:00
zzottel
dee1841394 Merge pull request #227 from zzottel/master
add forgotten German docs
2015-12-17 14:33:38 +01:00
zottel
a5201a90e8 Merge remote-tracking branch 'upstream/master' 2015-12-17 14:30:34 +01:00
zottel
5f5e4ee6b9 add forgotten German docs 2015-12-17 14:29:35 +01:00
zzottel
cf6519da99 Merge pull request #226 from zzottel/master
help files
2015-12-17 14:28:15 +01:00
zottel
63eaf643a8 small fixes to English docs 2015-12-17 14:27:13 +01:00
zottel
a57a3c709e reorganize German docs to fit the new docs structure
fix mentions of RedMatrix
2015-12-17 14:25:16 +01:00
redmatrix
bcebd1d5b9 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-16 22:47:23 -08:00
redmatrix
4cacfe59bd queue/notification/delivery refactor continued 2015-12-16 22:42:33 -08:00
redmatrix
f3ad7b9a16 Merge pull request #225 from zzottel/master
help files
2015-12-17 10:39:49 +11:00
redmatrix
b909c878b1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-16 14:49:20 -08:00
redmatrix
b155f2260f some notifier optimisations. Also put a fixme on the invite total generations for new accounts, which is incorrect and now commented out. 2015-12-16 14:47:30 -08:00
zottel
63256bc9b2 small fixes in English help files 2015-12-16 17:00:05 +01:00
zottel
87519e107a updates to some German help files 2015-12-16 16:59:17 +01:00
zzottel
a38710aa4e Merge pull request #224 from zzottel/master
update to German strings
2015-12-16 14:01:33 +01:00
zottel
020fea3031 update to German strings 2015-12-16 14:00:23 +01:00
zzottel
b4102489aa Merge pull request #223 from zzottel/master
remove directory red.zottel.red, add hubzilla.zottel.net instead
2015-12-16 12:32:17 +01:00
Wave
871ee0f571 Merge pull request #222 from wave72/master
Updated Italian strings
2015-12-16 09:13:40 +01:00
zottel
f0d90005ea remove directory fallback server red.zottel.red, add hubzilla.zottel.net instead 2015-12-16 09:06:20 +01:00
Paolo Tacconi
933e105f32 Updated Italian strings 2015-12-16 09:00:27 +01:00
redmatrix
9b4e6e1ec0 some more minor api tweaks 2015-12-15 20:21:40 -08:00
redmatrix
46e4d2d573 bring back the schemaspy makefile 2015-12-15 20:00:48 -08:00
redmatrix
2aa3acae6b remove deprecated table 2015-12-15 19:46:24 -08:00
redmatrix
8514789da9 additional fix for the array_key_exists message in #221 2015-12-15 17:50:14 -08:00
redmatrix
20dcf37976 issue #221 2015-12-15 17:42:49 -08:00
redmatrix
38d513181d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-15 15:17:39 -08:00
redmatrix
f121b74bec enhance whitespace 2015-12-15 15:17:10 -08:00
redmatrix
cb8cccc537 fix typos before merging 2015-12-15 15:13:16 -08:00
redmatrix
2924b9182e revise the photo activity a bit so that we always have a valid activity body. Several network connectors can get empty posts or posts that don't contain any reference whatsoever to the actual photo. Since this can cause duplicate images on our own site, just provide the activity summary and any included body text to the activity by default. Provide a function to enhance this activity with an actual photo which can be applied on demand for any network connectors that desire it. Otherwise they'll just get a link to the photo in the activity statement - which is better than an empty post. Have applied this "add actual photo to the post" function to both Diaspora and RSS feeds. Also provide the album as the activity target. 2015-12-15 15:01:54 -08:00
jeroenpraat
5a59cd9b8c Invitation only added to the admin site page. Plus css wrapper class to docu search. 2015-12-15 21:00:40 +01:00
redmatrix
ba463afbdc even more queue api 2015-12-15 00:42:19 -08:00
redmatrix
6f2a5117dc more queue api 2015-12-15 00:04:30 -08:00
redmatrix
b13241564b more work on queue api 2015-12-14 22:44:05 -08:00
redmatrix
76816de3aa simplify queue insertion for normal items 2015-12-14 20:49:12 -08:00
redmatrix
49108c230b regenerate the item body for linked photo items that now have no body to provide legal activities when going to other networks. Remove the signature since the signed text was an empty string and we've just replaced it with content that will not verify. 2015-12-14 17:58:39 -08:00
redmatrix
b32bba47c8 set following to false 2015-12-14 17:25:40 -08:00
Haakon Meland Eriksen
3b1ab5e79c Merge remote-tracking branch 'upstream/master' 2015-12-14 18:55:43 +01:00
redmatrix
dcf7946673 revert include/photos.php:L380 2015-12-14 02:34:18 -08:00
redmatrix
fdd2da905a more work on api media uploads 2015-12-13 19:15:42 -08:00
redmatrix
2cceca49e9 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-13 15:37:26 -08:00
redmatrix
bb0e4044bf remove the unqualified "OAuth" namespace from the project. We need to reference either OAuth1 or OAuth2. 2015-12-13 15:35:45 -08:00
jeroenpraat
7244dfce1d Typos 2015-12-12 17:32:29 +01:00
jeroenpraat
fb5ac37ca2 That script is taken from someone else without any contribution (http://blog.strictly-software.com/2013/07/apache-performance-tuning-bash-script.html). Also the English is very bad. Anyway, I've replaced it with some general tips that all web admins should know. 2015-12-12 17:30:02 +01:00
jeroenpraat
f0a588547d Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-12-12 17:02:01 +01:00
jeroenpraat
04d3ac9aaf es+nl strings update 2015-12-12 17:01:43 +01:00
Haakon Meland Eriksen
565126a888 Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-12 10:00:15 +01:00
redmatrix
395268da22 a couple of api improvements 2015-12-11 21:10:20 -08:00
redmatrix
ac3075bef7 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-11 17:01:23 -08:00
redmatrix
1f4c596841 add deprecated update_with_media endpoint 2015-12-11 17:00:45 -08:00
redmatrix
6613275cc2 Merge pull request #215 from royalterra/master
Add Link and extra Doc to Apache Configuration
2015-12-12 09:15:24 +11:00
Haakon Meland Eriksen
e7d9863432 Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-11 19:40:09 +01:00
Haakon Meland Eriksen
b9af0645c2 Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-11 19:34:29 +01:00
redmatrix
9fb7a12849 incorrect obj_type on several items 2015-12-11 02:52:43 -08:00
royalterra
4633273279 Update INSTALL.txt
Add Link to ApacheTune for configure mod Prefork
2015-12-11 09:49:14 +00:00
royalterra
d0482133a5 Update INSTALL.txt 2015-12-11 09:48:04 +00:00
royalterra
4ff31d0a41 Merge pull request #1 from redmatrix/master
merge branches
2015-12-11 09:39:01 +00:00
redmatrix
f73c82632f some minor cleanup - change the default of the discover tab (public stream access) 2015-12-10 19:18:55 -08:00
redmatrix
8389d8677d some major cleanup of api authentication stuff - still needs much more and this still may not solve #206 2015-12-10 16:39:46 -08:00
redmatrix
7fa944ed95 don't spit out sabre xml on permission denied exceptions, just provide a 401 2015-12-10 15:13:10 -08:00
redmatrix
2340092008 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-10 14:44:37 -08:00
jeroenpraat
6cd3296c08 Missing underscores in doc 2015-12-10 23:32:25 +01:00
Haakon Meland Eriksen
d86bc0b6cf Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-10 20:43:32 +01:00
Haakon Meland Eriksen
e01d4f289b Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-10 07:27:42 +01:00
redmatrix
8e1e301764 refactor a few more redundant returns 2015-12-09 21:03:29 -08:00
redmatrix
bd37f59829 simplify magic-auth - a lot... Would be even simpler if we didn't need to provide remote debugging, which takes up about half the code. But we need that because nobody wants to try and debug this shit by asking somebody at the other end to report what's in their logfile. We've tried this repeatedly. The only thing we can do is bring back all the debugging data so you can look at it yourself. 2015-12-09 20:51:00 -08:00
redmatrix
72edc9cd6c start working on the singleton setting 2015-12-09 18:30:30 -08:00
redmatrix
93123e1fa8 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-09 14:56:27 -08:00
redmatrix
4b6dcbb057 provide paths for include files 2015-12-09 14:56:08 -08:00
jeroenpraat
47f7165b07 Some work on the login, register and default home page. Mostly neatly centering things on different viewport widths. Bluegrid schema updated. 2015-12-09 23:41:37 +01:00
redmatrix
ae2c0e6552 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-09 11:51:55 -08:00
redmatrix
200eabe052 add empty arg 2015-12-09 11:51:31 -08:00
redmatrix
5042200492 Merge pull request #212 from msooon/master
Let’s Encrypt support
2015-12-10 06:24:30 +11:00
jeroenpraat
2e73e6bfb6 Fix #109. 2015-12-09 14:37:14 +01:00
msooon
c1d10bbbcb Merge pull request #1 from msooon/Lets-encrypt-support
Let’s Encrypt added
2015-12-09 12:21:17 +01:00
msooon
746acc21f7 Let’s Encrypt added 2015-12-09 10:54:48 +01:00
msooon
f5226a748f Let’s Encrypt added 2015-12-09 10:48:41 +01:00
Haakon Meland Eriksen
6a3995014e Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-09 07:38:58 +01:00
Haakon Meland Eriksen
534a537319 Hubzilla textbox - promoting Hubzilla features in jot.tpl - third version 2015-12-09 07:31:18 +01:00
Haakon Meland Eriksen
10eefc4eed Hubzilla textbox - promoting Hubzilla features in jot.tpl - second version 2015-12-09 07:28:55 +01:00
Haakon Meland Eriksen
3d4b3b6a92 Hubzilla textbox - promoting Hubzilla features in jot.tpl 2015-12-09 07:19:31 +01:00
redmatrix
0f4ceedbb4 remove duplicated code 2015-12-08 20:47:55 -08:00
redmatrix
656e5fd052 use killme() instead of die() so that any sessions are closed cleanly. 2015-12-08 20:42:46 -08:00
redmatrix
5735cad457 remove extra debug logging and ensure we don't try to authenticate without a hubloc 2015-12-08 19:43:49 -08:00
redmatrix
648f972cf0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-08 18:32:05 -08:00
redmatrix
baab9b6fbc more libzot stuff 2015-12-08 18:31:33 -08:00
jeroenpraat
60b0f9af90 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-12-09 01:39:20 +01:00
jeroenpraat
9d04406f9a First part of fix for issue #109 2015-12-09 01:39:02 +01:00
redmatrix
29ac533cc9 remove some unused stuff 2015-12-08 16:32:06 -08:00
redmatrix
79340c5147 change to fallback server list 2015-12-08 11:08:00 -08:00
redmatrix
b9f5076cfc move the diaspora templates out of core (except for diaspora_vcard, which is still stuck here for the present time) 2015-12-07 19:17:40 -08:00
redmatrix
241607e7d7 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-07 16:15:52 -08:00
redmatrix
bd7d851758 a loose end 2015-12-07 16:11:39 -08:00
redmatrix
5de1a1ce10 extra paren removed 2015-12-07 16:06:43 -08:00
redmatrix
8b974f8f74 abstract the message handlers 2015-12-07 16:01:54 -08:00
jeroenpraat
96d94551f9 update es+nl 2015-12-07 21:10:36 +01:00
Mario Vavti
ba8d9c0f0b Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-12-07 20:28:51 +01:00
Mario Vavti
68cbebe1a5 mod_mitem.js is obsolete 2015-12-07 20:28:17 +01:00
Mario Vavti
0174cb10ae fix issue #210 2015-12-07 19:11:32 +01:00
Mario Vavti
293df6308c some style.css janitor work 2015-12-07 18:57:03 +01:00
Mario Vavti
af29822f04 override bs default margin 2015-12-07 15:45:21 +01:00
Mario Vavti
0df4f9c114 change album_id logic to make it work with ajax calls 2015-12-07 13:27:35 +01:00
Mario Vavti
69c9f4588c make justify gallery work with more than one albums per page (eg album widget) 2015-12-07 12:13:51 +01:00
redmatrix
53627c89a7 Merge branch 'dev' 2015-12-06 20:50:02 -08:00
redmatrix
f7f0d2b265 provide plugin hooks for blacklist checking functions. 2015-12-06 20:45:21 -08:00
redmatrix
2d799f2c11 remove duplicated code 2015-12-06 19:59:46 -08:00
redmatrix
aa5b7eb98a minor optimisation 2015-12-06 19:48:46 -08:00
redmatrix
1c22e8ae7e whitespace 2015-12-06 19:32:39 -08:00
redmatrix
4d301bc5a6 comment order 2015-12-06 19:29:01 -08:00
redmatrix
4ccd9ae6da start of v4 2015-12-06 19:16:38 -08:00
Mario Vavti
c8c9916b59 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-12-07 00:01:03 +01:00
Mario Vavti
5490919557 css fixes for blockquote and code (use same padding) 2015-12-07 00:00:47 +01:00
redmatrix
3f920da413 update error 2015-12-06 14:25:47 -08:00
redmatrix
2393db3943 Merge branch 'dev' 2015-12-06 14:24:18 -08:00
redmatrix
a88ec1b1af Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-06 14:22:55 -08:00
redmatrix
553b3a5c6c version 2015-12-06 14:22:36 -08:00
Mario Vavti
a6cb25020b add missing smarty files 2015-12-06 23:12:37 +01:00
Mario Vavti
26c465ad0c update smarty to 3.1.28-dev which fixes a bug where changes in a template are only visible on the second pageload which is annoying for developing 2015-12-06 21:09:58 +01:00
Mario Vavti
f2d7083183 remove more unneeded smarty files 2015-12-06 20:25:42 +01:00
Mario Vavti
ef09a29854 remove composer release notes 2015-12-06 20:14:12 +01:00
Mario Vavti
c23ce16caf update smarty library - seems to bring some performance improvement 2015-12-06 20:12:05 +01:00
Mario Vavti
78a70fed2f fix css issue in directory 2015-12-06 16:37:57 +01:00
redmatrix
9dfe5dee64 change text "Red developers" in update failed email 2015-12-05 13:56:32 -08:00
redmatrix
36ef1d1bc6 move the instance stuff to abook where it belongs 2015-12-05 13:24:58 -08:00
redmatrix
10db51e6c2 Merge branch 'master' into dev 2015-12-05 12:48:46 -08:00
redmatrix
61aa33af1d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-05 12:41:08 -08:00
redmatrix
d8dc055dce version and string update 2015-12-05 12:40:35 -08:00
redmatrix
ce686d2c06 Merge pull request #209 from HaakonME/master
Updated Norwegian strings for Hubzilla 1.0
2015-12-06 07:35:31 +11:00
Haakon Meland Eriksen
7119976199 Merge remote-tracking branch 'upstream/master' 2015-12-05 11:26:07 +01:00
Haakon Meland Eriksen
dd7edc8ced Updated Norwegian translation 2015-12-05 11:25:36 +01:00
redmatrix
4428f70ea2 Merge pull request #208 from anaqreon/mail-text-height
Enlarge the default mail composition text area.
2015-12-05 07:47:15 +11:00
Andrew Manning
0bb7589418 Enlarge the default mail composition text area. 2015-12-04 15:29:57 -05:00
mrjive
0513463256 Merge pull request #9 from redmatrix/master
updating from original codebase
2015-12-04 10:32:14 +01:00
Mario Vavti
8a9d743f6f fix rendering of unseen forum posts count 2015-12-04 10:17:13 +01:00
redmatrix
4cab74c18c use the channel blacklist for items and mail, still todo: directory and stuff 2015-12-03 21:05:48 -08:00
redmatrix
615c97132d add hubzilla.nl as fallback 2015-12-03 19:18:12 -08:00
redmatrix
4b707db4b3 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-03 18:28:32 -08:00
redmatrix
70c5f347c4 remove non-working directory server from the project fallback list. 2015-12-03 18:27:49 -08:00
ken restivo
5217d89543 srand() is for seeding the PRNG. You want rand() here. 2015-12-03 18:21:25 -08:00
redmatrix
ca55bbdaed use the std_version where applicable instead of matching to the git. 2015-12-03 17:09:05 -08:00
redmatrix
366e735ad8 time to tag the sucker 2015-12-03 14:44:03 -08:00
Haakon Meland Eriksen
c363fc71eb Merge remote-tracking branch 'upstream/master' 2015-12-03 18:14:52 +01:00
redmatrix
9f3ea71d5d non-functional changes (changes to comments, etc.) 2015-12-02 20:45:21 -08:00
redmatrix
75058e54b8 provide correct error if a directory server requires a realm_token and one wasn't provided 2015-12-02 18:37:22 -08:00
redmatrix
ed5405d4f7 prevent function name re-declaration in widget space 2015-12-02 18:25:09 -08:00
redmatrix
8dd4270a6a Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-02 16:23:28 -08:00
redmatrix
c29f622b90 introduce STD_VERSION and get_std_version() [in include/plugin.php], we begin with 0.11.1 since it is an incompatible interface change to 0.11. 2015-12-02 16:21:15 -08:00
jeroenpraat
bc0e415926 es+nl and bluegrid update 2015-12-03 00:01:51 +01:00
Mario Vavti
c48965ea2f fix nav search popup active background color 2015-12-02 22:58:38 +01:00
Mario Vavti
bb995f1bb6 fix mail attachment and photo permissions. issue #202 2015-12-02 11:34:40 +01:00
Mario Vavti
857e13e9b8 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-12-02 09:44:42 +01:00
Mario Vavti
593423434c fix attachment rendering for mail 2015-12-02 09:44:25 +01:00
redmatrix
25caeee854 issue #204 2015-12-01 20:21:44 -08:00
redmatrix
20ce7a2d9f Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-12-01 15:51:39 -08:00
redmatrix
1ba74d824b usercache is no longer used 2015-12-01 15:51:15 -08:00
redmatrix
be7b706486 Merge pull request #200 from anaqreon/update-addon-script
Update addon script
2015-12-02 09:08:25 +11:00
Mario Vavti
78e18fcdcf fix badge padding in narrow navbar 2015-12-01 13:28:50 +01:00
Mario Vavti
706598313e make narrow navbar setting work again 2015-12-01 13:18:08 +01:00
Haakon Meland Eriksen
b96f09bb3a Merge remote-tracking branch 'upstream/master' 2015-12-01 00:35:01 +01:00
redmatrix
4b191fb558 version 2015-11-30 14:54:34 -08:00
Wave
de1abf9981 Merge pull request #201 from wave72/master
Updated Italian strings
2015-11-30 16:29:16 +01:00
Paolo Tacconi
c69f6ca1f4 Updated Italian strings 2015-11-30 16:25:24 +01:00
Andrew Manning
d4b04d22ed Merge branch 'master' of https://github.com/redmatrix/hubzilla into update-addon-script 2015-11-30 07:50:21 -05:00
Andrew Manning
b1f4b9759b Abort addon update if repo does not exist 2015-11-30 07:49:56 -05:00
redmatrix
650f882265 generalise the site black|white allow lists, also add a channel black|white list for future use 2015-11-29 20:26:00 -08:00
redmatrix
a2747403f2 report correct directory mode for standalone directories in siteinfo 2015-11-29 19:45:29 -08:00
redmatrix
3f9412add2 create get_site_info() function so we can have a siteinfo.json module instead of or actually in addition to siteinfo/json 2015-11-29 19:37:03 -08:00
redmatrix
29877963be issue #189 2015-11-29 18:07:59 -08:00
redmatrix
302c5afdee don't try to pull public content from dead sites 2015-11-29 16:28:35 -08:00
redmatrix
9f90806027 log whatever is showing up in the delivery hash array since it seems that one site has something unusual there and it is throwing errors. 2015-11-29 15:23:29 -08:00
Haakon Meland Eriksen
519862115c Merge remote-tracking branch 'upstream/master' 2015-11-29 11:56:47 +01:00
Haakon Meland Eriksen
4d97ea106c Resolving merge conflict 2015-11-29 11:55:39 +01:00
redmatrix
d3aa50c9c3 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-28 19:17:28 -08:00
redmatrix
1708769d42 version 2015-11-28 19:16:55 -08:00
Mario Vavti
4e223f816a reflect in form if we are editing or creating 2015-11-28 17:05:37 +01:00
Haakon Meland Eriksen
8cf6b4064f My version of jot.tpl 2015-11-28 16:44:02 +01:00
Haakon Meland Eriksen
17907f11a3 Merge remote-tracking branch 'upstream/master'
Conflicts:
	include/datetime.php
	include/text.php
	mod/events.php
	version.inc
	view/css/mod_events.css
	view/theme/redbasic/css/style.css
	view/tpl/event_head.tpl
	view/tpl/events-js.tpl
	view/tpl/jot.tpl
2015-11-28 16:26:24 +01:00
Haakon Meland Eriksen
cb7df797e1 Removed my version of jot.tpl 2015-11-28 16:23:17 +01:00
Mario Vavti
7db86a4e05 css fixes 2015-11-28 14:47:17 +01:00
Mario Vavti
122d7281f7 fix tpl if clause 2015-11-28 11:04:33 +01:00
redmatrix
4bfd34b479 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-27 20:05:47 -08:00
redmatrix
962d9f36d0 document dreport expiration setting 2015-11-27 20:05:20 -08:00
ken restivo
216d41cd64 Reverted. 2015-11-27 16:32:32 -08:00
ken restivo
4af104384b Re-reading zottel's excellent docs, 70 seems the recommended default. Changed. 2015-11-27 14:43:17 -08:00
ken restivo
aa78d51521 More sane defaults, to avoid problems. Addresses #188 2015-11-27 14:40:22 -08:00
ken restivo
16e7ec7bfe Safe defaults to prevent #188 2015-11-27 14:38:29 -08:00
Mario Vavti
fce1dc083b add templates 2015-11-27 22:53:36 +01:00
Mario Vavti
bcfa72ed31 move events tools to aside widget 2015-11-27 22:45:28 +01:00
Mario Vavti
b92cc852d1 css fixes 2015-11-27 21:44:02 +01:00
Mario Vavti
6762af4158 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-27 20:55:44 +01:00
Mario Vavti
f691e8981a fixes #194 - New directory server is selected on every directory page reload 2015-11-27 20:55:27 +01:00
git-marijus
6875a540ec Merge pull request #193 from zzottel/master
added info about Apache settings to avoid Apache running wild
2015-11-27 14:04:59 +01:00
Mario Vavti
e569f5d6eb unset does not work in webkit browsers 2015-11-27 14:00:37 +01:00
Mario Vavti
61a5e81bc6 only show edit icon for your own events and minoe cleanup 2015-11-27 13:55:02 +01:00
Mario Vavti
ee153f64d4 add spinner to events 2015-11-27 13:32:20 +01:00
zottel
4c4db6f73c added info about Apache settings to avoid Apache running wild 2015-11-27 10:35:31 +01:00
redmatrix
fa5a382c4b don't show item_delayed_publish items in tag clouds 2015-11-26 17:35:41 -08:00
Mario Vavti
a73c385831 lost calendar icon 2015-11-26 23:29:49 +01:00
Mario Vavti
91b35c5349 various css fixes 2015-11-26 23:19:06 +01:00
Mario Vavti
056db37c66 beautify event item code 2015-11-26 22:14:20 +01:00
Mario Vavti
5cb71fa5da default timepicker to 15 min steps. abbr -> span 2015-11-26 21:00:04 +01:00
Mario Vavti
55d00243fb Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-26 20:53:59 +01:00
Mario Vavti
8a269823d2 improve event rendering 2015-11-26 20:53:42 +01:00
redmatrix
5ec5b127d0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-26 11:38:07 -08:00
redmatrix
0cf9e498b9 version 2015-11-26 11:37:43 -08:00
Mario Vavti
c407e72dcc add location 2015-11-26 16:40:40 +01:00
Mario Vavti
8e3b796a2f fix event rendering 2015-11-26 16:38:14 +01:00
Mario Vavti
17e7b276f6 we also need nofinish in the object. css fices 2015-11-26 14:45:22 +01:00
Mario Vavti
306ce3819e css fixes 2015-11-26 14:16:35 +01:00
Mario Vavti
f80aff4a65 also catch the other object 2015-11-26 13:28:31 +01:00
Mario Vavti
c7cbd41c16 first iteration on the event item 2015-11-26 12:26:27 +01:00
redmatrix
41542e6886 document that you probably shouldn't set a primary directory server in somebody else's realm. 2015-11-25 17:34:03 -08:00
redmatrix
a039869ba0 issue #185 2015-11-25 17:30:11 -08:00
redmatrix
192e85ffa4 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-25 15:14:20 -08:00
redmatrix
b334201797 removed block style on dropdown contact name and details, added dropdown-menu-img-sm on nav search dropdown; as many dropdowns were unuseable 2015-11-25 15:12:54 -08:00
Mario Vavti
3ea84d7eab some basic event styling 2015-11-25 22:55:07 +01:00
Mario Vavti
a80c45940e add a if clause for the case we do not have a finish date 2015-11-25 19:02:48 +01:00
Mario Vavti
ab71e33d83 note to self: do not make things more complicated than they need to be. 2015-11-25 17:28:26 +01:00
Mario Vavti
fe57e7059b events: make sure default finish date is one hour after start date and shift the finishdate if startdate is shifted 2015-11-25 15:05:21 +01:00
Wave
2de65ab39f Merge pull request #3 from redmatrix/master
Update branch
2015-11-25 09:39:44 +01:00
redmatrix
0559db9cf8 fix event form initial values 2015-11-24 15:37:33 -08:00
redmatrix
bae7b034e6 add (blank?) label param to other instances of datetimesel 2015-11-24 14:54:13 -08:00
Mario Vavti
74a40adece Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-24 19:18:52 +01:00
Mario Vavti
1767a07f4d efent form template fixes 2015-11-24 19:18:26 +01:00
Wave
af7549d2f6 Merge pull request #187 from wave72/master
Updated Italian strings
2015-11-24 17:02:58 +01:00
Paolo Tacconi
e785b723aa Updated Italian strings 2015-11-24 16:50:12 +01:00
Mario Vavti
f520cd92d0 open form on dbl-click 2015-11-24 14:33:23 +01:00
Mario Vavti
eb6fd311df fix event droping 2015-11-24 14:25:16 +01:00
Mario Vavti
5a12944b39 oups :) 2015-11-24 14:18:29 +01:00
Mario Vavti
987619130b some event heavy lifting - please test and report issues 2015-11-24 14:15:28 +01:00
Haakon Meland Eriksen
2b2723cb74 Merge remote-tracking branch 'upstream/master' 2015-11-24 07:23:43 +01:00
redmatrix
e485ecb3b4 more database doco 2015-11-23 20:23:20 -08:00
redmatrix
8c5203f7e1 issue #185 - prevent liveUpdate from updating while the built-in html5 media player is "active". This will not have any affect on flash or other media players, and could potentially get confused if you have more than one media player actively playing at any given time. 2015-11-23 17:47:18 -08:00
redmatrix
dfaf1a1075 issue #183 2015-11-23 15:27:57 -08:00
redmatrix
bf5c0e0b0d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-23 15:18:19 -08:00
redmatrix
167e754a1b issue #184 2015-11-23 15:17:38 -08:00
redmatrix
34b804e9dc Merge pull request #182 from anaqreon/url-selected
Place link around selected text
2015-11-24 09:41:55 +11:00
Haakon Meland Eriksen
7338649fa5 Merge remote-tracking branch 'upstream/master' 2015-11-23 14:16:14 +01:00
redmatrix
ae1103c5a3 doco updates 2015-11-22 18:20:19 -08:00
redmatrix
a7e4553ea7 delivery report tweaks 2015-11-22 17:12:30 -08:00
redmatrix
6f27e8db38 Merge https://github.com/redmatrix/hubzilla into pending_merge
Conflicts:
	version.inc
2015-11-22 14:08:20 -08:00
redmatrix
292b02b58c webpages and design elements weren't being included in the item export query. 2015-11-22 14:06:52 -08:00
Haakon Meland Eriksen
e60f527cb0 Documenting the need to change database server address from 127.0.0.1 to localhost when installing Hubzilla on OpenShift with the deploy script 2015-11-22 10:50:17 +01:00
Haakon Meland Eriksen
b5a5a91b13 Merge remote-tracking branch 'upstream/master' 2015-11-22 01:56:25 +01:00
Mario Vavti
4c84a2ce61 update datetimepicker and fix it for finish date 2015-11-22 00:13:33 +01:00
Mario Vavti
18e0e4b597 do not hide scrollbars 2015-11-21 23:51:50 +01:00
Mario Vavti
74b574d0b1 datetimepicker should also respect first day of week setting 2015-11-21 23:49:29 +01:00
Haakon Meland Eriksen
9ba1b8d720 Merge remote-tracking branch 'upstream/master' 2015-11-21 17:18:44 +01:00
Mario Vavti
d726c921eb make calendar week start (sun or mon) configurable 2015-11-21 15:33:57 +01:00
Haakon Meland Eriksen
bd45bb3ad3 Merge remote-tracking branch 'upstream/master' 2015-11-21 12:17:38 +01:00
Andrew Manning
fee8503093 Merge branch 'master' of https://github.com/redmatrix/hubzilla into url-selected 2015-11-20 21:57:10 -05:00
ken restivo
fabf7081d3 Use http_status() instead of homegrowing it. Adapt http_status to handle replies with data. 2015-11-20 18:56:41 -08:00
Andrew Manning
6083cd2559 If text is selected in profile-jot-text when the link button is pressed, the input URL is applied around the text. Otherwise, the normal link data fetch occurs. 2015-11-20 21:55:13 -05:00
ken restivo
d11e80e1b3 Bump version, migrator needs to depend on it for f164ddf 2015-11-20 15:17:33 -08:00
Haakon Meland Eriksen
6942c715d0 Merge remote-tracking branch 'upstream/master' 2015-11-21 00:08:17 +01:00
redmatrix
427652e9bd Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-20 14:41:16 -08:00
redmatrix
106b4fdd2d add v4 project roadmap, partial fix for cloning of profile photos on alternate profiles 2015-11-20 14:38:32 -08:00
ken restivo
f164ddf155 Report correct HTTP error code, i.e. for API callers. 2015-11-20 13:03:16 -08:00
redmatrix
d9ddf7561f Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-20 12:51:24 -08:00
redmatrix
37368bda65 change _newwin to _blank because the window named _newwin may be hard to find if you have lots of windows/tabs open. 2015-11-20 12:49:38 -08:00
Haakon Meland Eriksen
de1b3d5113 Space between Preview and Submit in jot.tpl 2015-11-20 21:15:12 +01:00
Haakon Meland Eriksen
830b01bd2a Space between Preview and Submit in jot.tpl 2015-11-20 21:12:09 +01:00
Haakon Meland Eriksen
90187eae37 Merge remote-tracking branch 'upstream/master' 2015-11-20 19:51:57 +01:00
Mario Vavti
7399f7a087 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-20 16:40:13 +01:00
Mario Vavti
a3e47d26f6 make calendar language aware 2015-11-20 16:39:55 +01:00
jeroenpraat
d3bef2adc3 update es+nl 2015-11-20 15:18:51 +01:00
redmatrix
7b459ec355 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-20 00:20:26 -08:00
redmatrix
301072a86c issue #85, community tags and file tags lost during edits. This required splitting off communitytags as a separate tag type and is not backward compatible. Community tags on older posts or those federated from redmatrix clones will not be preserved during edits. 2015-11-20 00:15:48 -08:00
Haakon Meland Eriksen
3b7b3ef2bb Rearranging buttons 2015-11-20 07:38:59 +01:00
Haakon Meland Eriksen
b6e4611a91 Rearranging buttons 2015-11-20 07:35:43 +01:00
Haakon Meland Eriksen
2929bb672a Rearranging buttons 2015-11-20 07:29:45 +01:00
Haakon Meland Eriksen
a4765bf954 Rearranging buttons 2015-11-20 07:03:36 +01:00
Haakon Meland Eriksen
0c2045beff Rearranging buttons 2015-11-20 06:52:35 +01:00
Haakon Meland Eriksen
22f6687f44 Merge remote-tracking branch 'upstream/master' 2015-11-20 06:27:46 +01:00
ken restivo
e56633d5b0 Throw HTTP error and display error message when database is unavailable. #179 2015-11-19 20:58:13 -08:00
redmatrix
a44795e6c3 change action label from 'stop following' to 'unfollow thread' 2015-11-19 17:27:07 -08:00
redmatrix
5805a54097 directory search for pubforums using hubzilla directory servers using redmatrix flag value 2015-11-19 16:44:12 -08:00
redmatrix
350519d429 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-19 16:15:16 -08:00
redmatrix
8f94c721bf new feature: 'suppress_duplicates' issue #146 triggered with less than two minutes between posts having identical content. 2015-11-19 16:05:47 -08:00
jeroenpraat
c7652fc29c Had to switch these 2. Sorry. 2015-11-20 00:50:54 +01:00
jeroenpraat
e537d53389 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-20 00:40:32 +01:00
jeroenpraat
a890ee6864 Some bits 2015-11-20 00:39:47 +01:00
redmatrix
4f81d64517 issue #160 add blablanet to directory fallback list 2015-11-19 15:06:35 -08:00
redmatrix
b5875c3af9 Merge https://github.com/redmatrix/hubzilla into pending_merge
Conflicts:
	version.inc
2015-11-19 11:47:41 -08:00
redmatrix
ed87dbc141 issue #173 2015-11-19 11:46:29 -08:00
Haakon Meland Eriksen
059886a1e4 Merge remote-tracking branch 'upstream/master' 2015-11-19 18:44:33 +01:00
Mario Vavti
ba52af786e move today button from aside to section title 2015-11-19 11:38:34 +01:00
Mario Vavti
929f524e77 css fixes 2015-11-19 11:17:24 +01:00
Haakon Meland Eriksen
cd49ec92e3 Merge remote-tracking branch 'upstream/master' 2015-11-19 06:36:06 +01:00
ken restivo
ee39e3cf72 Bump version so migrator tool can verify that mods to account.php etc in 312cc41 and 1f2a408 were applied. 2015-11-18 19:12:22 -08:00
Mario Vavti
a17f280f7d rename some menus 2015-11-19 00:10:32 +01:00
Haakon Meland Eriksen
7b4cfffc03 Merge remote-tracking branch 'upstream/master' 2015-11-19 00:00:35 +01:00
Mario Vavti
db9c2992e3 remove more unneeded files 2015-11-18 23:58:47 +01:00
Mario Vavti
b23284cba2 move moment.min.js and remove unneeded files 2015-11-18 23:56:25 +01:00
Mario Vavti
0c163c4d03 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-18 23:51:00 +01:00
Mario Vavti
e4145deeb7 some events refacturing 2015-11-18 23:50:42 +01:00
Haakon Meland Eriksen
33258803ea Merge remote-tracking branch 'upstream/master' 2015-11-18 16:48:56 +01:00
redmatrix
179730e485 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-18 02:45:39 -08:00
redmatrix
106b3257e4 wsod viewing photo widget 2015-11-18 02:45:22 -08:00
ken restivo
312cc415ce Pass in account_id. Required for bulk identity importer. 2015-11-18 00:26:18 -08:00
ken restivo
1f2a408be0 Use provided account_id instead of user's logged in account_id. Necessary for bulk importer. 2015-11-18 00:03:59 -08:00
Haakon Meland Eriksen
0d232c612b Merge remote-tracking branch 'upstream/master' 2015-11-18 06:48:29 +01:00
redmatrix
68da4d90dc fix admin plugin hooks 2015-11-17 20:44:57 -08:00
Haakon Meland Eriksen
545dc5cf65 Merge remote-tracking branch 'upstream/master' 2015-11-18 01:52:11 +01:00
redmatrix
a089064588 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-17 15:04:04 -08:00
redmatrix
a06f7fbe2e photo album widget permissions issue 2015-11-17 15:03:27 -08:00
Mario Vavti
7c4d9519c8 whitespace 2015-11-17 23:08:35 +01:00
Mario Vavti
6fa0807550 more css fixes 2015-11-17 23:01:24 +01:00
Haakon Meland Eriksen
c545ada746 Merge remote-tracking branch 'upstream/master' 2015-11-17 16:49:11 +01:00
Mario Vavti
868a0d8a90 missing closing " for src attribute 2015-11-17 13:45:00 +01:00
Mario Vavti
5079dff338 update bootstrap lib 3.3.4 -> 3.3.5 2015-11-17 11:39:47 +01:00
Mario Vavti
9e3d130ad9 css fixes 2015-11-17 11:32:37 +01:00
Mario Vavti
b531486dab show jotnets toggle button only if there are jotnets and whitespace fixes 2015-11-17 10:46:38 +01:00
redmatrix
6df98f080b fix api/direct_messages/new at least for the json case. We seem to have a missing template for XML 2015-11-16 19:17:39 -08:00
Haakon Meland Eriksen
69487389d3 Merge remote-tracking branch 'upstream/master' 2015-11-16 06:42:08 +01:00
redmatrix
0cb5f009b4 tag_deliver of an edit to an already uplinked item wasn't resetting permissions and ownership bits before starting delivery chain on the edit. 2015-11-15 20:52:50 -08:00
redmatrix
c7b2ec8bba allow plugins to also log to a different named logfile and also alter the log message 2015-11-15 19:40:01 -08:00
redmatrix
12b0a9f35f add logger plugin hook 2015-11-15 19:37:26 -08:00
redmatrix
fff30b1c3d permission issues editing wall-to-wall posts 2015-11-15 19:36:17 -08:00
redmatrix
6ad35e3d84 issue with dead hub detection 2015-11-15 18:12:53 -08:00
redmatrix
3d80073a0e revert html in markdown for posts, but trim the input before processing the markdown 2015-11-15 18:03:37 -08:00
redmatrix
959c3ba89d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-15 17:29:07 -08:00
redmatrix
1029939f56 issues connecting to local forum 2015-11-15 17:28:45 -08:00
Haakon Meland Eriksen
fd5d1416d9 Merge remote-tracking branch 'upstream/master' 2015-11-15 00:27:23 +01:00
jeroenpraat
def5edf93c nl+es and some other bits 2015-11-14 20:43:34 +01:00
Haakon Meland Eriksen
6bdde985ce Merge remote-tracking branch 'upstream/master' 2015-11-14 08:32:37 +01:00
redmatrix
dba38821bc superblock enhancements 2015-11-13 15:28:34 -08:00
Haakon Meland Eriksen
9d6a4c1d05 Reorder buttons HME 2015-11-13 19:44:42 +01:00
Haakon Meland Eriksen
94bef08f15 Adding original jot.tpl from GitHub 2015-11-13 18:32:25 +01:00
Haakon Meland Eriksen
0178840c19 Merge remote-tracking branch 'upstream/master' 2015-11-13 16:45:31 +01:00
Haakon Meland Eriksen
d04c73ae00 Reorder buttons 2015-11-13 16:31:48 +01:00
Haakon Meland Eriksen
495f21c08c Reverted changes - got white screen 2015-11-13 07:36:32 +01:00
Haakon Meland Eriksen
d238cbea19 Regrouped post buttons 2015-11-13 07:03:30 +01:00
redmatrix
5d0646c9e1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-12 20:23:17 -08:00
redmatrix
93e5449c08 really basic photo album widget for content regions 2015-11-12 20:22:36 -08:00
ken restivo
4872a30e2b Add note about base64 and urlencode. 2015-11-12 18:02:20 -08:00
ken restivo
f5fcdf1de4 Fix spelling of documentation. 2015-11-12 17:53:26 -08:00
redmatrix
888bf76e4b allow pdl content 2015-11-12 17:47:38 -08:00
redmatrix
22a650ade8 issue #154 2015-11-12 16:57:02 -08:00
redmatrix
391807b46c small fixes, removed old unused database row, and log more prominently a missing directory server URL 2015-11-12 16:45:38 -08:00
Haakon Meland Eriksen
921a2e0dc4 Regrouped post buttons 2015-11-13 00:07:09 +01:00
jeroenpraat
5afe8e5aa1 Small update to Bluegrid and generic-content-wrapper-styled to dreport 2015-11-12 22:10:20 +01:00
Haakon Meland Eriksen
ba84d6ff7c Regrouped post buttons 2015-11-12 21:11:47 +01:00
Haakon Meland Eriksen
d786502f19 Regrouped post buttons 2015-11-12 20:44:41 +01:00
Haakon Meland Eriksen
63063450b3 Merge remote-tracking branch 'upstream/master' 2015-11-12 07:46:29 +01:00
Haakon Meland Eriksen
90463ee67d Make upload and encrypt easier on phones by editing jot.tpl 2015-11-12 07:45:37 +01:00
redmatrix
6e04dd96a1 will also need api doco 2015-11-11 20:51:15 -08:00
redmatrix
f7c837aad0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-11 15:13:01 -08:00
redmatrix
bd3d323849 run markdown through html purifier for those who insist on mixing html with markdown. 2015-11-11 15:09:22 -08:00
Haakon Meland Eriksen
e26b558e53 Promoted upload of images and encryption 2015-11-11 23:55:05 +01:00
Haakon Meland Eriksen
85e5cd7f98 Rearranged comment buttons back 2015-11-11 23:43:41 +01:00
Haakon Meland Eriksen
1d8cac6e73 Rearranged comment buttons 2015-11-11 23:31:18 +01:00
redmatrix
52f6bd03b7 Merge pull request #149 from waitman/master
updates to Postgres schema
2015-11-12 09:07:26 +11:00
ken restivo
75c10eaff5 Merge pull request #144 from kenrestivo/api-auth-fix
api_auth.php must be included since the function moved.
2015-11-11 11:18:41 -08:00
mrjive
53a796afcc Merge pull request #8 from redmatrix/master
get fresh code from HZ base
2015-11-11 16:51:48 +01:00
Waitman Gobble
f94a8698dd updates to Postgres schema 2015-11-11 07:42:41 -08:00
ken restivo
ffb8059c24 api_auth.php must be included since the function moved. 2015-11-11 02:26:12 -08:00
redmatrix
bc7c0ed844 Merge pull request #143 from kenrestivo/allow-importing-by-proxy
Bust out import_account() into a separate function
2015-11-11 19:42:52 +11:00
redmatrix
ac9250fc4a Merge pull request #141 from HaakonME/master
Added Hubzilla plugin repo for ownMapp - decentralized and private map sharing
2015-11-11 18:08:19 +11:00
redmatrix
f1492945ec Merge pull request #140 from kenrestivo/move-export-to-plugin
Moving this out into a plugin; hopefully one that will work with RM
2015-11-11 18:08:03 +11:00
ken restivo
10ccdbacba Bust out import_account() into a separate function to allow importing accounts by proxy, i.e. for admins to import a channel on behalf of a user. 2015-11-10 23:07:28 -08:00
redmatrix
d683573402 Merge pull request #142 from kenrestivo/refactor-out-api-auth
Move api_auth() out to a file that can be included from plugins/modules
2015-11-11 18:01:48 +11:00
ken restivo
ddce0412ac Move api_auth() out to a file that can be included from plugins/modules to allow them to expose their own programmatic API. 2015-11-10 22:50:18 -08:00
Haakon Meland Eriksen
609e42cdd8 Merge remote-tracking branch 'upstream/master' 2015-11-11 07:26:15 +01:00
redmatrix
7235c20854 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-10 19:03:03 -08:00
redmatrix
e7bedf4433 do a better job of preserving linebreaks in posts for channels that use markdown 2015-11-10 19:02:28 -08:00
Haakon Meland Eriksen
23d30ab2c5 Merge remote-tracking branch 'upstream/master' 2015-11-10 23:50:54 +01:00
ken restivo
741afeea41 Moving this out into a plugin; hopefully one that will work with Redmatrix as well. 2015-11-10 14:48:50 -08:00
redmatrix
cd989977b8 Merge pull request #139 from sasiflo/master
Replaced references to redmatrix logo.
2015-11-11 07:53:08 +11:00
sasiflo
1216508dc2 Replaced references to redmatrix logo. 2015-11-10 17:11:12 +01:00
Haakon Meland Eriksen
5c7dfcfe43 Fixed ownMapp repo address 2015-11-10 16:09:11 +01:00
Haakon Meland Eriksen
cff866172a Fixed ownMapp repo address 2015-11-10 16:06:11 +01:00
Haakon Meland Eriksen
31a612aa89 Fixed ownMapp repo address 2015-11-10 15:58:24 +01:00
Haakon Meland Eriksen
b782c46e51 Merge remote-tracking branch 'upstream/master' 2015-11-10 07:36:51 +01:00
Haakon Meland Eriksen
eaa47760bc Add ownMap 2015-11-10 07:35:24 +01:00
redmatrix
7ec6879887 more doco 2015-11-09 20:56:37 -08:00
redmatrix
c4a3487f0c remove the obsolete avatar_img function (gravatar/libravatar lookup) 2015-11-09 20:29:36 -08:00
redmatrix
e6de9bfa4e get rid of the pre-comanche widget placement and wgl code 2015-11-09 19:42:37 -08:00
redmatrix
c0260ff701 more doco 2015-11-09 18:25:18 -08:00
redmatrix
fba2603304 add avatars to likes/dislikes/etc. 2015-11-09 15:58:19 -08:00
redmatrix
7d5acef20a remove list bullets from extended like list 2015-11-09 15:18:26 -08:00
redmatrix
cda8fb3380 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-09 14:56:53 -08:00
redmatrix
862a310075 thwart attempts to use an external private directory as a directory server 2015-11-09 14:53:58 -08:00
redmatrix
98146eae07 Merge pull request #134 from HaakonME/master
Keep only zot.meta.xml for schemaSpy report generation
2015-11-10 08:41:33 +11:00
redmatrix
c277039fb4 Merge pull request #135 from kenrestivo/account-id-link
Manually document account_id link for schemaSpy.
2015-11-10 08:41:22 +11:00
redmatrix
92577ddaed Merge pull request #136 from kenrestivo/generate-schemaspy
First attempt at auto-generating the schemaspy docs
2015-11-10 08:41:02 +11:00
jeroenpraat
b99b6b5ae9 This is better 2015-11-09 16:37:22 +01:00
jeroenpraat
cda81e35db Using bootstrap classes, so other themes/schemas also work. Plus margin when collapsed. 2015-11-09 15:08:50 +01:00
redmatrix
271a41b7dd Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-09 01:04:12 -08:00
redmatrix
69aeddd185 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	README.md
	version.inc
2015-11-09 01:03:57 -08:00
redmatrix
99bd69adfe remove references to redmatrix.me 2015-11-09 00:59:48 -08:00
Wave
115a53225e Merge pull request #137 from wave72/master
Updated Italian strings
2015-11-09 08:58:58 +01:00
Paolo Tacconi
36c196e18c Updated Italian strings 2015-11-09 08:54:18 +01:00
ken restivo
0c8219e683 Correct directory (this runs from inside hubzilla_er 2015-11-08 22:58:21 -08:00
ken restivo
de9c44fc56 First attempt at auto-generating schemaspy. 2015-11-08 22:51:58 -08:00
ken restivo
d1dbc50a1c Manually document account_id link for schemaSpy. 2015-11-08 22:14:15 -08:00
Haakon Meland Eriksen
0fbea73581 Keep only zot.meta.xml for schemaSpy report generation, not the report itself 2015-11-09 06:24:02 +01:00
redmatrix
10f7199c63 Merge pull request #133 from kenrestivo/export-v1
First pass at endpoints for exporting users and channels as admin.
2015-11-09 16:05:38 +11:00
ken restivo
49d6605377 First pass at endpoints for exporting users and channels in bulk as admin. 2015-11-08 20:50:36 -08:00
redmatrix
11c8cabf28 suppress duplicate locations in connedit, issue #111 2015-11-08 20:41:11 -08:00
redmatrix
00132cd977 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-08 20:02:52 -08:00
redmatrix
5e1b61eb02 some more db doco 2015-11-08 20:02:35 -08:00
redmatrix
dfb49558f4 Merge pull request #132 from kenrestivo/test-for-email
Add unit tests for valid email function.
2015-11-09 14:39:00 +11:00
redmatrix
4e1c308162 make jotnets modal 2015-11-08 17:48:43 -08:00
redmatrix
5c2692a8ea no comment permission bug, also implement delete() in RedDirectory per Waitman 2015-11-08 16:36:36 -08:00
ken restivo
9c240de303 Add unit tests for valid email function. 2015-11-08 14:37:48 -08:00
redmatrix
2536dc39b5 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-08 13:55:21 -08:00
redmatrix
cf0bff8582 relative attachment not fetched due to os filename issue 2015-11-08 13:54:31 -08:00
redmatrix
9c12ba5708 Merge pull request #131 from tluther/master
Quick fix: Moved Twitter select box to the top of ACL selector
2015-11-09 06:44:18 +11:00
Tobias Luther
8639eda70f Quick fix: Moved Twitter select box to the top of ACL selector 2015-11-08 12:20:58 +01:00
redmatrix
1874346c46 Merge pull request #129 from HaakonME/master
Hubzilla database entity-relationship documentation and HonO fix
2015-11-08 16:57:56 +11:00
jeroenpraat
16040063dc A few quotes too many. Also translations for tooltip. 2015-11-08 00:08:02 +01:00
jeroenpraat
2b0b03eebc Fix ffsapi for non-English languages (or better when 's was used in the strings) - Update nl+es 2015-11-08 00:04:02 +01:00
Haakon Meland Eriksen
df2b687a95 Merge remote-tracking branch 'upstream/master' 2015-11-07 16:48:10 +01:00
redmatrix
44fa4d1081 more db schema doco 2015-11-06 23:43:48 -08:00
Haakon Meland Eriksen
ce4bb8e5ec Merge remote-tracking branch 'upstream/master' 2015-11-07 07:13:33 +01:00
redmatrix
8154453803 Merge pull request #130 from kenrestivo/link-from-human
Human docs > Computer-generated Docs
2015-11-07 14:52:37 +11:00
redmatrix
b29fe50f70 update db doco for attach structure to match hubzilla schema 2015-11-06 18:57:17 -08:00
ken restivo
cce46722d8 Human > computer 2015-11-06 17:34:52 -08:00
redmatrix
85ae07e7c8 update the abook schema doco with the hubzilla schema changes 2015-11-06 15:49:22 -08:00
redmatrix
e3da813360 database schema documentation for item table 2015-11-06 14:43:32 -08:00
redmatrix
9a42d63516 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	boot.php
	install/update.php
2015-11-06 12:43:51 -08:00
redmatrix
4620eb32d2 version and string update 2015-11-06 12:35:43 -08:00
redmatrix
1c8f63f1e5 rev update 2015-11-06 12:34:29 -08:00
Haakon Meland Eriksen
c40f6060da Hubzilla report created by schemaSpy using zot.meta.xml to imply relationships 2015-11-06 17:26:04 +01:00
Haakon Meland Eriksen
5776af30e8 Merge remote-tracking branch 'upstream/master' 2015-11-06 15:58:56 +01:00
Wave
30d083ac3c Merge pull request #2 from redmatrix/master
Update to latest hubzilla
2015-11-06 09:09:58 +01:00
redmatrix
4ca0c2cfd1 more hook doco 2015-11-05 21:06:09 -08:00
redmatrix
12db46dcad a bit of explanation at the beginning 2015-11-05 20:49:25 -08:00
redmatrix
9e6547a887 add the hook detail to the doco list 2015-11-05 20:21:41 -08:00
redmatrix
017ea0d624 more work on hook doco 2015-11-05 20:19:38 -08:00
redmatrix
a29b8b369e update hooklist 2015-11-05 20:10:49 -08:00
redmatrix
6b26b4e3b8 the journey of 1000 miles begins with a single step 2015-11-05 17:38:21 -08:00
redmatrix
7df92ba62c preliminary hook detail files 2015-11-05 17:23:36 -08:00
redmatrix
9cad4c11fe typo 2015-11-05 16:36:19 -08:00
redmatrix
5b42edb42a Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-05 16:28:54 -08:00
redmatrix
a26d8609a9 handle old files with partial paths 2015-11-05 16:28:10 -08:00
redmatrix
001e4276d3 first cut at some much better hook documentation derived from bamfic's automated list (doc/hooks.html) 2015-11-05 16:08:18 -08:00
jeroenpraat
94437a8fcd Firefox Share app. Paper plane icon is public domain. Shorted the name in ffsapi > compare it with other providers. Changed bookmark (checkmark) item to selfmade Hubzilla bookmark icon for Firefox (bookmark icon = bootstrap icon). 2015-11-05 22:58:46 +01:00
Haakon Meland Eriksen
91f751d105 Merge remote-tracking branch 'upstream/master' 2015-11-05 16:54:39 +01:00
jeroenpraat
0db5a8673d Firefox share (that seems now the official name) button added to misc. settings. 2015-11-05 16:20:56 +01:00
jeroenpraat
91f2e05d5d Style the button 2015-11-05 09:06:45 +01:00
redmatrix
58fe4f5cb3 fix the file chunking api now that we've got working data to test with 2015-11-05 00:00:41 -08:00
redmatrix
2ebd9a2774 fix path for attachments using os_storage uploaded through attach_store 2015-11-04 23:48:55 -08:00
redmatrix
8db428458a forgot this one 2015-11-04 23:21:16 -08:00
redmatrix
f8b612a2c0 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	install/update.php
2015-11-04 23:17:09 -08:00
redmatrix
76043d97bd dummy update 2015-11-04 23:06:37 -08:00
Haakon Meland Eriksen
07bd396837 Merge remote-tracking branch 'upstream/master' 2015-11-05 06:34:14 +01:00
redmatrix
f7468ab473 re-arrange file api calls so the api pathnames don't shadow each other 2015-11-04 20:50:43 -08:00
redmatrix
1213893a71 api calls to fetch file (attach) meta data and to chunk file content fetching which will eventually allow us to clone large videos without hitting memory limits 2015-11-04 19:49:41 -08:00
redmatrix
5f1ccc25b6 menu_list() takes a channel_id, not the whole channel array 2015-11-04 18:34:42 -08:00
redmatrix
42c0f83ec5 typo 2015-11-04 18:21:36 -08:00
redmatrix
5dfaeaf526 add bookmarking to FF social api provider 2015-11-04 18:15:03 -08:00
redmatrix
1214469311 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-04 17:48:21 -08:00
redmatrix
f4a9529968 Firefox Share API provider interface (first cut, only has share ability) 2015-11-04 17:47:24 -08:00
redmatrix
3d55134953 Merge pull request #124 from kenrestivo/add-app-example2
Add app example
2015-11-05 10:15:33 +11:00
jeroenpraat
1c0fe89368 Chat page improved (I think). Works now better with diff. resolutions, font sizes and languages. Fixed follow field on conn. page. Small schemas updates. 2015-11-04 22:52:40 +01:00
Haakon Meland Eriksen
73bef17365 Removed fixed directory server - new list available in admin panel if one becomes unavailable 2015-11-04 19:06:25 +01:00
Wave
9398e49eb7 Merge pull request #125 from wave72/master
Updated Italian strings
2015-11-04 15:04:20 +01:00
Paolo Tacconi
50cf095c00 Updated Italian strings 2015-11-04 14:58:52 +01:00
ken restivo
5d64fb5946 Clarify format. 2015-11-04 00:39:48 -08:00
ken restivo
bf55a8e98c Add app object detailed example. 2015-11-04 00:39:24 -08:00
redmatrix
59e0a0fd7c Merge pull request #122 from kenrestivo/add-hook-docs
Commit the tool used to generate the hooks docs.
2015-11-04 19:14:32 +11:00
redmatrix
d15be53034 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	mod/post.php
2015-11-03 23:56:15 -08:00
redmatrix
b6b2420ff7 protocol upgrade 2015-11-03 23:54:53 -08:00
ken restivo
4bd0e083d1 Put generated date at end of data. 2015-11-03 21:19:16 -08:00
ken restivo
d9c7b39b88 Commit the tool used to generate the hooks docs. 2015-11-03 21:15:49 -08:00
redmatrix
583f7df9c8 Merge pull request #121 from kenrestivo/add-hook-docs
Add generated docs for hooks.
2015-11-04 16:00:57 +11:00
redmatrix
8377aa72a8 Merge pull request #120 from kenrestivo/document-argv
Add documentation for argv/argc.
2015-11-04 16:00:44 +11:00
redmatrix
c57926d799 Merge pull request #119 from sasiflo/master
Some small rebranding for Hubzilla transition from Red Matrix
2015-11-04 16:00:32 +11:00
ken restivo
380e3e64cb Add generated docs for hooks. Link them into the developer docs so they can be found more easily. 2015-11-03 20:57:07 -08:00
redmatrix
77a03e376c Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/photo/photo_driver.php
	include/text.php
	mod/post.php
2015-11-03 20:46:47 -08:00
redmatrix
5dade2b608 backport small bits of the re-install fix; at least the damaging bits 2015-11-03 20:40:43 -08:00
redmatrix
877b3361c8 better re-install detection/protection. This necessitated a slight protocol change but should not introduce any compatibility issues with older software. Things just work better if you use an up-to-date server. 2015-11-03 20:28:56 -08:00
redmatrix
2fbfc2a8f1 need better peer verification due to re-install issue, this is temporary 2015-11-03 19:50:40 -08:00
redmatrix
e09b49288f provide admin setting to change directory server 2015-11-03 18:34:16 -08:00
redmatrix
6aa98a1e91 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-11-03 17:40:31 -08:00
redmatrix
14b74069f8 version 2015-11-03 17:40:05 -08:00
redmatrix
c1cfcc78fe Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-03 14:59:43 -08:00
redmatrix
2c299a9f37 implement unfollow thread 2015-11-03 14:59:14 -08:00
ken restivo
288697cda2 Add documentation for argv/argc. 2015-11-03 12:24:29 -08:00
jeroenpraat
9fa771f9fe Time for using my real name 2015-11-03 21:24:28 +01:00
jeroenpraat
d1aa672388 small update Ducth strings + fix dark schema 2015-11-03 21:19:23 +01:00
sasiflo
b21f6fd619 Merge branch 'rebranding' 2015-11-03 11:35:44 +01:00
sasiflo
39245238fd Some small rebranding for Hubzilla transition from Red Matrix 2015-11-03 11:31:19 +01:00
Mario Vavti
43d8090182 timeago() works best with iso format. fix #118 2015-11-03 11:19:22 +01:00
redmatrix
d13dae6b06 bug in hub/location sync 2015-11-02 21:02:30 -08:00
redmatrix
0998ef0c4e readability 2015-11-02 17:10:47 -08:00
redmatrix
543bf51eff Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-02 17:07:58 -08:00
redmatrix
5513feb15b several more hidden configs 2015-11-02 17:07:40 -08:00
redmatrix
e03faaeb8f Merge pull request #116 from HaakonME/master
Changed default config for Hubzilla on Openshift
2015-11-03 09:47:15 +11:00
redmatrix
966dd03195 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-02 14:46:24 -08:00
redmatrix
5041774fd3 directory doco 2015-11-02 14:46:02 -08:00
redmatrix
c5453d476d Merge pull request #117 from kenrestivo/add-rss-docs
Update RSS setting docs.
2015-11-03 09:45:33 +11:00
ken restivo
54eae7830e Update RSS setting docs. 2015-11-02 12:52:23 -08:00
Haakon Meland Eriksen
4e74c7e3b1 Changed default config to util/config system expire_delivery_reports 3 util/config system feed_contacts 0 util/config system diaspora_enabled 0 util/config system disable_discover_tab 1 util/config system directory_server https://blablanet.com util/config directory safemode 0 util/config directory globaldir 1 util/config directory pubforums 0 2015-11-02 19:57:49 +01:00
Haakon Meland Eriksen
fe52400b75 Added new directory server https://blablanet.com 2015-11-02 19:40:34 +01:00
Haakon Meland Eriksen
18feef0753 Added new directory server https://blablanet.com 2015-11-02 18:53:40 +01:00
Mario Vavti
6ec021aafa revert filtering by metwork 2015-11-02 08:36:43 +01:00
redmatrix
954957bd8a provide discovery for local deletes in zot-finger and mark the hublocs invalid/deleted 2015-11-01 19:07:32 -08:00
redmatrix
14e92f53f1 hubloc filtering to eliminate dead and deleted entries 2015-11-01 16:19:28 -08:00
redmatrix
d3183467e0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-11-01 15:52:35 -08:00
redmatrix
b62614bbd4 improve /locs page with some field notes and the ability to do a forced sync 2015-11-01 15:51:45 -08:00
jeroenpraat
618155e6ab More Bluegrid fine tuning and generic-content-wrapper-styled added to some tpl-files and 2 php files, cause they dont have a tpl file. 2015-11-01 22:59:32 +01:00
Mario Vavti
bd75d32c1b remove zotid.net from fallback dir and add hubzilla.site 2015-11-01 22:02:24 +01:00
Mario Vavti
5acfef8edb since other networks do not support cloning we only need hublocs for zot contacts - fix #111 2015-11-01 21:32:28 +01:00
Mario Vavti
7ce3ebc46d make sure we only have one profile photo for a cloned channel 2015-11-01 21:04:55 +01:00
Mario Vavti
0353b0e04f Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-11-01 11:17:04 +01:00
jeroenpraat
ca81ab784a Fix youtube and vimeo for Diaspora posts. Remove empty zrl's from Diaspora posts (fixes also the not working and only translated into default hub language 'view full size'). Please revert when wrong. 2015-10-31 22:38:16 +01:00
jeroenpraat
3262d819de update srings nl+es, wrapper-styled 1 tpl-file, more finetuning bluegrid schema. 2015-10-31 22:34:59 +01:00
redmatrix
a8cdbd44e8 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-31 13:59:08 -07:00
redmatrix
04820ba09e make hubloc repair script a bit more selective 2015-10-31 13:58:26 -07:00
jeroenpraat
52120b367a Update nl+es 2015-10-31 21:07:57 +01:00
Mario Vavti
d6d96e8c89 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-31 12:04:20 +01:00
redmatrix
2b34dd7373 Merge pull request #110 from kenrestivo/add-directory-docs
Add directory docs
2015-10-31 18:19:08 +11:00
redmatrix
7a87343c71 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-30 22:46:31 -07:00
redmatrix
5f80121637 add hubloc repair script (needed for deadsuperhero, probably temporary) 2015-10-30 22:43:38 -07:00
Mario Vavti
5920a96da7 make attachments appear in a dropdown in wall-item-tools-left 2015-10-31 00:38:01 +01:00
ken restivo
0acaa839b9 Add directory docs based on my (possibly incorrect/incomplete?) reading of https://macgirvin.com/display/4acdbf7403aa244044d403820274b1b1142f57bbc0b38d0ea0e35e49f36eceb7@macgirvin.com 2015-10-30 12:01:21 -07:00
Mario Vavti
f8b767ed32 fix photo item for search_item.tpl and a minor css fix 2015-10-30 18:46:16 +01:00
Mario Vavti
d0b0d0ec72 possibly improve cloned profile images a bit - mod/photo would pick some random photos if there are more than one kind of PHOTO_PROFILE 2015-10-30 15:08:28 +01:00
redmatrix
e0463f5a74 Merge pull request #107 from kenrestivo/fix-audio-preload
Save bandwidth on mobile networks.
2015-10-30 15:25:18 +11:00
ken restivo
1b30210120 Save bandwidth on mobile networks. 2015-10-29 20:50:52 -07:00
redmatrix
a1e28bb669 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-29 15:11:58 -07:00
redmatrix
dc4bd531a4 issue #106 2015-10-29 15:11:41 -07:00
Mario Vavti
c5aedb14a9 fix #83 2015-10-29 19:46:21 +01:00
Mario Vavti
ec28dee728 update to latest object 2015-10-29 12:58:32 +01:00
Mario Vavti
3e459ed434 move it up 2015-10-29 11:34:56 +01:00
Mario Vavti
d66be62516 move it up 2015-10-29 11:34:30 +01:00
Mario Vavti
98fd919647 possibly better fix for profile photo image type issue 2015-10-29 11:30:45 +01:00
Mario Vavti
0a9b2b6b15 possibly better fox for profil photo image type issue 2015-10-29 11:29:11 +01:00
redmatrix
bb469deb85 add entry for 'none' 2015-10-29 01:35:49 -07:00
redmatrix
96402a2354 This may take a few iterations to discover the best way to present the information, but we need a way for members to know what alternate locations are available for a channel during times of server issues - and as recently discovered if there aren't any hublocs at all; without digging around the database and probing channels and other messy stuff. 2015-10-29 01:23:56 -07:00
redmatrix
4fec7aa991 add text hint how to set language in connection filter 2015-10-28 20:11:58 -07:00
redmatrix
b5dfc54be3 fix the typo 2015-10-28 19:45:02 -07:00
redmatrix
848e3f6c5d photos linked item visibility issue 2015-10-28 19:43:35 -07:00
redmatrix
1f5818cec8 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-28 16:59:23 -07:00
redmatrix
06ec5424c7 restrict sslify to img tags by default - set config system.sslify_everything if you want to proxy media files also. 2015-10-28 16:58:13 -07:00
redmatrix
b9551862b4 Merge pull request #105 from HaakonME/master
Updated Hubzilla on OpenShift help page to clarify hosting for three …
2015-10-29 10:06:20 +11:00
Mario Vavti
e0a75f68d5 re-enable pathinfo() check and try with getimagesize() if we have not got a result 2015-10-28 21:52:56 +01:00
Mario Vavti
a5f1fa3168 re-enable pathinfo() check and try with getimagesize() if we have not got a result 2015-10-28 21:52:15 +01:00
Mario Vavti
1375ed6aea pathinfo() does not work in this case. getimagesize() seems more reliabel. this fixes transparent png avatars having a black background. 2015-10-28 20:01:50 +01:00
Mario Vavti
f1a3b281d4 pathinfo() does not work in this case. getimagesize() seems more reliabel. this fixes transparent png avatars having a black background. 2015-10-28 19:59:50 +01:00
Mario Vavti
59da3dfe03 do not treat profile photo change posts like photo-items 2015-10-28 15:03:34 +01:00
Haakon Meland Eriksen
52f06cabd2 Updated Hubzilla on OpenShift help page to clarify hosting for three gears is available at no cost as of this writing, 2015-10-28 2015-10-28 07:34:11 +01:00
redmatrix
612efe56f1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-27 21:18:03 -07:00
redmatrix
07c0bc7b04 api posting with htmlstatus fails if it doesn't contain any html tags issue #104 2015-10-27 21:16:59 -07:00
redmatrix
f5774bba6f Merge pull request #103 from kenrestivo/status-message
Add status monitor widget from Travis.
2015-10-28 14:49:09 +11:00
ken restivo
714832bb49 Add status monitor widget from Travis. 2015-10-27 20:15:58 -07:00
redmatrix
3bc8d4d0eb Merge pull request #102 from kenrestivo/upload-fixes
Handle file names with more than one dot.
2015-10-28 14:02:30 +11:00
ken restivo
8083a86581 Add rudimentary unit test for z_mime_content_type. 2015-10-27 19:53:27 -07:00
ken restivo
b3528c314a Support files with names like foo.0.1.3.ogg 2015-10-27 19:48:14 -07:00
redmatrix
65587be737 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-27 18:37:03 -07:00
redmatrix
9c24e1ccfb revision 2015-10-27 18:36:50 -07:00
redmatrix
0147186565 Merge pull request #101 from kenrestivo/kens-fixes
Add YML file for travis CI suite, fix MIME types for audio files
2015-10-28 12:28:34 +11:00
ken restivo
8924cb0960 Add yml file for travis, as an experiment. 2015-10-27 17:36:25 -07:00
ken restivo
869735e4b5 Correct mime types via https://wiki.xiph.org/MIME_Types_and_File_Extensions 2015-10-27 15:35:39 -07:00
jeroenpraat
605381f83d More fine tuning bluegrid schema. Extra generic-wrapper-styled. 2015-10-27 22:52:54 +01:00
Mario Vavti
71f70b4377 css fixes 2015-10-27 12:52:21 +01:00
Mario Vavti
c6daf4d41c first the image than the body 2015-10-27 11:26:48 +01:00
Mario Vavti
3f1dc22c0e fix sharing of photo items 2015-10-27 11:07:40 +01:00
jeroenpraat
02527552fd Better -styled. 2015-10-27 01:23:30 +01:00
jeroenpraat
ac5b9f2382 Another .generic-content-wrapper 2015-10-27 01:20:48 +01:00
jeroenpraat
a2931cd17d Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-27 01:12:09 +01:00
jeroenpraat
fc65496d1d NEW: Redbasic schema, based on the Hubzilla project page layout. 2015-10-27 01:11:50 +01:00
redmatrix
be98466b0d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-26 17:00:09 -07:00
redmatrix
0fd60d1e80 version 2015-10-26 16:59:52 -07:00
jeroenpraat
35857931ef 2 more tpl files with generic-content-wrapper-styled 2015-10-26 22:47:47 +01:00
mrjive
a4c3058f84 Merge pull request #7 from redmatrix/master
updating from original codebase
2015-10-26 21:55:47 +01:00
jeroenpraat
6cb7afcbc0 es+nl strings 2015-10-26 16:35:44 +01:00
jeroenpraat
32a0f5b04a Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-26 15:28:11 +01:00
jeroenpraat
3bc6190bdd Update Dark schema 2015-10-26 15:27:47 +01:00
Mario Vavti
4fb9571136 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-26 14:20:06 +01:00
Mario Vavti
e70bb371d9 bring back item transparency 2015-10-26 14:19:46 +01:00
jeroenpraat
2099ac0615 Revert this one. This was hub specific. 2015-10-26 14:16:05 +01:00
jeroenpraat
5e28b1216e Added a few generic-content-wrapper-styled classes and a button position fixed for lostpass. mod/search probably needs a .tpl in the future, but I don't know how to that. 2015-10-26 14:05:45 +01:00
jeroenpraat
e858ee811b Fixed connection page. Page was overcrowded on systems with larger fonts. 2015-10-26 13:57:12 +01:00
redmatrix
a498fc8e72 looks like there may be issues with the datetime picker if the local timezone isn't the same as your settings. 2015-10-25 21:17:02 -07:00
redmatrix
7063b6cb6d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-25 16:54:43 -07:00
redmatrix
917d0ced4a new feature: delayed posting 2015-10-25 16:54:18 -07:00
redmatrix
969418ce73 Merge pull request #99 from HaakonME/master
Hubzilla on OpenShift - now with plugins and extra themes
2015-10-26 09:40:54 +11:00
redmatrix
7f3df847a2 make use of http_host vs. server_name configurable in script_path() 2015-10-25 15:37:09 -07:00
redmatrix
e0424fe6cc Merge pull request #100 from StefanKrauth/master
Better handling for SSL reverse proxy
2015-10-26 09:32:03 +11:00
redmatrix
b67397861c Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-25 14:33:57 -07:00
redmatrix
de15a2ace1 version update 2015-10-25 14:32:02 -07:00
redmatrix
4369ee2ca7 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-25 14:26:35 -07:00
redmatrix
a1163b70a6 version and strings 2015-10-25 14:26:02 -07:00
Stefan Krauth
2030aea175 Better handling for SSL reverse proxy 2015-10-25 20:10:35 +01:00
Haakon Meland Eriksen
969b66b315 Hubzilla on OpenShift - now with plugins and extra themes 2015-10-25 18:18:49 +01:00
Mario Vavti
4442da306a hubzilla compatibility: improve photo item object - we now provide the infos for all available photo sizes 2015-10-25 18:02:45 +01:00
Mario Vavti
911fd6c654 improve photo item object - we now provide the infos for all available photo sizes 2015-10-25 18:01:44 +01:00
Haakon Meland Eriksen
9cee3dda1f Add DeadSuperHero Themes for Hubzilla to deploy 2015-10-25 17:56:32 +01:00
Haakon Meland Eriksen
cc0f026cec Adding Hubzilla addons to deploy script 2015-10-25 17:07:33 +01:00
Haakon Meland Eriksen
f1b5c333ff Adding Hubzilla addons to deploy script 2015-10-25 17:01:13 +01:00
Mario Vavti
123fe58c26 new line between photo and description 2015-10-24 22:16:08 +02:00
Mario Vavti
fd1e163bf4 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-24 21:44:45 +02:00
Mario Vavti
ab8b4d5c36 another try to avoid dubble photo deletion. allow to set a photo caption and simple status body (if create status post is enabled) on upload 2015-10-24 21:44:25 +02:00
Wave
4a044351a9 Merge pull request #97 from wave72/master
Italian strings updated
2015-10-24 12:15:15 +02:00
wave72
e0a2268b0e Italian strings updated 2015-10-24 12:13:17 +02:00
redmatrix
3432771150 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-23 21:36:40 -07:00
redmatrix
768615f2f1 version and strings 2015-10-23 21:36:18 -07:00
Mario Vavti
9ae215291f fix app.tpl missing </div> tag if not authenticated 2015-10-23 10:20:01 +02:00
redmatrix
1cf206d764 update the to-do list 2015-10-22 17:27:20 -07:00
redmatrix
4c406ec9c0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-22 17:20:52 -07:00
redmatrix
500b896d50 revision 2015-10-22 17:20:35 -07:00
git-marijus
18a239e808 Merge pull request #96 from mcnesium/master
fix placeholder font-family
2015-10-22 13:54:52 +02:00
mcnesium
5aa07bda7c Merge pull request #1 from mcnesium/placeholder-font
fix placeholder font-family
2015-10-22 13:45:34 +02:00
mcnesium
379fd33484 fix placeholder font-family
[Imgur](http://i.imgur.com/Cegabd5.png)
2015-10-22 13:44:33 +02:00
Mario Vavti
ed6629002f photo object fixes 2015-10-22 13:01:33 +02:00
Mario Vavti
bcb4ac7aae experiment: put the photo-item photo on top of the post 2015-10-22 12:58:11 +02:00
Mario Vavti
5395b173aa implement the new anchor target behaviour 2015-10-22 12:09:19 +02:00
Mario Vavti
735f9c7a45 define $photo 2015-10-22 11:37:34 +02:00
Mario Vavti
9cbca24f7a photo object compatibility revamped 2015-10-22 10:56:24 +02:00
Mario Vavti
6f8d29ad80 move photo object stuff from itemObject to prepare_body() so we can do more stuff with it 2015-10-22 10:52:10 +02:00
redmatrix
eb947acebe set link target window for many links that are included in posts, but not in rest of application 2015-10-21 18:34:09 -07:00
redmatrix
01e84edd0a Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-21 15:02:32 -07:00
redmatrix
b7538b6ada turn relative links in app_render() into absolute links, without affecting the install. 2015-10-21 15:00:41 -07:00
Mario Vavti
232742a5e6 warn if quota exceeds 90% of storage limit 2015-10-21 12:52:03 +02:00
Mario Vavti
a33ddf373b move file storage quota display to upload section. add a warning if remaining space is less than 100MB and fix % calculation 2015-10-21 12:40:09 +02:00
redmatrix
b57e735199 old merge conflict 2015-10-20 21:34:58 -07:00
redmatrix
38816d7e41 move quota display to where it's visible on a tablet 2015-10-20 18:48:14 -07:00
jeroenpraat
3a89bb0db2 fix image path 2015-10-20 17:25:44 +02:00
Mario Vavti
865c38995d some photos cant be deleted under certain circumstances - needs more investigation. revert this until a better fix is found. 2015-10-20 13:43:35 +02:00
Mario Vavti
beae28f2db add obj_type and object again 2015-10-20 13:19:05 +02:00
Mario Vavti
81b2c5ac68 fix jot photo upload 2015-10-20 13:03:28 +02:00
Mario Vavti
35b5f60f99 update large photo feature setting description 2015-10-20 09:58:48 +02:00
Mario Vavti
13d0db5f9a css cleanup 2015-10-20 09:47:30 +02:00
Mario Vavti
96f23758b4 hubzilla photo object compatibility 2015-10-20 09:40:32 +02:00
Mario Vavti
f7601756e9 create photo object if feature large photos is enabled and display those slightly different 2015-10-20 09:36:15 +02:00
redmatrix
54059b2f15 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-19 20:36:22 -07:00
redmatrix
f00887ea42 add project info to pubsite list 2015-10-19 20:35:44 -07:00
redmatrix
08a5884c9f revert - we can't guarantee what project name the fallback directory server has and this could cause bugs later 2015-10-19 17:03:34 -07:00
redmatrix
0f3b7dd6e9 update site on initial directory setup 2015-10-19 17:01:59 -07:00
redmatrix
bab73edcef extened the earlier fix 2015-10-19 16:50:53 -07:00
redmatrix
42d26f01d6 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-10-19 16:20:20 -07:00
redmatrix
8aadc2837c typo 2015-10-19 16:19:00 -07:00
redmatrix
ea37882b95 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	install/schema_mysql.sql
	install/schema_postgres.sql
	install/update.php
	mod/zfinger.php
2015-10-19 16:18:04 -07:00
redmatrix
599a0c66b2 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-19 16:07:59 -07:00
redmatrix
57e0bfc5a9 add the project name to site info packet 2015-10-19 16:07:14 -07:00
redmatrix
9f424bb208 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-19 14:56:02 -07:00
redmatrix
4e5b813aa8 syntax error 2015-10-19 14:55:49 -07:00
redmatrix
6a2c32bd23 Merge pull request #93 from tuscanhobbit/master
Replaced some old redmatrix branding
2015-10-20 06:54:56 +11:00
Mario Vavti
febcb90ece fix typo in mod/connedit.php 2015-10-19 15:33:19 +02:00
Mario Vavti
4b300f8274 fix typo in include/notifier.php 2015-10-19 14:53:13 +02:00
Paolo Tacconi
8da8e02dc8 Replaced some old redmatrix branding 2015-10-19 10:51:33 +02:00
Wave
3e9b6a330d Merge pull request #1 from redmatrix/master
Update to latest hubzilla
2015-10-19 10:28:17 +02:00
redmatrix
b54c4df74d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-18 20:17:09 -07:00
redmatrix
f0a33c00bc separate permission_update notification into permission_create and permission_update, since some networks send out a notification for duplicate share requests even if connected. 2015-10-18 20:13:12 -07:00
redmatrix
8631b28130 Merge pull request #92 from HaakonME/master
Updated deploy script with new defaults and updated help page Hubzilla on OpenShift
2015-10-19 10:36:01 +11:00
redmatrix
9b3662e5ad issues with "the Register" feed 2015-10-18 16:29:09 -07:00
redmatrix
3fb690a0f6 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-18 15:50:18 -07:00
redmatrix
76d41fc250 re-organise the protocol disabled logic 2015-10-18 15:49:52 -07:00
Haakon Meland Eriksen
15fa300e04 Updated help page about Hubzilla on OpenShift with new info on using mysqlcheck rather than myisamchk and notes about new space preserving defaults in the deploy script given 1Gb gear on OpenShift - fixed link 2015-10-18 20:45:26 +02:00
Haakon Meland Eriksen
47c86828c6 Updated help page about Hubzilla on OpenShift with new info on using mysqlcheck rather than myisamchk and notes about new space preserving defaults in the deploy script given 1Gb gear on OpenShift 2015-10-18 20:39:24 +02:00
jeroenpraat
6eaf35a142 Update es+nl 2015-10-18 19:09:38 +02:00
Haakon Meland Eriksen
ea8364eba5 Added config settings sensible for Hubzilla on OpenShift - fixes 2015-10-18 18:51:29 +02:00
Haakon Meland Eriksen
fc4b1693f9 Added config settings sensible for Hubzilla on OpenShift 2015-10-18 18:40:55 +02:00
jeroenpraat
52f3d6722d Update nl+es 2015-10-18 16:45:11 +02:00
Mario Vavti
126628546b tweak justify gallery options to not load to large previews 2015-10-18 14:21:42 +02:00
redmatrix
2540ecc0ac Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	README.md
2015-10-17 16:53:14 -07:00
redmatrix
b49972a623 start pointing people to hubzilla instead of redmatrix 2015-10-17 16:51:07 -07:00
redmatrix
b82a9a6594 messages.po got truncated due to a failed cron job 2015-10-17 16:47:18 -07:00
redmatrix
be701677d6 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	view/nl/messages.po
	view/nl/strings.php
2015-10-17 16:38:57 -07:00
redmatrix
1e8fc8b062 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-17 16:34:00 -07:00
redmatrix
b6c765c9dc allow homepage content to be a full redirect 2015-10-17 16:33:28 -07:00
redmatrix
1d2797dc1f bring back chat expiration setting and adjust chat size for our now smaller content region 2015-10-17 14:54:27 -07:00
redmatrix
4b984f9819 filter delivery reports 2015-10-17 13:26:55 -07:00
redmatrix
e8882a5167 remove one more Friendica table reference from the API 2015-10-16 15:24:48 -07:00
redmatrix
4f0490f26f Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-16 13:06:47 -07:00
redmatrix
7fe6bc52d0 change setup defaults to 127.0.0.1 instead of localhost for DB server, add documentation to the INSTALL.txt explaining the choice. 2015-10-16 13:05:40 -07:00
Mario Vavti
b7408fa39e we now provide images for all suffixes (0-3) -> simplify photo item body creation and provide width x height for any size 2015-10-16 16:27:51 +02:00
jeroenpraat
7ca5b5c928 Update Dutch strings 2015-10-16 15:31:11 +02:00
redmatrix
6f5f613d9f Merge pull request #90 from anaqreon/theme-doc
Documentation for theme repo management
2015-10-16 22:26:38 +11:00
redmatrix
52f2509280 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-16 04:22:09 -07:00
redmatrix
c07f694a07 another try at issue #89 - rotating photos 2015-10-16 04:21:40 -07:00
Mario Vavti
c49198fd71 this is all the info we need 2015-10-16 12:24:27 +02:00
Andrew Manning
864bad0ebb Updated text 2015-10-16 06:23:15 -04:00
Andrew Manning
051858300e Updated formatting and typos 2015-10-16 06:21:02 -04:00
Andrew Manning
75d16e4852 New documentation for theme repo management 2015-10-16 06:18:47 -04:00
redmatrix
a756c0b182 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
2015-10-15 21:40:59 -07:00
redmatrix
550cab41fb missing xchan_mail_query 2015-10-15 21:39:33 -07:00
redmatrix
45bd81fe8c missed the xchan_mail_query 2015-10-15 21:38:16 -07:00
redmatrix
3f7ee613fc mail sync debugging 2015-10-15 20:40:24 -07:00
redmatrix
93f061f78a mail sync/migrate continued; also abstract delivery loop to make it re-usable, change refresh_all to use delivery loop. 2015-10-15 18:52:04 -07:00
redmatrix
7517c76ae4 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	install/update.php
2015-10-15 16:02:37 -07:00
redmatrix
e26f771cbe dummy update 2015-10-15 16:00:31 -07:00
redmatrix
bf5a1f662a generate all (non-square) photo scales - even if the original photo is smaller than the scale target sizes. 2015-10-15 14:18:40 -07:00
redmatrix
d9753989bf issue #89 - rotating photos does not work 2015-10-15 13:23:40 -07:00
Mario Vavti
391b98f72c fix webpages 2015-10-15 20:57:05 +02:00
Mario Vavti
d40a087ec2 really fix label name 2015-10-15 16:07:13 +02:00
Mario Vavti
138c14d43f wrong logic 2015-10-15 15:48:13 +02:00
Mario Vavti
dc6a594277 fix label name 2015-10-15 15:41:08 +02:00
Mario Vavti
9f5c61b1fd reflect default image size changes in mod/photos 2015-10-15 14:52:31 +02:00
Mario Vavti
3bca640521 do not try to remove photos twice 2015-10-15 13:57:15 +02:00
Mario Vavti
73082a338b (re)add default image-size 320px - it is good for gallery preview. this size has the suffix -3 now 2015-10-15 12:56:22 +02:00
Mario Vavti
1593ebec1f update conv_list.tpl 2015-10-15 11:49:33 +02:00
Mario Vavti
2413968021 double up default photo sizes - even the mos simple camera can now do images > 1024px 2015-10-15 11:20:56 +02:00
Mario Vavti
44b542814a if photo deleted from /cloud or /dav also delete from /photos 2015-10-15 10:29:39 +02:00
Mario Vavti
2848f5dab4 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-15 09:36:51 +02:00
redmatrix
f0f5a8f2b5 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-14 18:03:20 -07:00
redmatrix
0563ce93a1 change name of matrix app 2015-10-14 18:03:05 -07:00
redmatrix
6a927be76c Merge pull request #88 from anaqreon/grid-app
Replaced RedMatrix icon and label in app list
2015-10-15 12:02:50 +11:00
redmatrix
c8e3ea955d more mail sync work 2015-10-14 17:49:35 -07:00
redmatrix
b33a9a71f6 more work on import & sync of private mail and conversations 2015-10-14 17:40:50 -07:00
Andrew Manning
dc80431438 Replaced RedMatrix icon and label in app list 2015-10-14 19:43:40 -04:00
redmatrix
8af3dc140e issue #87 - photos not getting deleted from mod_photo when deleted in DAV or cloud 2015-10-14 15:08:07 -07:00
Mario Vavti
3c7d2d4cea updating the local item only does not make much sense in this case 2015-10-14 23:23:06 +02:00
redmatrix
de697a4267 issue #86 - like/dislike in photos not working 2015-10-14 14:16:16 -07:00
Mario Vavti
ca35db76b8 wrong variable 2015-10-14 23:07:49 +02:00
Mario Vavti
b6eded1119 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-14 22:57:03 +02:00
Mario Vavti
c8d8ae89d7 remove $item from $prep_arr - we probably do not need it 2015-10-14 22:46:40 +02:00
redmatrix
b2d949ce9a issue #82 - args not defined (should be arr) 2015-10-14 13:25:58 -07:00
Mario Vavti
f12ebffa39 really check for large photos feature 2015-10-14 22:24:13 +02:00
redmatrix
9b4d32b68c Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-14 13:19:52 -07:00
redmatrix
f4e708a02f port of mail encoding 2015-10-14 13:19:28 -07:00
Mario Vavti
b4e83b6537 allow photo-items to appear full width if large photos feature is enabled. in prepare_body() split off mentions, tags, categories folders and attachments from body for easier theming. some other little fixes. 2015-10-14 22:14:19 +02:00
redmatrix
c7637a0c53 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-14 13:13:12 -07:00
redmatrix
9b1195c896 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-14 13:12:00 -07:00
redmatrix
732c6134dd support for mail sync 2015-10-14 13:11:24 -07:00
jeroenpraat
e98c871781 Regenerated messages.po. 2015-10-14 14:31:51 +02:00
redmatrix
d616099de6 Merge pull request #80 from git-marijus/master
fix /channel not updating after posting comment
2015-10-14 18:19:32 +11:00
Wave
e3070eb170 Merge pull request #81 from tuscanhobbit/master
Italian strings updated
2015-10-14 09:12:58 +02:00
Paolo Tacconi
319b02a757 Italian strings updated 2015-10-14 09:11:05 +02:00
redmatrix
64cdbb8e3b Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-13 16:19:33 -07:00
redmatrix
edeba4ca34 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/api.php
2015-10-13 16:19:25 -07:00
redmatrix
7e03f612b3 file migration - continued 2015-10-13 16:16:51 -07:00
redmatrix
578f1b8ece api extenesions for file migration 2015-10-13 16:15:34 -07:00
Mario Vavti
e2a15d0ec9 fix photo visibility switch on photo upload 2015-10-13 14:05:27 +02:00
Mario Vavti
3c74aec973 fix /channel not updating after posting comment 2015-10-13 12:05:55 +02:00
Mario Vavti
61e3ef2552 do not collapse content which is just slightly higher than we allow 2015-10-13 10:45:22 +02:00
redmatrix
136e5fdf95 port of file detail api call 2015-10-12 23:39:55 -07:00
redmatrix
75fe9f9cc4 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-12 23:37:35 -07:00
redmatrix
73dad85867 file detail api call (will not work for huge files) 2015-10-12 23:36:26 -07:00
redmatrix
91895c52ca missing underscore 2015-10-12 19:54:01 -07:00
redmatrix
fc28af8518 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/attach.php
2015-10-12 19:52:21 -07:00
redmatrix
3545626950 attach_list_files had some problems - wasn't used until now apparently 2015-10-12 19:49:06 -07:00
redmatrix
6a7079a594 small change to allow a person with sufficient privileges the ability to import a file into their cloud storage from elsewhere in the server filesystem - without nuking it in the process. 2015-10-12 18:55:02 -07:00
redmatrix
42db2bc93d Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-12 16:16:14 -07:00
redmatrix
a2f5b55d10 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-12 16:12:51 -07:00
redmatrix
8e7e9b7040 version roll 2015-10-12 16:11:55 -07:00
jeroenpraat
43eefb5929 update es + nl strings 2015-10-13 00:43:23 +02:00
redmatrix
dcdcba9f1f Merge pull request #79 from HaakonME/master
Updated Help pages to include Hubzilla on OpenShift
2015-10-12 17:29:34 +11:00
Mario Vavti
dec37b3dbe another collapseHeight() fix 2015-10-11 22:58:59 +02:00
Mario Vavti
9431112f77 fix an issue with collapseHeight() and css margins/paddings in directory 2015-10-11 22:49:36 +02:00
Mario Vavti
7bdd5c9e0d Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-11 22:32:27 +02:00
Mario Vavti
c963aa98e8 some conv-item restructuring to allow full width elements 2015-10-11 22:32:06 +02:00
redmatrix
0f6e1c1c05 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-11 12:41:39 -07:00
redmatrix
ce8d49a47d Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-11 12:41:28 -07:00
redmatrix
70dc305f12 version roll 2015-10-11 12:40:23 -07:00
Haakon Meland Eriksen
df45374041 Updated Hubzilla on OpenShift HOWTO with use of logging 2015-10-11 14:32:01 +02:00
jeroenpraat
22a5a91bd5 Added Hubzilla banner to the Readme (for Github) 2015-10-11 00:05:41 +02:00
Haakon Meland Eriksen
d5788ba53a Updated help page for Hubzilla on OpenShift 2015-10-10 15:06:36 +02:00
Haakon Meland Eriksen
4d8a1c67c3 Updated help page for Hubzilla on OpenShift 2015-10-10 14:46:58 +02:00
Haakon Meland Eriksen
ea34e4bad8 Updated README for Hubzilla on OpenShift 2015-10-10 14:45:57 +02:00
Haakon Meland Eriksen
258e2d197a Updated help page for Hubzilla on OpenShift 2015-10-10 14:41:01 +02:00
Haakon Meland Eriksen
e75e09dae8 Updated help page for Hubzilla on OpenShift 2015-10-10 14:38:13 +02:00
Haakon Meland Eriksen
4aee8ba27f Added link to Hubzilla on OpenShift HOWTO using Projectname 2015-10-10 14:31:41 +02:00
Haakon Meland Eriksen
90c6276fe2 Added link to Hubzilla on OpenShift HOWTO 2015-10-10 14:28:17 +02:00
Haakon Meland Eriksen
1cae3baaea Hubzilla on OpenShift HOWTO added to Help 2015-10-10 14:24:35 +02:00
redmatrix
209882d5a9 Merge pull request #76 from kenrestivo/update-post-docs
Update the post docs adding how to post to a channel
2015-10-10 09:11:52 +11:00
redmatrix
2999096221 Merge pull request #77 from HaakonME/master
Updated Hubzilla on OpenShift README with HOWTO
2015-10-10 09:11:29 +11:00
redmatrix
d076255c98 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	mod/uexport.php
	view/tpl/uexport.tpl
2015-10-09 14:27:47 -07:00
redmatrix
b2f2deffe6 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-09 14:25:56 -07:00
redmatrix
b31aa4aacb string update 2015-10-09 14:25:29 -07:00
Haakon Meland Eriksen
85962a3eb1 Updated Hubzilla on OpenShift README with HOWTO 2015-10-09 19:37:49 +02:00
jeroenpraat
a9696abdce Redesigned the export page. Please fix my English if I made some mistakes. 2015-10-09 16:45:29 +02:00
ken restivo
e22448fb5c Update the post docs adding https://github.com/redmatrix/hubzilla/issues/67 2015-10-08 21:17:59 -07:00
redmatrix
db0a102703 Merge pull request #397 from anaqreon/uexport
There is no mod/import_items tool in RedMatrix
2015-10-08 13:52:26 +11:00
Andrew Manning
9034765790 There is no mod/import_items tool in RedMatrix 2015-10-07 20:37:00 -04:00
redmatrix
3377b29957 Merge pull request #395 from anaqreon/uexport
Add message about exporting by year/month to uexport
2015-10-08 11:25:08 +11:00
redmatrix
5390594f40 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-06 20:33:12 -07:00
redmatrix
e95753b184 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-06 20:32:24 -07:00
redmatrix
6bd0d57c1e version update 2015-10-06 20:32:08 -07:00
redmatrix
192b5a41f0 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-06 20:31:45 -07:00
redmatrix
c76da2e77d functions to update urls in items when doing migrations 2015-10-06 20:30:49 -07:00
Andrew Manning
8bf45536d3 Forgot the year and month url part 2015-10-06 06:50:33 -04:00
Andrew Manning
e1fca2a1ab Add message about exporting by year/month to uexport 2015-10-06 06:45:55 -04:00
jeroenpraat
f5fe37ab09 Updated Spanish strings 2015-10-05 16:53:43 +02:00
jeroenpraat
08813f1650 Merge branch 'master' of https://github.com/redmatrix/redmatrix 2015-10-05 16:51:51 +02:00
jeroenpraat
8f7dd2f858 Final Spanish strings for Redmatrix 2015-10-05 16:50:59 +02:00
Mario Vavti
05050381d3 bring our bbcode tools to private mail 2015-10-05 12:26:04 +02:00
redmatrix
95d6d2644f Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-04 13:49:13 -07:00
redmatrix
dbd981939c version and strings update 2015-10-04 13:48:06 -07:00
Mario Vavti
2e45b41902 do not show delete conversation in single message view 2015-10-04 19:58:20 +02:00
Mario Vavti
7776c56c6c bring single message view to inbox/outbox view 2015-10-04 19:51:23 +02:00
Mario Vavti
4decceea76 add anchors to messages and links 2015-10-04 14:07:05 +02:00
Mario Vavti
26b97722c6 remove check mail - it just reloads the page. we get a notification in the panel if we get new mail 2015-10-04 13:43:16 +02:00
Mario Vavti
38fe928d06 cleanup some unused variables 2015-10-04 13:09:26 +02:00
Mario Vavti
c229223e01 private mail: if receiver is not in abook provide only his webbie to the form 2015-10-04 12:08:23 +02:00
jeroenpraat
ab59e41e1a Red:Notify > Hubzilla:Notify 2015-10-03 15:51:12 +02:00
jeroenpraat
392ee70fd5 Updated Spanish and Dutch language strings 2015-10-03 15:38:40 +02:00
redmatrix
7abad2ff99 get rid of the unnecessary blank space after mail recipient completion 2015-10-02 18:12:09 -07:00
Mario Vavti
d337cc6618 private mail: $preid should be abook_xchan not abook_id 2015-10-02 22:53:51 +02:00
Mario Vavti
3a8bff228e Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-10-02 17:52:14 +02:00
Mario Vavti
5ba39fef9a private mail compositor changes 2015-10-02 17:51:37 +02:00
redmatrix
c7160e3d25 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-10-02 04:52:27 -07:00
redmatrix
6171d164d7 need full path to deliver_hooks.php 2015-10-02 04:51:57 -07:00
redmatrix
b1e0018b74 string update 2015-10-02 04:50:58 -07:00
Mario Vavti
9b8aa8d09e whitespace 2015-10-02 12:26:12 +02:00
Mario Vavti
3bed94f4ad move mail item buttons/menu to dropdown 2015-10-02 12:20:33 +02:00
Mario Vavti
a895a0d79e private mail template and css fixes 2015-10-02 11:41:37 +02:00
mrjive
32522b61f2 Merge pull request #6 from redmatrix/master
updating from original codebase
2015-10-02 09:45:03 +02:00
redmatrix
1da3828a09 issue with resetting post perms to default audience - not sticking. 2015-10-01 20:22:03 -07:00
redmatrix
982ff8733f one more change 2015-10-01 19:54:28 -07:00
redmatrix
ebe374d572 notification changes to support testdrive 2015-10-01 19:49:06 -07:00
redmatrix
dd45e7b4eb Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-01 17:30:15 -07:00
redmatrix
63eb0e3a38 allow additional uses for xtags 2015-10-01 17:28:03 -07:00
redmatrix
f472071f6f Merge pull request #66 from HaakonME/master
Updated Norwegian strings for Hubzilla , optional OpenShift deploy and cron
2015-10-02 09:59:44 +10:00
redmatrix
7b695aa684 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-10-01 16:56:38 -07:00
redmatrix
de4b5978c3 update cert authorities 2015-10-01 16:55:15 -07:00
Haakon Meland Eriksen
f23f8f7f5d Small fix to deploy 2015-10-01 22:08:38 +02:00
Haakon Meland Eriksen
f64acadd58 Small fix to deploy 2015-10-01 22:03:12 +02:00
Haakon Meland Eriksen
68ea1d0289 Changed deploy script - removed hot_deploy and changed poller to every 10 minutes rather than 5 minutes. 2015-10-01 21:59:12 +02:00
Haakon Meland Eriksen
1574043a9e Updated Norwegian strings for Hubzilla 2015-10-01 17:51:31 +02:00
Haakon Meland Eriksen
a2a5580e68 Updated Norwegian string for Hubzilla 2015-10-01 17:46:31 +02:00
Haakon Meland Eriksen
2696cf9b9e Merge remote-tracking branch 'upstream/master' 2015-10-01 17:31:22 +02:00
Wave
d9f962ee6f Merge pull request #65 from tuscanhobbit/master
More updates on Italian translation from transifex
2015-10-01 17:31:00 +02:00
Paolo Tacconi
7468d8a000 More updates on Italian translation from transifex 2015-10-01 17:29:04 +02:00
Wave
270bb4e2d9 Merge pull request #64 from tuscanhobbit/master
First Hubzilla Italian localization
2015-10-01 17:12:31 +02:00
Paolo Tacconi
d3d9b06eb7 First Hubzilla Italian localization 2015-10-01 17:11:36 +02:00
redmatrix
e7131bc8f8 this is an even better fix for issue #61 2015-09-30 22:10:26 -07:00
redmatrix
1df1c15e48 issue #61 - provide un-useable icons as placeholders for location setting options on deleted hublocs 2015-09-30 21:59:33 -07:00
redmatrix
986244eeea issue #63 - missing table fields in db query 2015-09-30 21:38:21 -07:00
redmatrix
526bc36b40 update the opensearch template 2015-09-30 19:31:25 -07:00
redmatrix
9bdb7bef5d add delivery reports to mail (not backported to redmatrix) 2015-09-30 19:27:53 -07:00
redmatrix
54e7d5d260 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	view/de/messages.po
	view/de/strings.php
2015-09-30 16:31:06 -07:00
redmatrix
5265c190d4 document the issue with cloned delivery to self vs normal delivery to self 2015-09-30 16:27:24 -07:00
redmatrix
4b7c052ed8 undo self deliver check 2015-09-30 12:59:13 -07:00
redmatrix
b62e7e7d8b Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-30 12:57:43 -07:00
redmatrix
fd290882fd undo self-deliver check 2015-09-30 12:57:02 -07:00
zzottel
09015f8924 Merge pull request #394 from zzottel/master
update German strings
2015-09-30 15:42:10 +02:00
zottel
b5f382f0ea update German strings 2015-09-30 14:05:10 +02:00
zzottel
ccd13dd643 Merge pull request #62 from zzottel/master
update German strings
2015-09-30 14:03:12 +02:00
zottel
d66715648a update German strings 2015-09-30 14:01:21 +02:00
Haakon Meland Eriksen
e07ff7d3fb Merge remote-tracking branch 'upstream/master' 2015-09-30 12:21:36 +02:00
zottel
0d60789f69 Merge remote-tracking branch 'upstream/master' 2015-09-30 08:45:13 +02:00
redmatrix
e769fbaffb another error from the db logs 2015-09-29 22:56:29 -07:00
redmatrix
5721f9f3a9 wrong table column names 2015-09-29 22:51:06 -07:00
redmatrix
cca9f2392e queue cleanup, and report issues 2015-09-29 22:11:10 -07:00
redmatrix
928fa44154 more work on the notifier 2015-09-29 21:08:12 -07:00
redmatrix
a795f03c48 improve the sys channel location repair to check key issues and re-installs and/or site moves 2015-09-29 17:21:14 -07:00
redmatrix
8f7b869c08 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-29 16:56:50 -07:00
redmatrix
c5294f994e check and repair sys channel locations (hublocs) in zot-finger if they are messed up 2015-09-29 16:55:51 -07:00
jeroenpraat
34f52e47eb Hooray! Dutch language complete again. 2015-09-29 22:22:02 +02:00
zottel
f950d27b3d Merge remote-tracking branch 'upstream/master' 2015-09-29 12:40:24 +02:00
Mario Vavti
2a2da48d18 fix typo in 0b1cd826b0 2015-09-29 11:56:43 +02:00
Mario Vavti
0b1cd826b0 do not store a recalled mail if we can not find the original mid 2015-09-29 11:48:41 +02:00
mrjive
11c1573b55 Merge pull request #5 from redmatrix/master
updating from original codebase
2015-09-29 08:01:51 +02:00
redmatrix
b3525b8657 remove debugging 2015-09-28 20:04:44 -07:00
redmatrix
8d5556764c add one more level of parentheses to ensure operator precedence is correctly evaluated 2015-09-28 20:03:11 -07:00
redmatrix
f965209eee check public scopes against visitor in item_permissions_sql() 2015-09-28 19:45:57 -07:00
redmatrix
5c526995d8 resolve conflicts 2015-09-28 19:07:31 -07:00
redmatrix
50ee82e8bd Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-28 19:06:10 -07:00
redmatrix
8a3c909c74 ignore self delivery in process_delivery 2015-09-28 19:05:45 -07:00
redmatrix
3a8e1e0484 process_delivery: ignore self 2015-09-28 19:04:36 -07:00
redmatrix
3b53cd56ef Merge branch 'deadsite' 2015-09-28 17:15:34 -07:00
redmatrix
30e88a4f6b typo 2015-09-28 17:15:04 -07:00
redmatrix
e5f47cd14b create site records for all queued sites and check for death 2015-09-28 17:13:11 -07:00
Mario Vavti
6368b09337 a clear is needed after floating 2015-09-28 21:51:04 +02:00
Mario Vavti
b97102da01 private mail: bring additional inbox/outbox views and ajaxify single message drop 2015-09-28 17:40:38 +02:00
redmatrix
dbeae16dc1 add site_type to queries, first few - several more to go. 2015-09-28 04:21:29 -07:00
redmatrix
edbcba6f11 schema support for additional site types 2015-09-28 04:15:21 -07:00
redmatrix
ed876a9c52 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-27 18:03:40 -07:00
redmatrix
67fe8fc4a7 well there's one problem... 2015-09-27 18:00:37 -07:00
redmatrix
55b530f0fd Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	util/messages.po
2015-09-27 17:00:41 -07:00
redmatrix
3a2c3ea8fa Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-27 16:47:58 -07:00
redmatrix
aae51a9b23 add some safety checks on the sending side of sync 2015-09-27 16:47:25 -07:00
redmatrix
cd2b811555 move string files to hmessages.po and hstrings.php for hubzilla to avoid endless merge conflicts. 2015-09-26 23:44:30 -07:00
redmatrix
15d1a6c937 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-26 13:28:24 -07:00
redmatrix
9ab335626c import_xchan_photo: check the return headers to ensure it's an image content-type of some form as imagick chucks a wobbly if you try to initialise an image with an html error page. 2015-09-26 13:25:34 -07:00
Mario Vavti
451db7dd98 Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-09-25 23:26:47 +02:00
Mario Vavti
d6293730fc private mail: some work on conversations view 2015-09-25 23:26:28 +02:00
zottel
8e410f14b1 Merge remote-tracking branch 'upstream/master' 2015-09-25 22:25:35 +02:00
jeroenpraat
49000dadda Another Spanish update 2015-09-25 21:25:42 +02:00
jeroenpraat
9bde18492a As a result of the logo vote: replaced favicon, remade alternative hubzilla avatar and uploaded 6 logo variants. Originals courtesy of Iko. 2015-09-25 21:17:48 +02:00
Haakon Meland Eriksen
b22fa9f7f4 Merge remote-tracking branch 'upstream/master' 2015-09-25 17:52:58 +02:00
zottel
a7b2d23e9b Merge remote-tracking branch 'upstream/master' 2015-09-25 11:19:42 +02:00
redmatrix
ba94f824b9 deliveries per process ui for setting 2015-09-25 01:31:58 -07:00
redmatrix
8aec437c23 remove redundant code 2015-09-24 23:02:41 -07:00
redmatrix
98f656cfcb delivery optimisations 2015-09-24 22:51:47 -07:00
redmatrix
e558ddae3f clean up the delivery reports to make them manageable, more approachable, and translateable 2015-09-24 18:19:33 -07:00
redmatrix
2c665e5e4c add Diaspora (actually any external service which uses the queue) to delivery reports 2015-09-24 17:41:05 -07:00
redmatrix
2fe3d16bbe Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-24 16:58:32 -07:00
redmatrix
2844f276b9 Document the additional content export options 2015-09-24 16:57:17 -07:00
Haakon Meland Eriksen
414b5ea6f3 Merge remote-tracking branch 'upstream/master' 2015-09-24 23:32:18 +02:00
redmatrix
c42dcd5ac9 Merge pull request #55 from git-marijus/master
some heavy private mail restructuring - work in progress
2015-09-25 06:37:38 +10:00
Mario Vavti
b9723aa85b some heavy private mail restructuring - work in progress 2015-09-24 14:07:44 +02:00
zottel
03fb13e749 Merge remote-tracking branch 'upstream/master' 2015-09-24 12:50:27 +02:00
redmatrix
e04f04ef0f Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	install/update.php
2015-09-23 22:33:48 -07:00
redmatrix
0f3c2c4b24 add vdata field for caldav 2015-09-23 22:32:46 -07:00
redmatrix
8a94a4938f dummy update 2015-09-23 22:31:49 -07:00
redmatrix
b553ffd55d timezone tweaks 2015-09-23 20:59:19 -07:00
redmatrix
e45958b967 add plugin hooks to channel sync/import/export 2015-09-23 18:27:04 -07:00
mrjive
006ca4421a Merge pull request #4 from redmatrix/master
updating from original codebase
2015-09-23 17:13:55 +02:00
zottel
0bfdb45b41 Merge remote-tracking branch 'upstream/master' 2015-09-23 08:59:28 +02:00
Haakon Meland Eriksen
8cbccb20ef Merge remote-tracking branch 'upstream/master' 2015-09-23 07:43:17 +02:00
redmatrix
f506f73d3f Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/items.php
2015-09-22 22:31:53 -07:00
redmatrix
7734bbfe4d problems with extended item import and signatures 2015-09-22 22:30:09 -07:00
redmatrix
d35c5bcb2f merge issue 2015-09-22 19:16:13 -07:00
redmatrix
c699d3a17a Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-22 19:14:21 -07:00
redmatrix
d16ac62a51 don't send sync packets to deleted hubloc locations 2015-09-22 19:13:10 -07:00
redmatrix
2fa5b8c0a2 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-22 18:41:53 -07:00
redmatrix
15feeb7bfe inverted logic syncing deleted hublocs 2015-09-22 18:40:03 -07:00
redmatrix
02ecc93998 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-22 16:50:55 -07:00
redmatrix
34291d5938 add names to delivery report for sync delivery 2015-09-22 16:50:08 -07:00
redmatrix
e726adc27b Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-22 16:45:14 -07:00
redmatrix
642f460dca report the channel sync 2015-09-22 16:43:36 -07:00
redmatrix
1d7d9818fa Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/items.php
	include/zot.php
2015-09-22 16:26:28 -07:00
redmatrix
c2dcc68803 backport item sync 2015-09-22 16:19:08 -07:00
Haakon Meland Eriksen
d7c9f2ccba Merge remote-tracking branch 'upstream/master' 2015-09-22 19:02:20 +02:00
redmatrix
7dd61c05dc allow self delivery until we figure out why clone sync of posted items isn't doing it's thing 2015-09-22 04:39:36 -07:00
redmatrix
1c1155513a add one more test 2015-09-22 04:28:05 -07:00
redmatrix
f84151e1fe fix foreach warning 2015-09-22 04:24:54 -07:00
mrjive
5ec3d3e36d Merge pull request #3 from redmatrix/master
updating from original codebase
2015-09-22 13:11:54 +02:00
redmatrix
4b13f0e025 since this is now usable, protect the displayed delivery reports from XSS injection 2015-09-22 04:08:03 -07:00
redmatrix
2869ccfe39 delivery reports - crude but mostly functional at least for zot deliveries 2015-09-22 04:04:51 -07:00
redmatrix
8ead4745f8 Merge pull request #54 from git-marijus/master
fix consensus items - issue #53
2015-09-22 19:41:08 +10:00
redmatrix
15b241cc3e remove dummy update from merge 2015-09-22 02:34:34 -07:00
redmatrix
2b07a69b93 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-22 02:34:05 -07:00
redmatrix
5068ce0569 dummy update 2015-09-22 02:33:24 -07:00
redmatrix
0b1b11ea53 heavy lifting for delivery reports 2015-09-22 02:32:04 -07:00
Mario Vavti
ea9f169a6c fix consensus items - issue #53 2015-09-22 10:59:19 +02:00
Haakon Meland Eriksen
cbd7f89066 Merge remote-tracking branch 'upstream/master' 2015-09-22 07:34:42 +02:00
redmatrix
146ff6f703 more progress on delivery reports. Store the remote results from zot sites locally. 2015-09-21 22:30:28 -07:00
redmatrix
326ae5ff6b Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	mod/post.php
2015-09-21 20:29:18 -07:00
redmatrix
8c16f12d7a issue #52 - try all matching hublocs for remote auth, not just the "best one". 2015-09-21 20:20:16 -07:00
redmatrix
477228d4ff issue #50 - cloud listings produce white screen for unauthenticated viewer 2015-09-21 20:17:48 -07:00
redmatrix
9baaa6fa56 issue #51 2015-09-21 20:05:54 -07:00
mrjive
49d11ed9f8 Merge pull request #2 from redmatrix/master
get fresh code from HZ base
2015-09-21 15:41:17 +02:00
Haakon Meland Eriksen
7834274bff Merge remote-tracking branch 'upstream/master' 2015-09-21 07:31:36 +02:00
redmatrix
d2565d0f61 looks like chat has been neglected a bit recently 2015-09-20 21:37:18 -07:00
redmatrix
4fde0bf62e Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-20 20:58:55 -07:00
redmatrix
a679081993 new delivery report format 2015-09-20 20:21:54 -07:00
redmatrix
177292de13 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-20 18:10:25 -07:00
redmatrix
efcb4abfd0 improve on the last attempt 2015-09-20 18:08:06 -07:00
redmatrix
1501d1c570 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-20 18:03:41 -07:00
redmatrix
59a56ac77f catch the timestamp also 2015-09-20 17:47:41 -07:00
redmatrix
35f09f4f74 remove system flags from channel import packet 2015-09-20 17:45:23 -07:00
redmatrix
421dfce599 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-20 16:55:53 -07:00
redmatrix
b240c15014 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-20 16:55:24 -07:00
redmatrix
9de8df496a we need the xchan record also 2015-09-20 16:52:21 -07:00
Haakon Meland Eriksen
4f65066572 Removed hot_deploy 2015-09-20 23:06:25 +02:00
Mario Vavti
c38687725d kick right aside out a little earlier 2015-09-20 22:12:00 +02:00
Haakon Meland Eriksen
099f236f45 Merge remote-tracking branch 'upstream/master' 2015-09-20 21:29:41 +02:00
redmatrix
996cd7e2ab Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-20 00:28:22 -07:00
redmatrix
77df590f65 initial checkin delivery report class 2015-09-20 00:27:25 -07:00
redmatrix
ce064188c6 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-19 22:48:22 -07:00
redmatrix
5d6f59a598 clone new connections 2015-09-19 22:46:59 -07:00
redmatrix
f4a4cf1402 clone new connection requests 2015-09-19 15:36:07 -07:00
zottel
032ef0ca34 Merge remote-tracking branch 'upstream/master' 2015-09-19 20:11:59 +02:00
Haakon Meland Eriksen
5a7e8d8520 Merge remote-tracking branch 'upstream/master' 2015-09-19 11:35:31 +02:00
redmatrix
63146821d7 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-18 23:02:49 -07:00
redmatrix
9ed8eac8c6 include site identitfier on redmatrix delivery reports also 2015-09-18 23:02:03 -07:00
redmatrix
40bb1699a5 DB table for delivery reports 2015-09-18 22:55:47 -07:00
redmatrix
74827133b2 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	util/messages.po
2015-09-18 22:46:21 -07:00
redmatrix
7c8706757d Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-18 22:44:23 -07:00
redmatrix
3dc066a143 dummy update 2015-09-18 22:43:35 -07:00
redmatrix
43251ed8ce add reporting site to delivery report 2015-09-18 22:00:33 -07:00
redmatrix
1a16822987 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-18 14:32:23 -07:00
redmatrix
fdd4c1b9d1 more work on surviving hub re-installs 2015-09-18 14:31:29 -07:00
Haakon Meland Eriksen
1bd1050160 Added hot_deploy directly to .openshift/makers/hot_deploy 2015-09-18 18:58:43 +02:00
Haakon Meland Eriksen
525a0478b0 Added hot_deploy to deploy script - fixed echo 2015-09-18 18:55:56 +02:00
Haakon Meland Eriksen
ce28760c2a Merge remote-tracking branch 'upstream/master' 2015-09-18 18:51:39 +02:00
Haakon Meland Eriksen
438cb1d7e0 Added hot_deploy to deploy script 2015-09-18 18:51:03 +02:00
Mario Vavti
87c8cf4892 css fixes 2015-09-18 13:07:04 +02:00
redmatrix
f2fefb91d5 change photo permissions when attach permissions are changed through mod/filestorage, and fix lockview for photos. 2015-09-18 01:53:04 -07:00
zottel
4d05d477f8 Merge remote-tracking branch 'upstream/master' 2015-09-18 09:38:55 +02:00
redmatrix
cc95c3e9c8 start hooking in the new webfinger/zot merged discovery 2015-09-17 18:36:19 -07:00
redmatrix
f0a7a6a1e2 consolidate zotfinger and webfinger 2015-09-17 17:51:31 -07:00
jeroenpraat
4090843fef Converse width for a few related (old) schemas back to 1024px / Name default theme to Focus / Non expert custom display settings above expert display settings, so people can better find them. 2015-09-17 22:39:48 +02:00
Mario Vavti
c6c18261a0 missing refernce to array 2015-09-17 19:33:44 +02:00
Mario Vavti
d9e83eb53a Merge branch 'master' of https://github.com/redmatrix/hubzilla 2015-09-17 19:25:36 +02:00
Mario Vavti
1cf404177d quickfix for private messages - needs a lot more work 2015-09-17 19:25:13 +02:00
git-marijus
ed9ffec5ba Merge pull request #46 from anaqreon/master
Corrected some missing space typos in docs
2015-09-17 17:38:20 +02:00
jeroenpraat
582607c0f0 Another (hopefully final) Spanish update 2015-09-17 16:28:31 +02:00
Mario Vavti
6cd5826d21 Revert "moved submit button to the bottom in settings.tpl"
This reverts commit 1500691cc2.
2015-09-17 15:05:40 +02:00
Mario Vavti
b7e953f50e fix calculation of content height with margins 2015-09-17 14:14:01 +02:00
Andrew Manning
9f630b6653 Corrected some missing space typos in docs 2015-09-17 06:44:12 -04:00
mrjive
024af91df8 Merge pull request #1 from redmatrix/master
updating from original codebase
2015-09-17 09:27:13 +02:00
zottel
3017dbc8c1 Merge remote-tracking branch 'upstream/master' 2015-09-17 08:50:28 +02:00
redmatrix
5d33b34be7 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-16 21:57:57 -07:00
redmatrix
f2104b0a5a Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-16 21:57:21 -07:00
redmatrix
84b004399e push revision 2015-09-16 21:56:55 -07:00
redmatrix
e8a01f0916 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-16 21:56:34 -07:00
redmatrix
4f1d579ba1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-16 21:56:26 -07:00
redmatrix
c34d8286a3 change matrix to grid, begin webfinger optimisation 2015-09-16 21:27:58 -07:00
redmatrix
4eb389f2d9 Merge pull request #45 from anaqreon/master
Started correcting vestiges of the RedMatrix and matrix, replacing wi…
2015-09-17 11:49:55 +10:00
Andrew Manning
999ac60a87 Started correcting vestiges of the RedMatrix and matrix, replacing with Hubzilla and grid 2015-09-16 21:44:24 -04:00
redmatrix
30af694e30 Merge pull request #44 from mrjive/move_submit_button
moved submit button to the bottom in settings.tpl
2015-09-17 10:19:43 +10:00
redmatrix
fa76da1dab Merge pull request #43 from mrjive/toggleselect
added toggle_select
2015-09-17 10:19:27 +10:00
mrjive
1500691cc2 moved submit button to the bottom in settings.tpl 2015-09-16 04:46:47 -07:00
mrjive
fae5ea749a added toggle_select 2015-09-16 02:25:44 -07:00
zottel
c2dac55edb Merge remote-tracking branch 'upstream/master' 2015-09-16 09:56:11 +02:00
redmatrix
4c5a74284b serve as application/xrd+xml 2015-09-15 21:47:01 -07:00
redmatrix
d0a3cfe765 italian string correction 2015-09-15 19:59:06 -07:00
jeroenpraat
580f1f1213 Less margin 2015-09-15 22:00:12 +02:00
jeroenpraat
b87d164f2f Cleaned some wrong metadata from PNG files. 2015-09-15 21:50:49 +02:00
jeroenpraat
f3c8f342ff Made the favicons a bit sharper (direct from SVG) and cleaned some wrong metadata from PNG files. 2015-09-15 21:49:26 +02:00
redmatrix
63a1d8d0db make sure we've got a doc type 2015-09-15 01:39:38 -07:00
redmatrix
93f5cc1e60 I'm not going to tell you what's wrong because I'll be accused of bashing another project. I'll let you read the logs and figure it out for yourself. Follow the trail of evidence and you'll discover the truth. 2015-09-15 01:24:55 -07:00
redmatrix
68a503049b persona 2015-09-14 22:24:58 -07:00
redmatrix
fae43010c5 nit 2015-09-14 21:35:41 -07:00
redmatrix
30351f5ade Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-14 21:35:30 -07:00
redmatrix
325a5b4af4 we need an owner for permissions_sql 2015-09-14 21:25:10 -07:00
redmatrix
021c81cb62 don't deliver to dead hubs 2015-09-14 20:43:39 -07:00
redmatrix
7099e09a5c Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-14 19:17:36 -07:00
redmatrix
97b990c9bf site checking stuff 2015-09-14 19:16:25 -07:00
redmatrix
db3d99f7c7 Merge pull request #41 from redmatrix/display_load_average
Display load average on the siteinfo page
2015-09-15 10:53:05 +10:00
redmatrix
8fb4f37670 remove xchan_instance_url - it needs to be an abook field, not an xchan field 2015-09-14 16:05:58 -07:00
jeroenpraat
dfd4115f7a Update siteinfo.tpl 2015-09-14 16:45:15 +02:00
jeroenpraat
e58ad35fb0 Update siteinfo.php 2015-09-14 16:42:32 +02:00
jeroenpraat
31db5078c1 Small update Spanish strings 2015-09-14 16:36:06 +02:00
Mario Vavti
40c78d23e6 quick fix for choklet bannertwo 2015-09-14 09:27:15 +02:00
Mario Vavti
ec1d6d537e quick fix for choklet bannertwo 2015-09-14 09:20:08 +02:00
zottel
06bfd2b502 Merge remote-tracking branch 'upstream/master' 2015-09-14 08:55:46 +02:00
redmatrix
fd708b28b8 ping site function (taken from admin/hubloc) 2015-09-13 22:48:18 -07:00
redmatrix
03e3281beb mod_locs - put the primary into a (non-functioning) button for visual consistency. 2015-09-13 20:15:33 -07:00
redmatrix
f247b9ce20 update 2015-09-13 20:03:16 -07:00
redmatrix
67909b55fc Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-13 19:05:15 -07:00
redmatrix
43ba690eda profile photo change activities 2015-09-13 19:04:46 -07:00
Mario Vavti
3425267368 fix banner for full flavour 2015-09-13 16:16:03 +02:00
Mario Vavti
0c3d9af333 hopefully fix banner for choklet flavour 2015-09-13 14:56:44 +02:00
redmatrix
67c2b309d1 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-12 14:38:26 -07:00
redmatrix
df0fa9883c check for empty word after trim 2015-09-12 14:37:55 -07:00
Mario Vavti
9821a39549 an attempt to fix the banner mess 2015-09-12 11:36:19 +02:00
redmatrix
692e117c8a Merge pull request #38 from MicMee/master
ensure that living sites are marked as alive
2015-09-12 08:25:27 +10:00
redmatrix
d96ca61f2b Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-11 14:57:26 -07:00
redmatrix
fc58b8cc0d log the remote message if there was one 2015-09-11 14:56:31 -07:00
redmatrix
c8503daf5a Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-11 14:33:36 -07:00
redmatrix
45e1f93e56 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	util/messages.po
2015-09-11 14:33:07 -07:00
redmatrix
77807d439e minor change on invite 2015-09-11 14:32:18 -07:00
redmatrix
e062c4e6b5 another tactic to deal with orphan hublocs from re-installs, or at least allow the descendant channel to survive 2015-09-11 14:30:07 -07:00
Michael Meer
755edd2110 ensure that living sites are marked as alive 2015-09-11 14:06:37 +02:00
Mario Vavti
f51124397f center page content by default - css file 2015-09-11 11:56:56 +02:00
Mario Vavti
e42111545b center page content by default 2015-09-11 11:54:35 +02:00
Mario Vavti
5112b4b963 css fix 2015-09-11 09:26:24 +02:00
zottel
99c5c7ab28 Merge remote-tracking branch 'upstream/master' 2015-09-11 08:15:19 +02:00
Haakon Meland Eriksen
edb1473f13 Merge remote-tracking branch 'upstream/master' 2015-09-11 06:42:11 +02:00
redmatrix
f2171173fe separate the links 2015-09-10 19:35:26 -07:00
redmatrix
7f30863df2 forum mode - use linked avatar and name for title instead of "Channel: xxxxx" or "Forum: xxxx" 2015-09-10 19:31:42 -07:00
redmatrix
a6a2c02b6a duplicated code 2015-09-10 19:21:32 -07:00
redmatrix
d3ee99d677 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	mod/like.php
2015-09-10 19:20:21 -07:00
redmatrix
4abfd4053a sync likes 2015-09-10 19:18:12 -07:00
redmatrix
05e0ed5173 export likes to clones 2015-09-10 19:17:20 -07:00
redmatrix
00b480527a provide remote delivery report at logger_debug level 2015-09-10 17:53:06 -07:00
redmatrix
e4231efd20 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-10 16:51:53 -07:00
redmatrix
922d2165b3 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-10 16:51:22 -07:00
redmatrix
9cee52c668 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-10 16:49:09 -07:00
redmatrix
50e32c3d8a zot_refresh: always try the hubloc pointed to by xchan_addr first 2015-09-10 16:48:08 -07:00
Mario Vavti
5e576bff63 fix radius setting 2015-09-10 22:22:51 +02:00
Mario Vavti
e1338f5a7f make redmatrix focus scheme default for hubzilla 2015-09-10 22:19:51 +02:00
jeroenpraat
672143d3a2 update Spanish strings 2015-09-10 13:18:24 +02:00
redmatrix
2d94a038a5 ensure connections have a name 2015-09-10 01:21:18 -07:00
zottel
174d55cf3d Merge remote-tracking branch 'upstream/master' 2015-09-10 08:32:33 +02:00
redmatrix
f2889d24e6 decentralise likes of things so they can be cloned 2015-09-09 22:03:23 -07:00
redmatrix
db58b62235 don't auto-open the editor in forum mode. Save the forum selection text until we open it. 2015-09-09 19:54:16 -07:00
redmatrix
f3b560b453 fix the lock state when using forum mode 2015-09-09 18:57:06 -07:00
redmatrix
43e064749c major changes to "forum mode" on the network/matrix page 2015-09-09 18:50:15 -07:00
redmatrix
4af339da63 slight hack to improve public forum detection in the forum widget 2015-09-09 18:18:27 -07:00
redmatrix
4cd6e7ec91 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-09 17:00:02 -07:00
redmatrix
197b5de9da update bug reporting doco 2015-09-09 16:59:26 -07:00
redmatrix
cdfddc0fc5 Merge pull request #37 from MicMee/master
typo
2015-09-10 06:26:07 +10:00
Michael Meer
f4d3ec908d typo 2015-09-09 17:08:53 +02:00
redmatrix
918aaa64e2 profile photo issues #36 2015-09-09 03:40:53 -07:00
zottel
2417396a93 Merge remote-tracking branch 'upstream/master' 2015-09-09 09:53:51 +02:00
redmatrix
0a051ff2cd preserve code blocks on item import if channel has code rights. When importing the channel itself,
turn code access off unless this is the admin.
2015-09-08 22:46:34 -07:00
redmatrix
d702133ded move mod_admin to Comanche finally 2015-09-08 20:48:35 -07:00
redmatrix
2aaee311f3 differentiate Community Server from Enterprise Server 2015-09-08 19:57:07 -07:00
redmatrix
e8d431c2f6 issues with "use this photo for profile photo" #36 2015-09-08 19:51:52 -07:00
redmatrix
0f4c012321 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/items.php
	mod/menu.php
2015-09-08 19:16:07 -07:00
redmatrix
f13a8f725c export TERM_FILE when mirroring 2015-09-08 19:14:29 -07:00
redmatrix
e6690c818d export TERM_FILE when mirroring 2015-09-08 19:13:43 -07:00
redmatrix
5d32aa94d9 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/menu.php
	mod/menu.php
	mod/mitem.php
2015-09-08 18:46:15 -07:00
redmatrix
d413b6eba8 merge conflicts 2015-09-08 18:45:58 -07:00
redmatrix
f0847e6f32 debugging menu sync 2015-09-08 18:40:56 -07:00
redmatrix
50d7554ccd add sync packets for menus 2015-09-08 18:40:19 -07:00
redmatrix
b28d3015fe Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
2015-09-08 17:53:43 -07:00
redmatrix
75d521d42a menu import and sync 2015-09-08 17:52:39 -07:00
redmatrix
1ebaacfd5e menu export 2015-09-08 17:50:24 -07:00
zottel
52cd8652bb Merge remote-tracking branch 'upstream/master' 2015-09-08 08:39:37 +02:00
redmatrix
c6bdf7e891 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-07 22:55:42 -07:00
redmatrix
11e19a06b7 export events 2015-09-07 22:54:43 -07:00
redmatrix
880ca35681 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-07 21:02:05 -07:00
redmatrix
650e98b2a9 work on event sync 2015-09-07 21:01:49 -07:00
redmatrix
f84946c135 minor fix to event sync 2015-09-07 21:00:54 -07:00
redmatrix
508969a183 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-07 20:29:13 -07:00
redmatrix
c39e3613a8 create event sync packets 2015-09-07 20:28:02 -07:00
redmatrix
4eec9a2fba Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/items.php
	view/it/messages.po
	view/it/strings.php
2015-09-07 18:20:47 -07:00
redmatrix
6d1b64065a consolidate import_items/sync_items 2015-09-07 18:14:30 -07:00
redmatrix
5751437c93 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-07 18:13:17 -07:00
redmatrix
9fa0490c44 sync posted top level items rather than deliver them (actually we do both, but sync comes first). This way we get the ACL transferred. 2015-09-07 18:11:30 -07:00
Habeas Codice
6711ceb662 fix postgres zotfeed 2015-09-07 16:28:42 -07:00
Wave
dc7677f5fa Merge pull request #391 from tuscanhobbit/master
Updated Italian strings
2015-09-07 17:29:13 +02:00
Paolo Tacconi
78fb6f55ed Updated Italian strings 2015-09-07 17:24:43 +02:00
zottel
c5981cbc9a Merge remote-tracking branch 'upstream/master' 2015-09-07 13:18:55 +02:00
redmatrix
2f52b6c164 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	util/messages.po
2015-09-07 04:06:27 -07:00
redmatrix
5d59462e49 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-07 04:04:15 -07:00
redmatrix
1b09c64856 PRIVACY: item_private seems to have been removed from permissions_sql checking with an observer. 2015-09-07 03:59:38 -07:00
zottel
24b90b475b Merge remote-tracking branch 'upstream/master' 2015-09-07 08:51:34 +02:00
redmatrix
2312f03eac Always open rpost editor on document ready 2015-09-06 20:50:31 -07:00
redmatrix
1d09e4b620 use conversation defaults for /public page instead of collapsed list mode, but allow over-ride 2015-09-06 16:42:50 -07:00
jeroenpraat
6ea1cf71b5 Update dav_windows.bb 2015-09-06 23:36:26 +02:00
jeroenpraat
302fe94705 Update dav_nemo.bb 2015-09-06 23:35:35 +02:00
jeroenpraat
38ea8d1d86 Update dav_mount.bb 2015-09-06 23:32:14 +02:00
jeroenpraat
67ed7e40be Update dav_mount.bb 2015-09-06 23:30:25 +02:00
jeroenpraat
20f211b70a Update dav_dolphin.bb 2015-09-06 23:27:55 +02:00
jeroenpraat
ebb07def7e Update dav_nautilus.bb 2015-09-06 23:26:28 +02:00
redmatrix
55ab968edf make js_upload work with hubzilla. It still needs a rewrite. 2015-09-05 17:35:00 -07:00
redmatrix
3f6d6745de syntax 2015-09-05 15:33:09 -07:00
redmatrix
d1daae1b59 Merge pull request #26 from anaqreon/logo-in-readme
Updating logo icon in Readme file and change markup heading
2015-09-05 07:18:42 +10:00
redmatrix
350ea2bf28 Merge pull request #35 from redmatrix/jeroenpraat-patch-1
Fix for PHP Fatal error:  Function name must be a string in /var/www/…
2015-09-05 07:18:01 +10:00
Haakon Meland Eriksen
2f73d24ab1 Removed old poller 2015-09-04 21:42:27 +02:00
Haakon Meland Eriksen
1a05696a84 Updating OpenShift deploy script 2015-09-04 20:05:15 +02:00
jeroenpraat
fc804751a2 Fix for PHP Fatal error: Function name must be a string in /var/www/hubzilla/include/items.php on line 3325
Please review if this is correct?
2015-09-04 12:39:47 +02:00
zottel
938ef930d4 Merge remote-tracking branch 'upstream/master' 2015-09-04 12:24:52 +02:00
Mario Vavti
ee21d87d1b uexport template fixes 2015-09-04 09:33:34 +02:00
redmatrix
b1888afa10 fix typos before pushing 2015-09-03 18:47:03 -07:00
redmatrix
856cc7d6b8 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-03 18:45:00 -07:00
redmatrix
d79e81a069 import and sync chatrooms 2015-09-03 18:44:40 -07:00
redmatrix
f7d9523c7d export chatrooms 2015-09-03 18:43:44 -07:00
redmatrix
d93e1c84ac Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
2015-09-03 17:28:51 -07:00
redmatrix
2a7ff3018b channel export - don't include linked resource items (photos, events). These items will need to be provided with those objects so that they can be re-linked. 2015-09-03 17:21:20 -07:00
redmatrix
c83da012ff profile import error #34 2015-09-03 16:19:59 -07:00
redmatrix
46e9c4299e Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-03 15:48:52 -07:00
redmatrix
e1af81ea55 in this case no results is not an error 2015-09-03 15:48:01 -07:00
redmatrix
99848ab3bb Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-03 13:11:25 -07:00
redmatrix
90d48d60d8 revision update 2015-09-03 13:10:03 -07:00
redmatrix
48c0efd20e Merge pull request #390 from zzottel/master
fix update 1148
2015-09-04 06:09:26 +10:00
Haakon Meland Eriksen
adfc748bfa Merge remote-tracking branch 'upstream/master' 2015-09-03 18:12:02 +02:00
zottel
5cef672f9a fix update 1148 2015-09-03 13:55:47 +02:00
zottel
015c7243b9 Merge remote-tracking branch 'upstream/master'
Conflicts:
	include/zot.php
2015-09-03 12:51:08 +02:00
redmatrix
d1480d9f56 bug reporting doc 2015-09-03 01:55:07 -07:00
redmatrix
f3cb17ac3b app sync 2015-09-02 23:09:51 -07:00
redmatrix
fb2d2c5585 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-02 21:59:44 -07:00
redmatrix
945ba5d788 more adjustment to apps containers 2015-09-02 21:46:19 -07:00
redmatrix
3e7edf504d sort out some app display weirdness 2015-09-02 21:35:49 -07:00
redmatrix
3285c71995 increase height of app-container so edit controls aren't shadowed 2015-09-02 21:17:23 -07:00
redmatrix
669e111118 add timestamps for syncing apps 2015-09-02 21:07:24 -07:00
redmatrix
360fda15e9 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-02 20:54:00 -07:00
redmatrix
2018b88093 dummy update 2015-09-02 20:53:26 -07:00
redmatrix
837b9224cc Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	doc/credits.bb
	mod/thing.php
2015-09-02 20:33:58 -07:00
redmatrix
c22da3da1c start to modularise the clone import and sync functions 2015-09-02 20:12:40 -07:00
redmatrix
470915a55b sync "things" (obj elements) 2015-09-02 20:07:15 -07:00
redmatrix
d9a67d64b1 Update the credits 2015-09-02 18:04:22 -07:00
redmatrix
2a26c898ca protect from sql injection 2015-09-02 15:52:54 -07:00
redmatrix
69fc10d5ad Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
2015-09-02 15:49:50 -07:00
redmatrix
3647b74d33 Merge pull request #389 from zzottel/master
really fix post filtering
2015-09-03 06:12:54 +10:00
zottel
441946b9d3 really fix post filtering 2015-09-02 15:49:07 +02:00
zottel
d376d2a590 really fix post filtering 2015-09-02 15:46:31 +02:00
redmatrix
9328edfdcd obscure mail subject in conversation structure 2015-09-01 22:59:06 -07:00
redmatrix
d105f324af import apps 2015-09-01 22:27:09 -07:00
redmatrix
23213a91ed Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-01 22:27:00 -07:00
redmatrix
184c544a24 export apps 2015-09-01 22:26:21 -07:00
redmatrix
6cc60ba477 initial work on obj import, rename import_profile_photo to import_xchan_photo to more accurately state its purpose. 2015-09-01 22:03:10 -07:00
redmatrix
c5578d7964 match the redmatrix output format for objects (which is the hubzilla table format) 2015-09-01 21:08:02 -07:00
redmatrix
95cf1aafa0 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-01 21:04:57 -07:00
redmatrix
f72a3113f5 add the baseurl so we can easily relocate objects 2015-09-01 21:03:55 -07:00
redmatrix
3c29b46c42 use different obj export output format for hubzilla compatibility 2015-09-01 20:57:53 -07:00
redmatrix
f2397c942c Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-09-01 20:21:43 -07:00
redmatrix
eb2df761d5 cert updates 2015-09-01 20:20:45 -07:00
redmatrix
1ce8ce896b provide consistent ui for things 2015-09-01 19:27:41 -07:00
redmatrix
85daf26eb1 more work on objs/things 2015-09-01 19:01:19 -07:00
redmatrix
286be43963 issue #31 2015-09-01 17:16:10 -07:00
redmatrix
d951534d8f Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-09-01 17:09:59 -07:00
redmatrix
515f3bf111 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
	install/update.php
2015-09-01 17:08:59 -07:00
redmatrix
3852b5ce7f separate objs/things from taxonomy 2015-09-01 17:06:58 -07:00
redmatrix
d753ae4cf1 dummy update placeholder 2015-09-01 16:25:10 -07:00
Haakon Meland Eriksen
2ce1e3678a Merge remote-tracking branch 'upstream/master' 2015-09-01 20:46:29 +02:00
Haakon Meland Eriksen
365d690d7d Fix filename 2015-09-01 20:46:14 +02:00
jeroenpraat
e75616517d Updated all 300px default profile photos to 300px. Most using the SVG source, some enlarged using the Gimp. 2015-09-01 20:40:36 +02:00
Haakon Meland Eriksen
5cb2fa5981 Fixed deploy script 2015-09-01 19:25:41 +02:00
Haakon Meland Eriksen
e854562803 Merge remote-tracking branch 'upstream/master' 2015-09-01 18:45:06 +02:00
Haakon Meland Eriksen
fad9594b31 Added openshift-hubzilla-deploy to .openshift/action_hooks/deploy 2015-09-01 18:44:37 +02:00
redmatrix
1447499776 don't log the mundane - especially at normal levels. 2015-08-31 22:41:48 -07:00
Haakon Meland Eriksen
4fe3b5c6a6 Merge remote-tracking branch 'upstream/master' 2015-09-01 07:21:17 +02:00
redmatrix
417da13353 this is a bit harder than anticipated. 2015-08-31 21:12:37 -07:00
redmatrix
69dc1b03c3 typo in sql 2015-08-31 21:01:47 -07:00
redmatrix
d7089ab471 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
	install/update.php
	util/messages.po
	view/nl/messages.po
2015-08-31 21:00:28 -07:00
redmatrix
039f56f390 mostly doc tweaks, some import/export work 2015-08-31 20:58:05 -07:00
redmatrix
d7cae1ce2a Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-31 20:56:22 -07:00
redmatrix
d7cf7316be change the likes db structure to make it more easily importable/exportable 2015-08-31 20:55:25 -07:00
redmatrix
b4cbb3aeb1 update history 2015-08-31 17:45:01 -07:00
redmatrix
de3012ccf1 documentation re-org 2015-08-31 17:08:09 -07:00
redmatrix
53a0920f20 Merge https://github.com/redmatrix/hubzilla into pending_merge 2015-08-31 16:27:17 -07:00
redmatrix
5fe9021375 rename 'register_account' hook to 'create_identity'. 2015-08-31 16:26:29 -07:00
jeroenpraat
fd28550ad2 Changed favicon to new one (based on new Hubzilla arrow). Please revert when it's not okay. Also added a new optional default profile photo, in the same style. 2015-08-31 20:26:26 +02:00
redmatrix
c0cb21a07c unclosed link tags 2015-08-30 23:01:39 -07:00
redmatrix
c865f17dc0 schedule a doco update once weekly 2015-08-30 22:46:00 -07:00
redmatrix
e23f86faa9 more work on doco search 2015-08-30 22:39:33 -07:00
redmatrix
7ba1217a13 improvements to documentation search 2015-08-30 20:47:15 -07:00
jeroenpraat
60ac0cef5c Removed redmatrix.nl as a fallback server (directory mode to normal) + update strings ES 2015-08-29 17:21:20 +02:00
redmatrix
a42b236587 more AccessList stuff - this time it's mod-item, which is a biggie 2015-08-28 14:21:49 -07:00
jeroenpraat
8db5d3ba5c Update es and nl strings 2015-08-28 14:13:13 +02:00
redmatrix
d05fd9632e now we get to the heavy lifting with AccessList stuff 2015-08-27 23:04:17 -07:00
redmatrix
ca0bc2bb7b more work on AccessList integration 2015-08-27 22:20:30 -07:00
redmatrix
3fbb955cf2 start conversion to AccessList object 2015-08-27 21:22:59 -07:00
redmatrix
04b4897dd8 First attempt to turn access control into an object class. The access control manipulation is getting too complex and this will help keep it manageable and reduce a lot of code duplication. 2015-08-27 18:55:30 -07:00
redmatrix
c2bc6a04ab Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-27 18:55:02 -07:00
redmatrix
96c61fc5f2 fallback directory server list update 2015-08-27 15:53:52 -07:00
Haakon Meland Eriksen
1b82fb7349 Merge remote-tracking branch 'upstream/master' 2015-08-27 17:57:59 +02:00
redmatrix
7b28c42693 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-26 23:00:59 -07:00
redmatrix
58ffa31e91 redphotos updates 2015-08-26 23:00:33 -07:00
redmatrix
0b5bad4aa7 use extended export format for items in api photo_detail 2015-08-26 22:58:53 -07:00
redmatrix
2bce61d18b Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-26 22:14:19 -07:00
redmatrix
9cebd24987 change attach_store to allow a predefined item to accompany a photo 2015-08-26 22:13:20 -07:00
redmatrix
0d2c90cc2e add item info to photo detail in api 2015-08-26 22:11:50 -07:00
redmatrix
54c88dfae9 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/diaspora.php
2015-08-26 20:22:50 -07:00
redmatrix
d1c23477df support likes on comments with diaspora owner by sending as activity 2015-08-26 20:20:41 -07:00
redmatrix
8fb1356623 required for future work 2015-08-26 17:49:57 -07:00
redmatrix
d2fec56456 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	mod/import.php
2015-08-26 16:00:13 -07:00
redmatrix
bd2d99aced import fixes 2015-08-26 15:56:32 -07:00
redmatrix
71308fe8c1 syntax error in last checkin 2015-08-26 13:50:51 -07:00
redmatrix
da649e397e import fixes 2015-08-26 13:49:07 -07:00
redmatrix
1dbcfaa2c6 add repository type as one that is able to self-identify as a public forum 2015-08-25 21:54:16 -07:00
redmatrix
2d471e39dc this is weird 2015-08-25 19:23:21 -07:00
redmatrix
e5dec8671e make diaspora person guids for hubzilla folks globally unique. That's what a globally unique ID is. This forever kills the prospect of making nomadic identity work flawlessly on Diaspora. But since all your identities have the same guid, this allows your different identities to communicate with Diaspora; which would otherwise fail to connect to your other instances because of the guid collision. 2015-08-25 17:21:42 -07:00
redmatrix
5fa2aa6d48 lots of stuff that was needed for successful photo import from red 2015-08-24 20:58:12 -07:00
redmatrix
0edac8810b don't try to optimise the session table. Just let it fragment and let the DB worry about it. 2015-08-24 16:05:51 -07:00
redmatrix
b085a3243c Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	mod/connections.php
	mod/connedit.php
2015-08-24 05:10:31 -07:00
redmatrix
d256e8e9f2 edited event showing bad signature and null_date for edit timestamp 2015-08-24 01:46:54 -07:00
redmatrix
250d286f1d remove orphan mod_connections editing code (now done in mod/connedit) 2015-08-24 01:28:13 -07:00
redmatrix
eac9c8a7e6 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	install/update.php
	util/messages.po
2015-08-23 20:23:55 -07:00
redmatrix
a67213627c provide a comment_policy of "network: diaspora" to handle their special case public-posts-are-commentable-by-anybody permission without breaking any other permissions. 2015-08-23 18:48:33 -07:00
redmatrix
852d19f209 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-23 17:41:23 -07:00
redmatrix
b1f091e4d7 issues with abook sync between hubzilla and red 2015-08-23 17:40:47 -07:00
redmatrix
8cd583fd8c sync abook flags in memory after altering them 2015-08-23 17:36:00 -07:00
redmatrix
bf190be5b4 issues encountered with hubzilla DB changes, zot_refresh and item_drop and hub sync 2015-08-23 13:27:34 -07:00
Haakon Meland Eriksen
092e7378cd Merge remote-tracking branch 'upstream/master' 2015-08-23 15:54:46 +02:00
redmatrix
2a59392ba8 change name of module 2015-08-22 19:31:39 -07:00
redmatrix
feabaedd83 increase width of tasklist input element 2015-08-22 15:46:40 -07:00
redmatrix
c9b8f404e0 restrict event notification to events and birthdays (exclude tasks) 2015-08-22 14:35:17 -07:00
redmatrix
39df2a475e add load_pdl hook for plugins 2015-08-22 14:28:33 -07:00
jeroenpraat
957abf1c1b Final (temporary I suppose) Spanish string update 2015-08-22 16:29:34 +02:00
redmatrix
7c34911b1c add task widget 2015-08-21 02:30:17 -07:00
redmatrix
7688bf3f21 support ical priority 2015-08-20 22:24:33 -07:00
redmatrix
242cb047d4 limit the height of tasklist 2015-08-20 22:15:09 -07:00
redmatrix
43fbbfe0df Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-20 22:14:51 -07:00
redmatrix
72bdca009c Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-20 22:14:03 -07:00
redmatrix
fef93af0a6 missed this one - it's required 2015-08-20 22:13:25 -07:00
redmatrix
3e7a76cc64 put tasklist into events page comanche layout 2015-08-20 21:02:42 -07:00
redmatrix
49c4aa1a54 cleanup of task widget - make jquery workflow a bit smoother 2015-08-20 20:40:42 -07:00
redmatrix
afbbc9cd72 more work on tasks 2015-08-20 18:43:01 -07:00
redmatrix
05bec13bdc We don't need photos to also include attachments. It's interesting, but not all that useful. 2015-08-20 16:55:03 -07:00
redmatrix
8fc321ca62 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-20 16:52:56 -07:00
redmatrix
6590ca02de some event related fixes and some base work for implementing native tasks (to-do lists); which should already be importable and exportable. 2015-08-20 16:49:13 -07:00
jeroenpraat
20fc4ee021 Another Spanish strings update 2015-08-20 20:57:08 +02:00
redmatrix
a322254f2a do ical export before checking logged in channel 2015-08-20 04:51:03 -07:00
redmatrix
fd7b668a16 add carriage return to newlines for exported events (rfc2445:4.1) 2015-08-20 02:07:51 -07:00
redmatrix
5786fd2221 extra encoding on mail titles 2015-08-20 01:12:35 -07:00
redmatrix
419b4ecfde use consistent terminology 2015-08-19 21:17:24 -07:00
redmatrix
69920fb717 fix photo location 2015-08-19 19:17:17 -07:00
redmatrix
863a979754 check perms on ical attachments 2015-08-19 17:16:19 -07:00
redmatrix
8d66fbccfa Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/api.php
2015-08-19 16:54:12 -07:00
redmatrix
a4caaefd32 event integration improvements 2015-08-19 16:50:32 -07:00
Haakon Meland Eriksen
e50e687191 Merge remote-tracking branch 'upstream/master' 2015-08-19 19:40:18 +02:00
redmatrix
c96f121d41 add photo_detail api call 2015-08-18 22:14:16 -07:00
redmatrix
72b7b19937 update to_do 2015-08-18 20:00:11 -07:00
redmatrix
4e3d295c90 import and export tasks (calendar todo items) 2015-08-18 19:06:50 -07:00
redmatrix
3b1554db2e Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-18 17:15:53 -07:00
redmatrix
37d07a7d2a add event_sequence for vtodo's 2015-08-18 17:10:40 -07:00
redmatrix
75fbf21e6b add month to export filename when using month 2015-08-17 22:27:41 -07:00
redmatrix
27b61b1456 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-17 22:25:47 -07:00
redmatrix
9f4f967ead off by one 2015-08-17 22:25:17 -07:00
redmatrix
9763c46b7e Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/identity.php
2015-08-17 22:23:23 -07:00
redmatrix
f682325924 provide ability to export by month as well as by year 2015-08-17 22:20:10 -07:00
redmatrix
abe362bdd4 issues encountered whilst testing import_items module using yearly dump files 2015-08-17 21:56:55 -07:00
redmatrix
ea331b043c Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-17 21:41:14 -07:00
redmatrix
1a4a921528 provide module for importing yearly content dumps 2015-08-17 21:40:40 -07:00
redmatrix
1982fc807f add item_id to yearly dump files 2015-08-17 21:38:43 -07:00
redmatrix
30fd17c58d Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	view/nl/messages.po
2015-08-17 16:14:15 -07:00
redmatrix
4ebee195cc Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-17 16:12:35 -07:00
redmatrix
98eeff7538 commit 631eb4b broke the checkboxes in admin/site, so separate normal checkboxes from bulk edit checkboxes in the css 2015-08-17 16:11:10 -07:00
jeroenpraat
f2fdc91ad5 Replaced Dutch po file by Spanish po file by accident. Had no visible impact. 2015-08-17 22:27:33 +02:00
jeroenpraat
d88c25c982 Final Spanish strings for now 2015-08-17 22:21:55 +02:00
jeroenpraat
f70fd95361 Fixed Spanish strings 2015-08-17 13:38:43 +02:00
redmatrix
be3a272a80 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-16 19:54:38 -07:00
redmatrix
631eb4b2c2 issue #386 - account and channel bulk edit checkboxes not visible and therefore not useable. Also change wording to remove the offensive 'user' designation. 2015-08-16 19:52:25 -07:00
redmatrix
6a1d1867f0 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-16 19:13:29 -07:00
redmatrix
b3b566c907 add DB support for tasks, todo items and repeating events 2015-08-16 17:17:34 -07:00
Andrew Manning
dd5023e494 Updating logo icon in Readme file and change markup heading for universality. 2015-08-15 12:49:56 -04:00
redmatrix
18bc12c21c Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/zot.php
	util/messages.po
2015-08-14 22:24:15 -07:00
redmatrix
1d4dc7e27c Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-14 22:20:44 -07:00
redmatrix
0d84c77c6c set email verified if lost password workflow is completed to avoid the situation where they can reset the password but still not be able to login because the original email verification was lost. 2015-08-14 22:19:15 -07:00
redmatrix
400eb748eb Merge pull request #385 from solstag/commentperm
Actually work out comment perms in zot.php (badly attempted at 36b5f6ac)
2015-08-15 10:08:26 +10:00
Alexandre Hannud Abdo
73b30de9cb Properly fix which perms get checked for comments, Mike's solution 2015-08-14 12:21:05 -03:00
jeroenpraat
7a8d0a03f6 update spanish 2015-08-14 15:57:05 +02:00
redmatrix
d140620008 add item validation function 2015-08-13 19:35:57 -07:00
redmatrix
50a1e0c618 attach_store needs a lot of documenting to understand what's going on and how it got to be this way. Here's the bird's eye view. 2015-08-13 17:11:59 -07:00
redmatrix
ef73880459 reverting 36b5f6ac 2015-08-12 22:48:08 -07:00
redmatrix
98f3242e73 Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-12 22:38:08 -07:00
redmatrix
0b7365e2db revert 36b5f6ac 2015-08-12 22:37:24 -07:00
redmatrix
f88dc84091 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	view/es/htconfig.tpl
	view/es/update_fail_eml.tpl
2015-08-12 20:36:32 -07:00
jeroenpraat
3099562a21 Some corrections of Spanish strings. 2015-08-12 20:52:46 +02:00
jeroenpraat
588d22974c And Catalan! 2015-08-12 15:16:56 +02:00
jeroenpraat
4c2bbe3c41 Thanks to Manuel. Updated Spanish to 100 procent. 2015-08-12 15:11:04 +02:00
redmatrix
b634c08d0e resolve conflict 2015-08-11 22:41:27 -07:00
redmatrix
2d9d4dfeb3 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	doc/history.md
	mod/import.php
2015-08-11 22:35:36 -07:00
redmatrix
d882b3274b doc fixes 2015-08-11 22:32:53 -07:00
redmatrix
1aa48ddfaa Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-11 22:32:33 -07:00
redmatrix
ad02d5589d Merge pull request #383 from solstag/commentpermgood
Require comment perms only for own posts, allow senders to deliver co…
2015-08-12 15:31:36 +10:00
redmatrix
0e8991fec2 more consistent output on forum widget 2015-08-11 22:23:20 -07:00
redmatrix
b651604e8b remove the forum limit 2015-08-11 20:58:03 -07:00
redmatrix
1932e72603 arghh 2015-08-11 20:25:52 -07:00
redmatrix
be4eb4eeb8 typo 2015-08-11 20:25:02 -07:00
redmatrix
89fa36ce2a wrong cid 2015-08-11 20:24:06 -07:00
redmatrix
80df97e734 don't show '0' results, like notifications 2015-08-11 20:18:34 -07:00
redmatrix
8dd7fab38d order by name 2015-08-11 20:16:17 -07:00
redmatrix
400d5790f3 make sure we only get forums attached to the channel 2015-08-11 19:58:31 -07:00
redmatrix
c8e83d6edc set font-weight back to normal on forums widget 2015-08-11 19:27:22 -07:00
redmatrix
c8b8c6cb14 Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts:
	include/items.php
	util/messages.po
	view/nl/messages.po
	view/nl/strings.php
2015-08-11 19:24:31 -07:00
redmatrix
44dcbeaaa4 forum widget 2015-08-11 19:22:14 -07:00
redmatrix
0c23843b61 untested forum widget 2015-08-11 17:39:29 -07:00
redmatrix
0a34b96e11 bring back colour to abook_self in acl 2015-08-11 01:16:04 -07:00
redmatrix
f30d2b489a Merge https://github.com/redmatrix/redmatrix into pending_merge 2015-08-10 16:17:06 -07:00
redmatrix
81c740178d convert abook_flags from hubzilla during cloning 2015-08-10 16:16:26 -07:00
Alexandre Hannud Abdo
36b5f6acfe Require comment perms only for own posts, allow senders to deliver comments using stream perms. 2015-08-10 18:20:18 -03:00
jeroenpraat
eae88b0815 Update Dutch strings 2015-08-09 15:56:02 +02:00
redmatrix
58c9f516b3 private mail isues 2015-08-09 01:18:36 -07:00
redmatrix
8ce4814835 convert diaspora_signature to json for storage 2015-08-08 15:19:50 -07:00
redmatrix
2656aeaf9c ensure diaspora_signature is converted to json before we store it. 2015-08-08 15:18:34 -07:00
redmatrix
bf3ea2cd47 update 2015-08-07 14:20:18 -07:00
Haakon Meland Eriksen
07cd0c870f Merge remote-tracking branch 'upstream/master' 2015-08-06 23:57:28 +02:00
Haakon Meland Eriksen
2b1e672316 Hubzilla addons added 2015-08-03 22:29:22 +02:00
Haakon Meland Eriksen
5adb41a0ed Merge remote-tracking branch 'upstream/master' 2015-08-03 21:53:01 +02:00
Haakon Meland Eriksen
98fa996b3f Merge remote-tracking branch 'upstream/master' 2015-07-29 22:04:07 +02:00
Haakon Meland Eriksen
07e890a79a Merge remote-tracking branch 'upstream/master' 2015-07-08 14:38:00 +02:00
Haakon Meland Eriksen
3f9e39a9e3 Merge remote-tracking branch 'upstream/master' 2015-07-07 19:24:36 +02:00
Haakon Meland Eriksen
b51bcba263 Added cron script to exexute poller every 5 minutes 2015-07-05 23:38:10 +02:00
Haakon Meland Eriksen
17d004d52b Merge remote-tracking branch 'openshift/master' 2015-07-05 22:43:43 +02:00
Template builder
d94e61a7b6 Creating template 2015-07-05 16:27:08 -04:00
1026 changed files with 238623 additions and 60560 deletions

2
.gitignore vendored
View File

@@ -27,6 +27,8 @@ custom/
apps/
# default startpage
home.html
# page header plugin
pageheader.html
# Ignore site TOS
doc/SiteTOS.md
# themes except for redbasic

155
.homeinstall/README.md Normal file
View File

@@ -0,0 +1,155 @@
# Hubzilla at Home next to your Router
Run hubzilla-setup.sh for an unattended installation of hubzilla.
The script is known to work with Debian stable (Jessie).
# Step-by-Step Overwiew
## Preconditions
Hardware
+ Internet connection and router at home
+ Mini-pc connected to your router
+ USB drive for backups
Software
+ Fresh installation of Debian on your mini-pc
+ Router with open ports 80 and 443 for your Debian
## The basic steps
+ Register your own domain (for example at selfHOST) or a free subdomain (for example at freeDNS)
+ Clone hubzilla to /var/www/html
+ Copy hubzilla-config.txt and hubzilla-setup.sh to your Debian (future hub)
+ Edit hubzilla-config.txt. Enter your values there: db pass, domain, values for dyn DNS
+ Run hubzilla-setup.sh as root ... wait, wait, wait until the script is finised
+ Open your domain with a browser and step throught the initial configuration of hubzilla.
# Step-by-Step in Detail
## Preparations Hardware
### Mini-PC
### Recommended: USB Drive for Backups
The installation will create a daily backup.
If the backup process does not find an external device than the backup goes to
the internal disk.
The USB drive must be compatible with an encrpyted filesystem LUKS + ext4.
## Preparations Software
### Install Debian Linux on the Mini-PC
Download the stable Debian at https://www.debian.org/
Create bootable USB drive with Debian on it. You could use the programm
unetbootin, https://en.wikipedia.org/wiki/UNetbootin
Switch of your mini pc, plug in your USB drive and start the mini pc from the
stick. Install Debian. Follow the instructions of the installation.
### Configure your Router
Open the ports 80 and 443 on your router for your Debian
## Preparations Dynamic IP Address
Your Hubzilla must be reachable by a domain that you can type in your browser
cooldomain.org
You can use subdomains as well
my.cooldomain.org
There are two way to get a domain
- buy a domain (recommended) or
- register a free subdomain
### Method 1: Get yourself an own Domain (recommended)
### Method 2 Register a (free) Subdomain
Register a free subdomain for example at
- freeDNS
- selfHOST
WATCH THIS: A free subdomain is not the prefered way to get a domain name. Why?
Let's encrpyt issues a limited number of certificates each
day. Possibly other users of this domain will try to issue a certificate
at the same day as you do. So make sure you choose a domain with as less subdomains as
possible.
## Install Hubzilla on your Debian
Login to your debian
(Provided your username is "you" and the name of the mini pc is "debian". You
could take the IP address instead of "debian")
ssh -X you@debian
Change to root user
su -l
Install git
apt-get install git
Make the directory for apache and change diretory to it
mkdir /var/www
cd /var/www/
Clone hubzilla from git ("git pull" will update it later)
git clone https://github.com/redmatrix/hubzilla html
Change to the install script
cd html/.homeinstall/
Change the file "hubzilla-config.txt". Enter your values there.
nano hubzilla-config.txt
Run the script
./hubzilla-setup.sh
Wait... The script should not finish with an error message.
In a webbrowser open your domain.
Expected: A test page of hubzilla is shown. All checks there shoulg be
successfull. Go on...
Expected: A page for the Hubzilla server configuration shows up.
Leave db server name "127.0.0.1" and port "0" untouched.
Enter
- DB user name = hubzilla
- DB pass word = This is the password you entered in "hubzilla-config.txt"
- DB name = hubzilla
Leave db type "MySQL" untouched.
Follow the instructions in the next pages.
# The Script explained
This chapter shows you
- What the script does exactly
- Explanations on technical details. May be this will encourage you to play with bash scripts?

View File

@@ -0,0 +1,177 @@
###############################################
### MANDATORY - database password #############
#
# Please give your database password
# Example: db_pass=pass_word_with_no_blanks_in_it
# Example: db_pass="this password has blanks in it"
db_pass=
###############################################
### MANDATORY - let's encrypt #################
#
# Hubilla requires encrypted communication via secure HTTP (HTTPS).
# This script automates installation of an SSL certificate from
# Let's Encrypt (https://letsencrypt.org)
#
# Please give the domain name of your hub
#
# Example: my.cooldomain.org
# Example: cooldomain.org
#
# Email is optional
#
#
le_domain=
le_email=
###############################################
### OPTIONAL - selfHOST - dynamic IP address ##
#
# 1. Register a domain at selfhost.de
# - choose offer "DOMAIN dynamisch" 1,50€/mon at 08.01.2016
# 2. Get your configuration for dynamic IP update
# - Log in at selfhost.de
# - go to "DynDNS Accounte"
# - klick "Details" of your (freshly) registered domain
# - You will find the configuration there
# - Benutzername (user name) > use this for "selfhost_user="
# - Passwort (pass word) > use this for "selfhost_pass="
#
#
selfhost_user=
selfhost_pass=
###############################################
### OPTIONAL - FreeDNS - dynamic IP address ###
#
# Please give the alpha-numeric-key of freedns
#
# Get a free subdomain from freedns and use it for your dynamic ip address
# Documentation under http://www.techjawab.com/2013/06/setup-dynamic-dns-dyndns-for-free-on.html
#
# - Register for a Free domain at http://freedns.afraid.org/signup/
# - WATCH THIS: Make sure you choose a domain with as less subdomains as
# possible. Why? Let's encrpyt issues a limited count of certificates each
# day. Possible other users of this domain will try to issue a certificate
# at the same day.
# - Logon to FreeDNS (where you just registered)
# - Goto http://freedns.afraid.org/dynamic/
# - Right click on "Direct Link" and copy the URL and paste it somewhere.
# - You should notice a large and unique alpha-numeric key in the URL
#
# http://freedns.afraid.org/dynamic/update.php?alpha-numeric-key
#
# Provided your url from freedns is
#
# http://freedns.afraid.org/dynamic/update.php?U1Z6aGt2R0NzMFNPNWRjbWxxZGpsd093OjE1Mzg5NDE5
#
# Then you have to provide
#
# freedns_key=U1Z6aGt2R0NzMFNPNWRjbWxxZGpsd093OjE1Mzg5NDE5
#
#
#freedns_key=
###############################################
### OPTIONAL - Backup to external device ######
#
# The script can use an external device for the daily backup.
# The file system of the device (USB stick for example) must be compatible
# with encrypted LUKS + ext4
#
# You should test to mount the device befor you run the script
# (hubzilla-setup.sh).
# How to find your (pluged-in) devices?
#
# fdisk -l
#
# Provided your device was listed as is /dev/sdb1. You could check with:
#
# blkid | grep /dev/sdb1
#
# Try to decrypt
# (You might install cryptsetup befor using apt-get install.
#
# apt-get install cryptsetup
# cryptsetup luksOpen /dev/sdb1 cryptobackup
#
# Try to mount
# You might create the directory /media/hubzilla_backup it it does not exist
# using mkdir.
#
# mkdir /media/hubzilla_backup
# mount /dev/mapper/cryptobackup /media/hubzilla_backup
#
# Unmounting device goes like this
#
# umount /media/hubzilla_backup
# cryptsetup luksClose cryptobackup
#
# To check if still mounted
#
# lsof /media/hubzilla_backup
#
# If you leave the following parameters
# - "backup_device_name" and
# - "backup_device_pass"
# empty the script will create daily backups on the internal disk (which could
# save you as well).
#
# Example: backup_device_name=/dev/sdc1
#
backup_device_name=
backup_device_pass=
###############################################
### OPTIONAL - Owncloud - deprecated ##########
#
# To install owncloud: owncloud=y
# Leave empty if you don't want to install owncloud
#
#owncloud=
###############################################
### OPTIONAL - do not mess with things below ##
# (...if you are not certain)
#
# Usually you are done here
# Everything below is OPTIONAL
#
###############################################
#
# Database for hubzilla
hubzilla_db_name=hubzilla
hubzilla_db_user=hubzilla
hubzilla_db_pass=$db_pass
#
#
# Password for package mysql-server
# Example: mysqlpass=aberhallo
# Example: mysqlpass="aber hallo has blanks in it"
#
mysqlpass=$db_pass
# Password for package phpmyadmin
# Example: phpmyadminpass=aberhallo
# Example: phpmyadminpass="aber hallo has blanks in it"
phpmyadminpass=$db_pass
# TODO Prepare hubzilla for programmers
# - install eclipse and plugins
# - install xdebug to debug the php with eclipse
# - weaken permissions on /var/www/html
# - manual steps after this script
# * in eclipse: install plugins for php git hub
# * in eclipse: configure firefox (chrome,...) as browser to run with the php debuger
# * in eclipse: switch php debugger from zend to xdebug
# * in eclipse: add local hubzilla github repository
#
# Which user will use eclipse?
# Leave this empty if you do not want to prepare hubzilla for debugging
#
#developer_name=

865
.homeinstall/hubzilla-setup.sh Executable file
View File

@@ -0,0 +1,865 @@
#!/bin/bash
#
# How to use
# ----------
#
# This file automates the installation of hubzilla under Debian Linux
#
# 1) Copy the file "hubzilla-config.txt.template" to "hubzilla-config.txt"
# Follow the instuctions there
#
# 2) Switch to user "root" by typing "su -"
#
# 3) Run with "./hubzilla-setup.sh"
# If this fails check if you can execute the script.
# - To make it executable type "chmod +x hubzilla-setup.sh"
# - or run "bash hubzilla-setup.sh"
#
#
# What does this script do basically?
# -----------------------------------
#
# This file automates the installation of hubzilla under Debian Linux
# - install
# * apache webserer,
# * php,
# * mysql - the database for hubzilla,
# * phpmyadmin,
# * git to download and update hubzilla itself
# - download hubzilla core and addons
# - configure cron
# * "poller.php" for regular background prozesses of hubzilla
# * to_do "apt-get update" and "apt-get dist-upgrade" to keep linux
# up-to-date
# * to_do backup hubzillas database and files (rsnapshot)
# - configure dynamic ip with cron
# - to_do letsencrypt
# - to_do redirection to https
#
#
# Discussion
# ----------
#
# Security - password is the same for mysql-server, phpmyadmin and hubzilla db
# - The script runs into installation errors for phpmyadmin if it uses
# different passwords. For the sake of simplicity one singel password.
#
# Security - suhosin for PHP
# - The script does not install suhosin.
# - Is the security package suhosin usefull or not usefull?
#
# Hubzilla - email verification
# - The script switches off email verification off in all htconfig.tpl.
# Example: /var/www/html/view/en/htconfig.tpl
# - Is this a silly idea or not?
#
#
# Remove Hubzilla (for a fresh start using the script)
# ----------------------------------------------------
#
# You could use /var/www/hubzilla-remove.sh
# that is created by hubzilla-setup.sh.
#
# The script will remove (almost everything) what was installed by the script.
# After the removal you could run the script again to have a fresh install
# of all applications including hubzilla and its database.
#
# How to restore from backup
# --------------------------
#
# Daily backup
# - - - - - -
#
# The installation
# - writes a script /var/www/hubzilla-daily.sh
# - creates a daily cron that runs the hubzilla-daily.sh
#
# hubzilla-daily.sh makes a (daily) backup of all relevant files
# - /var/lib/mysql/ > hubzilla database
# - /var/www/html/ > hubzilla from github
# - /var/www/letsencrypt/ > certificates
#
# hubzilla-daily.sh writes the backup
# - either to an external disk compatible to LUKS+ext4 (see hubzilla-config.txt)
# - or to /var/cache/rsnapshot in case the external disk is not plugged in
#
# Restore backup
# - - - - - - -
#
# This was not tested yet.
# Bacically you can copy the files from the backup to the server.
#
# Credits
# -------
#
# The script is based on Thomas Willinghams script "debian-setup.sh"
# which he used to install the red#matrix.
#
# The script uses another script from https://github.com/lukas2511/letsencrypt.sh
#
# The documentation for bash is here
# https://www.gnu.org/software/bash/manual/bash.html
#
function check_sanity {
# Do some sanity checking.
print_info "Sanity check..."
if [ $(/usr/bin/id -u) != "0" ]
then
die 'Must be run by root user'
fi
if [ -f /etc/lsb-release ]
then
die "Distribution is not supported"
fi
if [ ! -f /etc/debian_version ]
then
die "Ubuntu is not supported"
fi
}
function check_config {
print_info "config check..."
# Check for required parameters
if [ -z "$db_pass" ]
then
die "db_pass not set in $configfile"
fi
if [ -z "$le_domain" ]
then
die "le_domain not set in $configfile"
fi
# backup is important and should be checked
if [ -n "$backup_device_name" ]
then
device_mounted=0
if fdisk -l | grep -i "$backup_device_name.*linux"
then
print_info "ok - filesystem of external device is linux"
if [ -n "$backup_device_pass" ]
then
echo "$backup_device_pass" | cryptsetup luksOpen $backup_device_name cryptobackup
if [ ! -d /media/hubzilla_backup ]
then
mkdir /media/hubzilla_backup
fi
if mount /dev/mapper/cryptobackup /media/hubzilla_backup
then
device_mounted=1
print_info "ok - could encrypt and mount external backup device"
umount /media/hubzilla_backup
else
print_warn "backup to external device will fail because encryption failed"
fi
cryptsetup luksClose cryptobackup
else
if mount $backup_device_name /media/hubzilla_backup
then
device_mounted=1
print_info "ok - could mount external backup device"
umount /media/hubzilla_backup
else
print_warn "backup to external device will fail because mount failed"
fi
fi
else
print_warn "backup to external device will fail because filesystem is either not linux or 'backup_device_name' is not correct in $configfile"
fi
if [ $device_mounted == 0 ]
then
die "backup device not ready"
fi
fi
}
function die {
echo "ERROR: $1" > /dev/null 1>&2
exit 1
}
function update_upgrade {
print_info "updated and upgrade..."
# Run through the apt-get update/upgrade first. This should be done before
# we try to install any package
apt-get -q -y update && apt-get -q -y dist-upgrade
print_info "updated and upgraded linux"
}
function check_install {
if [ -z "`which "$1" 2>/dev/null`" ]
then
# export DEBIAN_FRONTEND=noninteractive ... answers from the package
# configuration database
# - q ... without progress information
# - y ... answer interactive questions with "yes"
# DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -q -y install $2
DEBIAN_FRONTEND=noninteractive apt-get -q -y install $2
print_info "installed $2 installed for $1"
else
print_warn "$2 already installed"
fi
}
function nocheck_install {
# export DEBIAN_FRONTEND=noninteractive ... answers from the package configuration database
# - q ... without progress information
# - y ... answer interactive questions with "yes"
# DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -q -y install $2
# DEBIAN_FRONTEND=noninteractive apt-get --install-suggests -q -y install $1
DEBIAN_FRONTEND=noninteractive apt-get -q -y install $1
print_info "installed $1"
}
function print_info {
echo -n -e '\e[1;34m'
echo -n $1
echo -e '\e[0m'
}
function print_warn {
echo -n -e '\e[1;31m'
echo -n $1
echo -e '\e[0m'
}
function install_apache {
print_info "installing apache..."
nocheck_install "apache2 apache2-utils"
}
function install_curl {
print_info "installing curl..."
nocheck_install "curl"
}
function install_sendmail {
print_info "installing sendmail..."
nocheck_install "sendmail"
}
function install_php {
# openssl and mbstring are included in libapache2-mod-php5
# to_to: php5-suhosin
print_info "installing php..."
nocheck_install "libapache2-mod-php5 php5 php-pear php5-xcache php5-curl php5-mcrypt php5-gd"
php5enmod mcrypt
}
function install_mysql {
# http://www.microhowto.info/howto/perform_an_unattended_installation_of_a_debian_package.html
#
# To determine the required package name, key and type you can perform
# a trial installation then search the configuration database.
#
# debconf-get-selections | grep mysql-server
#
# The command debconf-get-selections is provided by the package
# debconf-utils, which you may need to install.
#
# apt-get install debconf-utils
#
# If you want to supply an answer to a configuration question but do not
# want to be prompted for it then this can be arranged by preseeding the
# DebConf database with the required information.
#
# echo mysql-server-5.5 mysql-server/root_password password xyzzy | debconf-set-selections
# echo mysql-server-5.5 mysql-server/root_password_again password xyzzy | debconf-set-selections
#
print_info "installing mysql..."
if [ -z "$mysqlpass" ]
then
die "mysqlpass not set in $configfile"
fi
echo mysql-server-5.5 mysql-server/root_password password $mysqlpass | debconf-set-selections
echo mysql-server-5.5 mysql-server/root_password_again password $mysqlpass | debconf-set-selections
nocheck_install "php5-mysql mysql-server mysql-client"
php5enmod mcrypt
}
function install_phpmyadmin {
print_info "installing phpmyadmin..."
if [ -z "$phpmyadminpass" ]
then
die "phpmyadminpass not set in $configfile"
fi
echo phpmyadmin phpmyadmin/setup-password password $phpmyadminpass | debconf-set-selections
echo phpmyadmin phpmyadmin/mysql/app-pass password $phpmyadminpass | debconf-set-selections
echo phpmyadmin phpmyadmin/app-password-confirm password $phpmyadminpass | debconf-set-selections
echo phpmyadmin phpmyadmin/mysql/admin-pass password $phpmyadminpass | debconf-set-selections
echo phpmyadmin phpmyadmin/password-confirm password $phpmyadminpass | debconf-set-selections
echo phpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2 | debconf-set-selections
nocheck_install "phpmyadmin"
# It seems to be not neccessary to check rewrite.load because it comes
# with the installation. To be sure you could check this manually by:
#
# nano /etc/apache2/mods-available/rewrite.load
#
# You should find the content:
#
# LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
a2enmod rewrite
if [ ! -f /etc/apache2/apache2.conf ]
then
die "could not find file /etc/apache2/apache2.conf"
fi
sed -i \
"s/AllowOverride None/AllowOverride all/" \
/etc/apache2/apache2.conf
if [ -z "`grep 'Include /etc/phpmyadmin/apache.conf' /etc/apache2/apache2.conf`" ]
then
echo "Include /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf
fi
service apache2 restart
}
function create_hubzilla_db {
print_info "creating hubzilla database..."
if [ -z "$hubzilla_db_name" ]
then
die "hubzilla_db_name not set in $configfile"
fi
if [ -z "$hubzilla_db_user" ]
then
die "hubzilla_db_user not set in $configfile"
fi
if [ -z "$hubzilla_db_pass" ]
then
die "hubzilla_db_pass not set in $configfile"
fi
Q1="CREATE DATABASE IF NOT EXISTS $hubzilla_db_name;"
Q2="GRANT USAGE ON *.* TO $hubzilla_db_user@localhost IDENTIFIED BY '$hubzilla_db_pass';"
Q3="GRANT ALL PRIVILEGES ON $hubzilla_db_name.* to $hubzilla_db_user@localhost identified by '$hubzilla_db_pass';"
Q4="FLUSH PRIVILEGES;"
SQL="${Q1}${Q2}${Q3}${Q4}"
mysql -uroot -p$phpmyadminpass -e "$SQL"
}
function run_freedns {
print_info "run freedns (dynamic IP)..."
if [ -z "$freedns_key" ]
then
print_info "freedns was not started because 'freedns_key' is empty in $configfile"
else
if [ -n "$selfhost_user" ]
then
die "You can not use freeDNS AND selfHOST for dynamic IP updates ('freedns_key' AND 'selfhost_user' set in $configfile)"
fi
wget --no-check-certificate -O - https://freedns.afraid.org/dynamic/update.php?$freedns_key
fi
}
function install_run_selfhost {
print_info "install and start selfhost (dynamic IP)..."
if [ -z "$selfhost_user" ]
then
print_info "selfHOST was not started because 'selfhost_user' is empty in $configfile"
else
if [ -n "$freedns_key" ]
then
die "You can not use freeDNS AND selfHOST for dynamic IP updates ('freedns_key' AND 'selfhost_user' set in $configfile)"
fi
if [ -z "$selfhost_pass" ]
then
die "selfHOST was not started because 'selfhost_pass' is empty in $configfile"
fi
if [ ! -d $selfhostdir ]
then
mkdir $selfhostdir
fi
# the old way
# https://carol.selfhost.de/update?username=123456&password=supersafe
#
# the prefered way
wget --output-document=$selfhostdir/$selfhostscript http://jonaspasche.de/selfhost-updater
echo "router" > $selfhostdir/device
echo "$selfhost_user" > $selfhostdir/user
echo "$selfhost_pass" > $selfhostdir/pass
bash $selfhostdir/$selfhostscript update
fi
}
function ping_domain {
print_info "ping domain $domain..."
# Is the domain resolved? Try to ping 6 times à 10 seconds
COUNTER=0
for i in {1..6}
do
print_info "loop $i for ping -c 1 $domain ..."
if ping -c 4 -W 1 $le_domain
then
print_info "$le_domain resolved"
break
else
if [ $i -gt 5 ]
then
die "Failed to: ping -c 1 $domain not resolved"
fi
fi
sleep 10
done
sleep 5
}
function configure_cron_freedns {
print_info "configure cron for freedns..."
if [ -z "$freedns_key" ]
then
print_info "freedns is not configured because freedns_key is empty in $configfile"
else
# Use cron for dynamich ip update
# - at reboot
# - every 30 minutes
if [ -z "`grep 'freedns.afraid.org' /etc/crontab`" ]
then
echo "@reboot root https://freedns.afraid.org/dynamic/update.php?$freedns_key > /dev/null 2>&1" >> /etc/crontab
echo "*/30 * * * * root wget --no-check-certificate -O - https://freedns.afraid.org/dynamic/update.php?$freedns_key > /dev/null 2>&1" >> /etc/crontab
else
print_info "cron for freedns was configured already"
fi
fi
}
function configure_cron_selfhost {
print_info "configure cron for selfhost..."
if [ -z "$selfhost_user" ]
then
print_info "freedns is not configured because freedns_key is empty in $configfile"
else
# Use cron for dynamich ip update
# - at reboot
# - every 30 minutes
if [ -z "`grep 'selfhost-updater.sh' /etc/crontab`" ]
then
echo "@reboot root bash /etc/selfhost/selfhost-updater.sh update > /dev/null 2>&1" >> /etc/crontab
echo "*/5 * * * * root /bin/bash /etc/selfhost/selfhost-updater.sh update > /dev/null 2>&1" >> /etc/crontab
else
print_info "cron for selfhost was configured already"
fi
fi
}
function install_git {
print_info "installing git..."
nocheck_install "git"
}
function install_letsencrypt {
print_info "installing let's encrypt ..."
# check if user gave domain
if [ -z "$le_domain" ]
then
die "Failed to install let's encrypt: 'le_domain' is empty in $configfile"
fi
# configure apache
apache_le_conf=/etc/apache2/sites-available/le-default.conf
if [ -f $apache_le_conf ]
then
print_info "$apache_le_conf exist already"
else
cat > $apache_le_conf <<END
# letsencrypt default Apache configuration
Alias /.well-known/acme-challenge /var/www/letsencrypt
<Directory /var/www/letsencrypt>
Options FollowSymLinks
Allow from all
</Directory>
END
a2ensite le-default.conf
service apache2 restart
fi
# download the shell script
if [ -d $le_dir ]
then
print_info "letsenrypt exists already (nothing downloaded > no certificate created and registered)"
return 0
fi
git clone https://github.com/lukas2511/letsencrypt.sh $le_dir
cd $le_dir
# create config file for letsencrypt.sh
echo "WELLKNOWN=$le_dir" > $le_dir/config.sh
if [ -n "$le_email" ]
then
echo "CONTACT_EMAIL=$le_email" >> $le_dir/config.sh
fi
# create domain file for letsencrypt.sh
# WATCH THIS:
# - It did not work wit "sub.domain.org www.sub.domain.org".
# - So just use "sub.domain.org" only!
echo "$le_domain" > $le_dir/domains.txt
# test apache config for letsencrpyt
url_http=http://$le_domain/.well-known/acme-challenge/domains.txt
wget_output=$(wget -nv --spider --max-redirect 0 $url_http)
if [ $? -ne 0 ]
then
die "Failed to load $url_http"
fi
# run letsencrypt.sh
#
./letsencrypt.sh --cron
}
function configure_apache_for_https {
print_info "configuring apache to use httpS ..."
# letsencrypt.sh
#
# "${BASEDIR}/certs/${domain}/privkey.pem"
# "${BASEDIR}/certs/${domain}/cert.pem"
# "${BASEDIR}/certs/${domain}/fullchain.pem"
#
SSLCertificateFile=${le_dir}/certs/${le_domain}/cert.pem
SSLCertificateKeyFile=${le_dir}/certs/${le_domain}/privkey.pem
SSLCertificateChainFile=${le_dir}/certs/${le_domain}/fullchain.pem
if [ ! -f $SSLCertificateFile ]
then
print_warn "Failed to configure apache for httpS: Missing certificate file $SSLCertificateFile"
return 0
fi
# make sure that the ssl mode is enabled
print_info "...configuring apache to use httpS - a2enmod ssl ..."
a2enmod ssl
# modify apach' ssl conf file
if grep -i "ServerName" $sslconf
then
print_info "seems that apache was already configered to use httpS with $sslconf"
else
sed -i "s/ServerAdmin.*$/ServerAdmin webmaster@localhost\\n ServerName ${le_domain}/" $sslconf
fi
sed -i s#/etc/ssl/certs/ssl-cert-snakeoil.pem#$SSLCertificateFile# $sslconf
sed -i s#/etc/ssl/private/ssl-cert-snakeoil.key#$SSLCertificateKeyFile# $sslconf
sed -i s#/etc/apache2/ssl.crt/server-ca.crt#$SSLCertificateChainFile# $sslconf
sed -i s/#SSLCertificateChainFile/SSLCertificateChainFile/ $sslconf
# apply changes
a2ensite default-ssl.conf
service apache2 restart
}
function check_https {
print_info "checking httpS > testing ..."
url_https=https://$le_domain
wget_output=$(wget -nv --spider --max-redirect 0 $url_https)
if [ $? -ne 0 ]
then
print_warn "check not ok"
else
print_info "check ok"
fi
}
function install_hubzilla {
print_info "installing hubzilla..."
# rm -R /var/www/html/ # for "stand alone" usage
cd /var/www/
# git clone https://github.com/redmatrix/hubzilla html # for "stand alone" usage
cd html/
git clone https://github.com/redmatrix/hubzilla-addons addon
mkdir -p "store/[data]/smarty3"
chmod -R 777 store
touch .htconfig.php
chmod ou+w .htconfig.php
cd ..
chown -R www-data:www-data html
chown root:www-data /var/www/html/
chown root:www-data /var/www/html/.htaccess
chmod 0644 /var/www/html/.htaccess
# try to switch off email registration
sed -i "s/verify_email.*1/verify_email'] = 0/" /var/www/html/view/*/ht*
if [ -n "`grep -r 'verify_email.*1' /var/www/html/view/`" ]
then
print_warn "Hubzillas registration prozess might have email verification switched on."
fi
print_info "installed hubzilla"
}
function rewrite_to_https {
print_info "configuring apache to redirect http to httpS ..."
htaccessfile=/var/www/html/.htaccess
if grep -i "https" $htaccessfile
then
print_info "...configuring apache to redirect http to httpS was already done in $htaccessfile"
else
sed -i "s#QSA]#QSA]\\n RewriteCond %{SERVER_PORT} !^443$\\n RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]#" $htaccessfile
fi
service apache2 restart
}
function install_owncloud {
if [ -z "$owncloud" ]
then
print_info "Do not install owncloud"
return 0
fi
if [ -f /etc/apt/sources.list.d/owncloud.list ]
then
print_info "owncloud is already installed and is left untouched"
return 0
fi
print_info "installing owncloud..."
# add the repository key to apt
wget -nv https://download.owncloud.org/download/repositories/stable/Debian_8.0/Release.key -O Release.key
apt-key add - < Release.key
# add the repository and install from there
sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /' >> /etc/apt/sources.list.d/owncloud.list"
apt-get update
nocheck_install "owncloud"
chown -R www-data:www-data /var/www/owncloud/
# set strong permissions
ocpath='/var/www/owncloud'
htuser='www-data'
htgroup='www-data'
rootuser='root' # On QNAP this is admin
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
chmod 0644 ${ocpath}/.htaccess
chmod 0644 ${ocpath}/data/.htaccess
}
# This will allways overwrite both config files
# - internal disk
# - external disk (LUKS + ext4)
# of rsnapshot for hubzilla
function install_rsnapshot {
print_info "installing rsnapshot..."
nocheck_install "rsnapshot"
# internal disk
cp -f /etc/rsnapshot.conf $snapshotconfig
sed -i "/hourly/s/retain/#retain/" $snapshotconfig
sed -i "/monthly/s/#retain/retain/" $snapshotconfig
sed -i "s/^cmd_cp/#cmd_cp/" $snapshotconfig
sed -i "s/^backup/#backup/" $snapshotconfig
if [ -z "`grep 'letsencrypt' $snapshotconfig`" ]
then
echo "backup /var/lib/mysql/ localhost/" >> $snapshotconfig
echo "backup /var/www/html/ localhost/" >> $snapshotconfig
echo "backup /var/www/letsencrypt/ localhost/" >> $snapshotconfig
fi
# external disk
if [ -n "$backup_device_name" ] && [ -n "$backup_device_pass" ]
then
cp -f /etc/rsnapshot.conf $snapshotconfig_external_device
sed -i "s#snapshot_root.*#snapshot_root $backup_mount_point#" $snapshotconfig_external_device
sed -i "/hourly/s/retain/#retain/" $snapshotconfig_external_device
sed -i "/monthly/s/#retain/retain/" $snapshotconfig_external_device
sed -i "s/^cmd_cp/#cmd_cp/" $snapshotconfig_external_device
sed -i "s/^backup/#backup/" $snapshotconfig_external_device
if [ -z "`grep 'letsencrypt' $snapshotconfig_external_device`" ]
then
echo "backup /var/lib/mysql/ localhost/" >> $snapshotconfig_external_device
echo "backup /var/www/html/ localhost/" >> $snapshotconfig_external_device
echo "backup /var/www/letsencrypt/ localhost/" >> $snapshotconfig_external_device
fi
else
print_info "No backup configuration (rsnapshot) for external device configured. Reason: backup_device_name and/or backup_device_pass not given in $configfile"
fi
}
function install_cryptosetup {
print_info "installing cryptsetup..."
nocheck_install "cryptsetup"
}
function configure_cron_daily {
print_info "configuring cron..."
# every 10 min for poller.php
if [ -z "`grep 'poller.php' /etc/crontab`" ]
then
echo "*/10 * * * * www-data cd /var/www/html; php include/poller.php >> /dev/null 2>&1" >> /etc/crontab
fi
# Run external script daily at 05:30
# - stop apache and mysql-server
# - backup hubzilla
# - update hubzilla core and addon
# - update and upgrade linux
# - reboot
echo "#!/bin/sh" > /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "echo \" \"" >> /var/www/$hubzilladaily
echo "echo \"+++ \$(date) +++\"" >> /var/www/$hubzilladaily
echo "echo \" \"" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - renew certificat if 30 days old...\"" >> /var/www/$hubzilladaily
echo "bash /var/www/letsencrypt/letsencrypt.sh --cron" >> /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "# stop hubzilla" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - stoping apaache and mysql...\"" >> /var/www/$hubzilladaily
echo "service apache2 stop" >> /var/www/$hubzilladaily
echo "/etc/init.d/mysql stop # to avoid inconsistancies" >> /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "# backup" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - try to mount external device for backup...\"" >> /var/www/$hubzilladaily
echo "backup_device_name=$backup_device_name" >> /var/www/$hubzilladaily
echo "backup_device_pass=$backup_device_pass" >> /var/www/$hubzilladaily
echo "backup_mount_point=$backup_mount_point" >> /var/www/$hubzilladaily
echo "device_mounted=0" >> /var/www/$hubzilladaily
echo "if [ -n \"$backup_device_name\" ]" >> /var/www/$hubzilladaily
echo "then" >> /var/www/$hubzilladaily
echo " if blkid | grep $backup_device_name" >> /var/www/$hubzilladaily
echo " then" >> /var/www/$hubzilladaily
if [ -n "$backup_device_pass" ]
then
echo " echo \"decrypting backup device...\"" >> /var/www/$hubzilladaily
echo " echo "\"$backup_device_pass\"" | cryptsetup luksOpen $backup_device_name cryptobackup" >> /var/www/$hubzilladaily
fi
echo " if [ ! -d $backup_mount_point ]" >> /var/www/$hubzilladaily
echo " then" >> /var/www/$hubzilladaily
echo " mkdir $backup_mount_point" >> /var/www/$hubzilladaily
echo " fi" >> /var/www/$hubzilladaily
echo " echo \"mounting backup device...\"" >> /var/www/$hubzilladaily
if [ -n "$backup_device_pass" ]
then
echo " if mount /dev/mapper/cryptobackup $backup_mount_point" >> /var/www/$hubzilladaily
else
echo " if mount $backup_device_name $backup_mount_point" >> /var/www/$hubzilladaily
fi
echo " then" >> /var/www/$hubzilladaily
echo " device_mounted=1" >> /var/www/$hubzilladaily
echo " echo \"device $backup_device_name is now mounted. Starting backup...\"" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig_external_device daily" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig_external_device weekly" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig_external_device monthly" >> /var/www/$hubzilladaily
echo " echo \"\$(date) - disk sizes...\"" >> /var/www/$hubzilladaily
echo " df -h" >> /var/www/$hubzilladaily
echo " echo \"\$(date) - db size...\"" >> /var/www/$hubzilladaily
echo " du -h $backup_mount_point | grep mysql/hubzilla" >> /var/www/$hubzilladaily
echo " echo \"unmounting backup device...\"" >> /var/www/$hubzilladaily
echo " umount $backup_mount_point" >> /var/www/$hubzilladaily
echo " else" >> /var/www/$hubzilladaily
echo " echo \"failed to mount device $backup_device_name\"" >> /var/www/$hubzilladaily
echo " fi" >> /var/www/$hubzilladaily
if [ -n "$backup_device_pass" ]
then
echo " echo \"closing decrypted backup device...\"" >> /var/www/$hubzilladaily
echo " cryptsetup luksClose cryptobackup" >> /var/www/$hubzilladaily
fi
echo " fi" >> /var/www/$hubzilladaily
echo "fi" >> /var/www/$hubzilladaily
echo "if [ \$device_mounted == 0 ]" >> /var/www/$hubzilladaily
echo "then" >> /var/www/$hubzilladaily
echo " echo \"device could not be mounted $backup_device_name. Using internal disk for backup...\"" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig daily" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig weekly" >> /var/www/$hubzilladaily
echo " rsnapshot -c $snapshotconfig monthly" >> /var/www/$hubzilladaily
echo "fi" >> /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - db size...\"" >> /var/www/$hubzilladaily
echo "du -h /var/cache/rsnapshot/ | grep mysql/hubzilla" >> /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "# update" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - updating letsencrypt.sh...\"" >> /var/www/$hubzilladaily
echo "git -C /var/www/letsencrypt/ pull" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - updating hubhilla core...\"" >> /var/www/$hubzilladaily
echo "git -C /var/www/html/ pull" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - updating hubhilla addons...\"" >> /var/www/$hubzilladaily
echo "git -C /var/www/html/addon/ pull" >> /var/www/$hubzilladaily
echo "chown -R www-data:www-data /var/www/html/ # make all accessable for the webserver" >> /var/www/$hubzilladaily
echo "chown root:www-data /var/www/html/.htaccess" >> /var/www/$hubzilladaily
echo "chmod 0644 /var/www/html/.htaccess # www-data can read but not write it" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - updating linux...\"" >> /var/www/$hubzilladaily
echo "apt-get -q -y update && apt-get -q -y dist-upgrade # update linux and upgrade" >> /var/www/$hubzilladaily
echo "echo \"\$(date) - Backup hubzilla and update linux finished. Rebooting...\"" >> /var/www/$hubzilladaily
echo "#" >> /var/www/$hubzilladaily
echo "reboot" >> /var/www/$hubzilladaily
if [ -z "`grep 'hubzilla-daily.sh' /etc/crontab`" ]
then
echo "30 05 * * * root /bin/bash /var/www/$hubzilladaily >> /var/www/html/hubzilla-daily.log 2>&1" >> /etc/crontab
echo "0 0 1 * * root rm /var/www/html/hubzilla-daily.log" >> /etc/crontab
fi
# This is active after either "reboot" or "/etc/init.d/cron reload"
print_info "configured cron for updates/upgrades"
}
function write_uninstall_script {
print_info "writing uninstall script..."
cat > /var/www/hubzilla-remove.sh <<END
#!/bin/sh
#
# This script removes Hubzilla.
# You might do this for a fresh start using the script.
# The script will remove (almost everything) what was installed by the script,
# all applications including hubzilla and its database.
#
# Backup the certificates of letsencrypt (you never know)
cp -a /var/www/letsencrypt/ ~/backup_le_certificats
#
# Removal
apt-get remove apache2 apache2-utils libapache2-mod-php5 php5 php-pear php5-xcache php5-curl php5-mcrypt php5-gd php5-mysql mysql-server mysql-client phpmyadmin
apt-get purge apache2 apache2-utils libapache2-mod-php5 php5 php-pear php5-xcache php5-curl php5-mcrypt php5-gd php5-mysql mysql-server mysql-client phpmyadmin
apt-get autoremove
apt-get clean
rm /etc/rsnapshot_hubzilla.conf
rm /etc/rsnapshot_hubzilla_external_device.conf
rm -R /etc/apache2/
rm -R /var/lib/mysql/
rm -R /var/www
rm -R /etc/selfhost/
# uncomment the next line if you want to remove the backups
# rm -R /var/cache/rsnapshot
nano /etc/crontab # remove entries there manually
END
chmod -x /var/www/hubzilla-remove.sh
}
########################################################################
# START OF PROGRAM
########################################################################
export PATH=/bin:/usr/bin:/sbin:/usr/sbin
check_sanity
# Read config file edited by user
configfile=hubzilla-config.txt
source $configfile
selfhostdir=/etc/selfhost
selfhostscript=selfhost-updater.sh
hubzilladaily=hubzilla-daily.sh
snapshotconfig=/etc/rsnapshot_hubzilla.conf
snapshotconfig_external_device=/etc/rsnapshot_hubzilla_external_device.conf
backup_mount_point=/media/hubzilla_backup
le_dir=/var/www/letsencrypt
sslconf=/etc/apache2/sites-available/default-ssl.conf
#set -x # activate debugging from here
check_config
update_upgrade
install_curl
install_sendmail
install_apache
install_php
install_mysql
install_phpmyadmin
create_hubzilla_db
run_freedns
install_run_selfhost
ping_domain
configure_cron_freedns
configure_cron_selfhost
install_git
install_letsencrypt
configure_apache_for_https
check_https
install_hubzilla
rewrite_to_https
# install_owncloud # deprecated
install_rsnapshot
configure_cron_daily
install_cryptosetup
write_uninstall_script
#set +x # stop debugging from here

View File

@@ -24,7 +24,11 @@ AddType audio/ogg .oga
# Also place auth information into REMOTE_USER for sites running
# in CGI mode.
RewriteCond %{REQUEST_URI} ^/\.well\-known/.*
RewriteRule ^(.*)$ index.php?q=$1 [E=REMOTE_USER:%{HTTP:Authorization},L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [E=REMOTE_USER:%{HTTP:Authorization},L,QSA]
</IfModule>

94
.openshift/README.md Normal file
View File

@@ -0,0 +1,94 @@
#Hubzilla on OpenShift
You will notice a new .openshift folder when you fetch from upstream, i.e. from https://github.com/redmatrix/hubzilla.git , which contains a deploy script to set up Hubzilla on OpenShift.
Create an account on OpenShift, then use the registration e-mail and password to create your first Hubzilla instance. Install git and RedHat's command line tools - rhc - if you have not already done so.
```
rhc app-create your_app_name php-5.4 mysql-5.5 cron phpmyadmin --namespace your_domain --from-code https://github.com/redmatrix/hubzilla.git -l your@email.address -p your_account_password
```
Make a note of the database username and password OpenShift creates for your instance, and use these at https://your_app_name-your_domain.rhcloud.com/ to complete the setup.
NOTE: PostgreSQL is NOT supported by the deploy script yet.
Update
To update, consider your own workflow first. I have forked Hubzilla code into my GitHub account to be able to try things out, this remote repo is called origin. Here is how I fetch new code from upstream, merge into my local repo, then push the updated code both into origin and the remote repo called openshift.
```
git fetch upstream;git checkout master;git merge upstream/master;git push origin;git push openshift HEAD
```
##Administration
Symptoms of need for MySQL database administration are:
- you can visit your domain and see the Hubzilla frontpage, but trying to login throws you back to login. This can mean your session table is marked as crashed.
- you can login, but your channel posts are not visible. This can mean your item table is marked as crashed.
- you can login and you can see your channel posts, but apparently nobody is getting your posts, comments, likes and so on. This can mean your outq table is marked as crashed.
You can check your OpenShift logs by doing
```
rhc tail -a your_app_name -n your_domain -l your@email.address -p your_account_password
```
and you might be able to confirm the above suspicions about crashed tables, or other problems you need to fix.
###How to fix crashed tables in MySQL
Using MySQL and the MyISAM database engine can result in table indexes coming out of sync, and you have at least two options for fixing tables marked as crashed.
- Use the database username and password OpenShift creates for your instance at https://your_app_name-your_domain.rhcloud.com/phpmyadmin/ to login via the web into your phpMyAdmin web interface, click your database in the left column, in the right column scroll down to the bottom of the list of tables and click the checkbox for marking all tables, then select Check tables from the drop down menu. This will check the tables for problems, and you can then checkmark only those tables with problems, and select Repair table from the same drop down menu at the bottom.
- You can login to your instance with SSH - see OpenShift for details - then
```
cd mysql/data/your_database
myisamchk -r *.MYI
```
or if you get
```
Can't create new tempfile
```
check your OpenShift's gear quota with
```
quota -gus
```
and if you are short on space, then locally (not SSH) do
```
rhc app-tidy your_app_name -l your_login -p your_password
```
to have rhc delete temporary files and OpenShift logs to free space first, then check the size of your local repo dir and execute
```
git gc
```
against it and check the size again, and then to minimize your remote repo connect via SSH to your application gear and execute the same command against it by changing to the remote repo directory - your repo should be in
```
~/git/your_app_name.git
```
(if not, do find -size +1M to find it), then do
```
cd ~/mysql/data/yourdatabase
myisamchk -r -v -f*.MYI
```
and hopefully your database tables are now okay.
##NOTES
Note 1: definitely DO turn off feeds and discovery by default if you are on the Free or Bronze plan on OpenShift with a single 1Gb gear by visiting https://your-app-name.rhcloud.com/admin/site when logged in as administrator of your Hubzilla site.
Note 2: DO add the above defaults into the deploy script.
Note 3: DO add git gc to the deploy script to clean up git.
Note 4: MAYBE DO add myisamchk - only checking? to the end of the deploy script.
The OpenShift `php` cartridge documentation can be found at:
http://openshift.github.io/documentation/oo_cartridge_guide.html#php
For information about .openshift directory, consult the documentation:
http://openshift.github.io/documentation/oo_user_guide.html#the-openshift-directory

View File

@@ -0,0 +1,3 @@
For information about action hooks, consult the documentation:
http://openshift.github.io/documentation/oo_user_guide.html#action-hooks

217
.openshift/action_hooks/deploy Executable file
View File

@@ -0,0 +1,217 @@
#!/bin/bash
# This deploy hook gets executed after dependencies are resolved and the
# build hook has been run but before the application has been started back
# up again. This script gets executed directly, so it could be python, php,
# ruby, etc.
# Bash help: http://www.panix.com/~elflord/unix/bash-tute.html
# For information about action hooks supported by OpenShift, consult the documentation:
# http://openshift.github.io/documentation/oo_user_guide.html#the-openshift-directory
####
# Hubzilla specific deploy script
# Place this file in /.openshift/action_hooks/ (The .openshift folder will be in the root of your repo)
# The file name should be "deploy" such that you have:
# .openshift/action_hooks/deploy
# Conventions: Vars in curley braces have the slash after implied so no need to add it.
# e.g. ${OPENSHIFT_REPO_DIR}php/foobar = /repo/php/foobar
# See all OpenShift vars here:
# https://www.openshift.com/developers/openshift-environment-variables
# HME - NOTE - leftover from original openshift-drupal-deploy
# In config.php you can leverage the enviroment variables like this:
# // Define env vars.
# if (array_key_exists('OPENSHIFT_APP_NAME', $_SERVER)) {
# $src = $_SERVER;
# } else {
# $src = $_ENV;
# }
#
# $conf["file_private_path"] = $src['OPENSHIFT_DATA_DIR'] . "private";
# $conf["file_temporary_path"] = $src['OPENSHIFT_DATA_DIR'] . "tmp";
####
# Start Deploy
echo "Starting Deploy..."
# Let's create the Hubzilla files directory in the Openshift data folder ($OPENSHIFT_DATA_DIR).
echo "Check for the files directory called store, if not created - create it"
if [ ! -d ${OPENSHIFT_DATA_DIR}store ]; then
mkdir -p ${OPENSHIFT_DATA_DIR}"store/[data]/smarty3"
echo "Done creating files directory"
else
echo "The files directory called store already exists"
fi
####
# Set permissions on the files directory.
echo "Now chmod 777 -R files"
chmod -R 777 ${OPENSHIFT_DATA_DIR}store
echo "chmod done, permissions set to 777"
####
# Symlink our files folder to the repo.
# Note the "php" directory below seems to be the best way to serve OpenShift files.
# This is good as that allows us for directories one level above such as tmp and private
echo "Create sym links for writeable directories"
ln -sf ${OPENSHIFT_DATA_DIR}store ${OPENSHIFT_REPO_DIR}store
echo "Files sym links created"
####
# Copy .htconfig.php from the repo, rename it and place it in the data directory.
# if it's there already, skip it.
if [ ! -f ${OPENSHIFT_DATA_DIR}.htconfig.php ];
then
cp ${OPENSHIFT_REPO_DIR}.htconfig.php ${OPENSHIFT_DATA_DIR}.htconfig.php
echo ".htconfig.php copied."
else
echo "Looks like the .htconfig.php file is already there, we won't overwrite it."
fi
####
# symlink the .htconfig.php file.
echo "Create sym link for .htconfig.php"
ln -sf ${OPENSHIFT_DATA_DIR}.htconfig.php ${OPENSHIFT_REPO_DIR}.htconfig.php
echo ".htconfig.php symlink created"
####
# Copy .htaccess from the repo, rename it and place it in the data directory.
# if it's there already, skip it.
if [ ! -f ${OPENSHIFT_DATA_DIR}.htaccess ];
then
cp ${OPENSHIFT_REPO_DIR}.htaccess ${OPENSHIFT_DATA_DIR}.htaccess
echo ".htaccess copied."
else
echo "Looks like the .htaccess file is already there, we won't overwrite it."
fi
####
# symlink the .htaccess file.
echo "Create sym link for .htaccess"
ln -sf ${OPENSHIFT_DATA_DIR}.htaccess ${OPENSHIFT_REPO_DIR}.htaccess
echo ".htaccess symlink created"
####
echo "Check for the poller at .openshift/cron/minutely/poller , if not created - create it"
if [ ! -f ${OPENSHIFT_REPO_DIR}.openshift/cron/minutely/poller ]; then
printf '%s\n' '#!/bin/bash' 'if [ ! -f $OPENSHIFT_DATA_DIR/last_run ]; then' ' touch $OPENSHIFT_DATA_DIR/last_run' 'fi' 'if [[ $(find $OPENSHIFT_DATA_DIR/last_run -mmin +9) ]]; then #run every 10 mins' ' rm -f $OPENSHIFT_DATA_DIR/last_run' ' touch $OPENSHIFT_DATA_DIR/last_run' ' # The command(s) that you want to run every 10 minutes' 'cd /var/lib/openshift/${OPENSHIFT_APP_UUID}/app-root/repo; /opt/rh/php54/root/usr/bin/php include/poller.php' 'fi' >${OPENSHIFT_REPO_DIR}.openshift/cron/minutely/poller
echo "Done creating file .openshift/cron/minutely/poller"
else
echo "The poller already exists"
fi
####
# Set permissions on the poller script to make it executable.
echo "Now chmod 777 -R poller"
chmod -R 777 ${OPENSHIFT_REPO_DIR}.openshift/cron/minutely/poller
echo "chmod done, permissions set to 777 on poller script."
####
### echo "Check for the hot deploy marker at .openshift/markers/hot_deploy , if not created - create it"
### if [ ! -f ${OPENSHIFT_REPO_DIR}.openshift/markers/hot_deploy ]; then
### touch ${OPENSHIFT_REPO_DIR}.openshift/markers/hot_deploy
### echo "Done creating file .openshift/markers/hot_deploy"
### else
### echo "The hot deploy marker already exists"
### fi
####
# Hubzilla configuration - changes to default settings
# to make Hubzilla on OpenShift a more pleasant experience
echo "Changing default configuration to conserve space and autocreate a social private channel upon account registration"
cd ${OPENSHIFT_REPO_DIR}
util/config system default_permissions_role social_private
util/config system workflow_channel_next channel
util/config system expire_delivery_reports 3
util/config system feed_contacts 0
util/config system diaspora_enabled 0
util/config system disable_discover_tab 1
util/config directory safemode 0
util/config directory globaldir 1
util/config directory pubforums 0
# Hubzill addons
echo "Try to add or update Hubzilla addons"
cd ${OPENSHIFT_REPO_DIR}
util/add_addon_repo https://github.com/redmatrix/hubzilla-addons.git HubzillaAddons
# Hubzilla themes
echo "Try to add or update Hubzilla themes"
cd ${OPENSHIFT_REPO_DIR}
util/add_theme_repo https://github.com/DeadSuperHero/hubzilla-themes.git DeadSuperHeroThemes
# Hubzilla ownMapp
echo "Try to add or update Hubzilla ownMapp"
cd ${OPENSHIFT_REPO_DIR}
util/add_addon_repo https://gitlab.com/zot/ownmapp.git ownMapp
# Hubzilla Chess
echo "Try to add or update Hubzilla chess "
cd ${OPENSHIFT_REPO_DIR}
util/add_addon_repo https://gitlab.com/zot/hubzilla-chess.git Chess
# Hubzilla Hubsites
echo "Try to add or update Hubzilla Hubsites"
cd ${OPENSHIFT_REPO_DIR}
util/add_addon_repo https://gitlab.com/zot/hubsites.git Hubsites

View File

@@ -0,0 +1,27 @@
Run scripts or jobs on a periodic basis
=======================================
Any scripts or jobs added to the minutely, hourly, daily, weekly or monthly
directories will be run on a scheduled basis (frequency is as indicated by the
name of the directory) using run-parts.
run-parts ignores any files that are hidden or dotfiles (.*) or backup
files (*~ or *,) or named *.{rpmsave,rpmorig,rpmnew,swp,cfsaved}
The presence of two specially named files jobs.deny and jobs.allow controls
how run-parts executes your scripts/jobs.
jobs.deny ===> Prevents specific scripts or jobs from being executed.
jobs.allow ===> Only execute the named scripts or jobs (all other/non-named
scripts that exist in this directory are ignored).
The principles of jobs.deny and jobs.allow are the same as those of cron.deny
and cron.allow and are described in detail at:
http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Automating_System_Tasks.html#s2-autotasks-cron-access
See: man crontab or above link for more details and see the the weekly/
directory for an example.
PLEASE NOTE: The Cron cartridge must be installed in order to run the configured jobs.
For more information about cron, consult the documentation:
http://openshift.github.io/documentation/oo_cartridge_guide.html#cron
http://openshift.github.io/documentation/oo_user_guide.html#cron

0
.openshift/cron/daily/.gitignore vendored Normal file
View File

0
.openshift/cron/hourly/.gitignore vendored Normal file
View File

0
.openshift/cron/minutely/.gitignore vendored Normal file
View File

0
.openshift/cron/monthly/.gitignore vendored Normal file
View File

View File

@@ -0,0 +1,16 @@
Run scripts or jobs on a weekly basis
=====================================
Any scripts or jobs added to this directory will be run on a scheduled basis
(weekly) using run-parts.
run-parts ignores any files that are hidden or dotfiles (.*) or backup
files (*~ or *,) or named *.{rpmsave,rpmorig,rpmnew,swp,cfsaved} and handles
the files named jobs.deny and jobs.allow specially.
In this specific example, the chronograph script is the only script or job file
executed on a weekly basis (due to white-listing it in jobs.allow). And the
README and chrono.dat file are ignored either as a result of being black-listed
in jobs.deny or because they are NOT white-listed in the jobs.allow file.
For more details, please see ../README.cron file.

View File

@@ -0,0 +1 @@
Time And Relative D...n In Execution (Open)Shift!

View File

@@ -0,0 +1,3 @@
#!/bin/bash
echo "`date`: `cat $(dirname \"$0\")/chrono.dat`"

View File

@@ -0,0 +1,12 @@
#
# Script or job files listed in here (one entry per line) will be
# executed on a weekly-basis.
#
# Example: The chronograph script will be executed weekly but the README
# and chrono.dat files in this directory will be ignored.
#
# The README file is actually ignored due to the entry in the
# jobs.deny which is checked before jobs.allow (this file).
#
chronograph

View File

@@ -0,0 +1,7 @@
#
# Any script or job files listed in here (one entry per line) will NOT be
# executed (read as ignored by run-parts).
#
README

View File

@@ -0,0 +1,4 @@
For information about markers, consult the documentation:
http://openshift.github.io/documentation/oo_user_guide.html#markers
http://openshift.github.io/documentation/oo_cartridge_guide.html#php-markers

0
.openshift/pear.txt Normal file
View File

46
.travis.yml Normal file
View File

@@ -0,0 +1,46 @@
# see http://about.travis-ci.org/docs/user/languages/php/ for more hints
language: php
# list any PHP version you want to test against
php:
# using major version aliases
# aliased to a recent 5.4.x version
- 5.4
# aliased to a recent 5.5.x version
- 5.5
# aliased to a recent 5.6.x version
- 5.6
# aliased to a recent 7.x version
- 7.0
# aliased to a recent hhvm version
- hhvm
# optionally specify a list of environments, for example to test different RDBMS
#env:
# - DB=mysql
# - DB=pgsql
# optionally set up exclutions and allowed failures in the matrix
matrix:
# exclude:
# - php: hhvm
# env: DB=pgsql # PDO driver for pgsql is unsupported by HHVM (3rd party install for support)
allow_failures:
- php: 7.0
- php: hhvm
# execute any number of scripts before the test run, custom env's are available as variables
#before_script:
# - if [[ "$DB" == "pgsql" ]]; then psql -c "DROP DATABASE IF EXISTS hello_world_test;" -U postgres; fi
# - if [[ "$DB" == "pgsql" ]]; then psql -c "create database hello_world_test;" -U postgres; fi
# - if [[ "$DB" == "mysql" ]]; then mysql -e "create database IF NOT EXISTS hello_world_test;" -uroot; fi
# omitting "script:" will default to phpunit
# use the $DB env variable to determine the phpunit.xml to use
script: phpunit tests/*php
# configure notifications (email, IRC, campfire etc)
notifications:
# irc: "irc.freenode.org#yourfavouriteroomfortravis"
# a plugin/script to post to a hubzilla channel would be neat here

92
CHANGELOG Normal file
View File

@@ -0,0 +1,92 @@
Hubzilla 1.2
Provide extra HTTP security headers (several of them).
Allow a site to disable delivery reports if disk space is limited
Regression: Wrong theme when viewing single post as non-member
Some Diaspora profile photos use relative URLs - force absolute
Add locked features to siteinfo report to aid remote debugging
Provide version compatibility checking to plugins (minversion, maxversion, and minphpversion)
Account config storage
Provide optional integrated registration and channel create form
cli utility for managing addons
issue with sharing photo "items"
cover photo manager: upload, crop, and store
cover photo widget created
rework the connections list page and provide a few management features there
fixed issue with Comanche layout definitions loaded by plugins
provide ability to separate delivery functions from item_store() and item_store_update() - some forum messages were being redelivered when cloned.
call build_sync_packet() on pdledit changes
Abstract the project name and version so these can be customised or removed
Allow hiding the ratings links on a per-site basis
db_type not present in international setup templates - was unable to choose postgres.
item_photo_menu logically divided into a) actions on the post, b) actions related to the author
bug: default channel not reset to 0 when last channel removed
create widget containing only the contact block
regression: public forums granted send stream permissions to connections
workaround Firefox's refusal to honour disabling autocomplete of passwords
regression: photo's uploaded to a channel by a guest (with file write permissions) not saved correctly.
provide mechanisms for custom .well-known handlers (needed for LetsEncrypt ownership verification)
proc_run modified to use exec() instead of proc_open() - causing issues on some PHP installations
remote delegation failure under a specific set of circumstances which we were finally able to duplicate
Delegation section of Channel Manager was missing names and contained useless notification icons.
Change "expire" channel setting to show system limit if there is one.
Regression: provide a one-click ignore of pending connection
Config to control directory keyword generation on client and server.
"Collections" renamed to "Privacy Groups", documentation improved
widget_item - allow use of page title instead of message id
Add site black/white list checking to all .well-known services
reduce incidents of screen jumping when "showmore" is activated
add oembed provider for photos
Addons:
CSS theming of pageheader plugin
xmpp addon ported from Friendica
Diaspora private mail issues after the third reply
Occasional issue with Diaspora connection requests
Add notification email to Diaspora PMs
Allow anonymising platform and version for statistics
msgfooter addon created
removed embedly plugin
sync clones after superblock addition
"keepout" plugin created
Hubzilla 1.1
Rewrote and simplified the Queue manager and delivery system
Rewrote and simplified the outer layers of the Zot protocol
Use a standard version numbering scheme in addition to the snapshot tags
Provide a channel blacklist for blocking channels with abusive or illegal content at the hub level
Make the black/white lists pluggable
Update template library
Support for letsencrypt certs in various places
Cleanup of login and register pages
Better error responses for permission denied on channel file repositories
Disabled the public stream by default for new installs (can be enabled if desired)
Cleanup of API authentication and rework the old OAuth1 stuff
Add API "status with media" support compatible with Twitter and conflicting method for GNU-social
Rework photo ActivityStreams objects to align better with ActivityStreams producers/consumers
Several minor API fixes to work better with AndStatus client
Invitation only site - experimental support added, needs more work
Fix delivery loop condition due to corrupted data which resulted in recursive upstream delivery
Provide more support for external (git) widget collections.
Extend the Queue API to 3rd-party network addons which have experienced downtime recently.
Regression: Inherited permissions were not explicitly set
Regression: "Xyz posted on your wall" notification sent when creating webpages at another channel
Regression: Custom permissions not pre-populated on channel creation with named role.
Provide "Public" string when a post can be made public, instead of "visible to default audience"
Allow hub admin to specify a default role type for the first channel created, reducing complexity
Ability for a hub admin to set feature defaults and lock them, reducing complexity
Change default expiration of delivery reports to 10 days to accomodate sites with reduced resources
Addons/Plugins:
Pageheader addon ported from Friendica
Hubwall (allow admin to send email to all accounts on this hub) created
GNU-social - queueing added
Diaspora - fixes for various failures to update profile photos, updates to queue API
Cross Domain Authenticated Chess (Andrew Manning's repository)
And... the normal "lots of bugs fixed, translations updated, and documentation improved"

View File

@@ -1,4 +1,4 @@
Copyright (c) 2010-2015 Hubzilla
Copyright (c) 2010-2016 Hubzilla
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@@ -1,11 +1,14 @@
![Hubzilla](images/hubzilla-banner.png)
Hubzilla
========
Hubzilla - Community Server
===========================
###Websites. Redefined.
Help us redefine the web - using integrated and united community websites.
--------------------------------------------------------------------------
![Hubzilla](images/ghash-32.png)
<p align="center" markdown="1">
<em><a href="https://github.com/redmatrix/hubzilla/blob/master/install/INSTALL.txt">Installing Hubzilla</a></em>
</p>
**What are Hubs?**
@@ -37,6 +40,8 @@ Possible website applications include
* dating websites
* pretty much anything you can do on a traditional blog or community website, but that you could do better if you could easily connect it with other websites or privately share things across website boundaries.
<p align="center" markdown="1">
<em><a href="https://github.com/redmatrix/hubzilla/blob/master/install/INSTALL.txt">Installing Hubzilla</a></em>
</p>
This project is under development and is not yet available for general use.
[![Build Status](https://travis-ci.org/redmatrix/hubzilla.svg)](https://travis-ci.org/redmatrix/hubzilla)

View File

@@ -0,0 +1,92 @@
<?php
namespace Zotlabs\Access;
class AccessList {
private $allow_cid;
private $allow_gid;
private $deny_cid;
private $deny_gid;
/* indicates if we are using the default constructor values or values that have been set explicitly. */
private $explicit;
function __construct($channel) {
if($channel) {
$this->allow_cid = $channel['channel_allow_cid'];
$this->allow_gid = $channel['channel_allow_gid'];
$this->deny_cid = $channel['channel_deny_cid'];
$this->deny_gid = $channel['channel_deny_gid'];
}
else {
$this->allow_cid = '';
$this->allow_gid = '';
$this->deny_cid = '';
$this->deny_gid = '';
}
$this->explicit = false;
}
function get_explicit() {
return $this->explicit;
}
/**
* Set AccessList from strings such as those in already
* existing stored data items
*/
function set($arr,$explicit = true) {
$this->allow_cid = $arr['allow_cid'];
$this->allow_gid = $arr['allow_gid'];
$this->deny_cid = $arr['deny_cid'];
$this->deny_gid = $arr['deny_gid'];
$this->explicit = $explicit;
}
/**
* return an array consisting of the current
* access list components where the elements
* are directly storable.
*/
function get() {
return array(
'allow_cid' => $this->allow_cid,
'allow_gid' => $this->allow_gid,
'deny_cid' => $this->deny_cid,
'deny_gid' => $this->deny_gid,
);
}
/**
* Set AccessList from arrays, such as those provided by
* acl_selector(). For convenience, a string (or non-array) input is
* assumed to be a comma-separated list and auto-converted into an array.
*/
function set_from_array($arr,$explicit = true) {
$this->allow_cid = perms2str((is_array($arr['contact_allow']))
? $arr['contact_allow'] : explode(',',$arr['contact_allow']));
$this->allow_gid = perms2str((is_array($arr['group_allow']))
? $arr['group_allow'] : explode(',',$arr['group_allow']));
$this->deny_cid = perms2str((is_array($arr['contact_deny']))
? $arr['contact_deny'] : explode(',',$arr['contact_deny']));
$this->deny_gid = perms2str((is_array($arr['group_deny']))
? $arr['group_deny'] : explode(',',$arr['group_deny']));
$this->explicit = $explicit;
}
function is_private() {
return (($this->allow_cid || $this->allow_gid || $this->deny_cid || $this->deny_gid) ? true : false);
}
}

View File

@@ -0,0 +1,18 @@
<?php
namespace Zotlabs\Identity\BasicId;
class BasicId {
private $name;
private $profile_photo;
private $profile_url;
private $address;
private $protocol;
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Zotlabs\Identity\ProfilePhoto;
class ProfilePhoto {
private $photo_large_url;
private $photo_medium_url;
private $photo_small_url;
private $photo_mimetype;
private $photo_updated;
}

View File

@@ -0,0 +1,62 @@
<?php
namespace Zotlabs\Project;
class System {
function get_platform_name() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['platform_name'])
return $a->config['system']['platform_name'];
return PLATFORM_NAME;
}
function get_project_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return RED_VERSION;
}
function get_update_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return DB_UPDATE_VERSION;
}
function get_notify_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['email_notify_icon_url'])
return $a->config['system']['email_notify_icon_url'];
return z_root() . '/images/hz-white-32.png';
}
function get_site_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['site_icon_url'])
return $a->config['system']['site_icon_url'];
return z_root() . '/images/hz-32.png';
}
function get_server_role() {
if(UNO)
return 'basic';
return 'advanced';
}
// return the standardised version. Since we can't easily compare
// before the STD_VERSION definition was applied, we have to treat
// all prior release versions the same. You can dig through them
// with other means (such as RED_VERSION) if necessary.
function get_std_version() {
if(defined('STD_VERSION'))
return STD_VERSION;
return '0.0.0';
}
}

View File

@@ -1,11 +1,11 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
/**
* @brief Authentication backend class for RedDAV.
* @brief Authentication backend class for DAV.
*
* This class also contains some data which is not necessary for authentication
* like timezone settings.
@@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
class BasicAuth extends DAV\Auth\Backend\AbstractBasic {
/**
* @brief This variable holds the currently logged-in channel_address.
@@ -45,18 +45,18 @@ class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
public $observer = '';
/**
*
* @see RedBrowser::set_writeable()
* @see Browser::set_writeable()
* @var \Sabre\DAV\Browser\Plugin
*/
public $browser;
/**
* channel_id of the current visited path. Set in RedDirectory::getDir().
* channel_id of the current visited path. Set in Directory::getDir().
*
* @var int
*/
public $owner_id = 0;
/**
* channel_name of the current visited path. Set in RedDirectory::getDir().
* channel_name of the current visited path. Set in Directory::getDir().
*
* Used for creating the path in cloud/
*
@@ -197,7 +197,7 @@ class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
}
/**
* @brief Prints out all RedBasicAuth variables to logger().
* @brief Prints out all BasicAuth variables to logger().
*
* @return void
*/

View File

@@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedBrowser extends DAV\Browser\Plugin {
class Browser extends DAV\Browser\Plugin {
/**
* @see set_writeable()
@@ -188,7 +188,7 @@ class RedBrowser extends DAV\Browser\Plugin {
$parentHash = '';
$owner = $this->auth->owner_id;
$splitPath = split('/', $fullPath);
$splitPath = explode('/', $fullPath);
if (count($splitPath) > 3) {
for ($i = 3; $i < count($splitPath); $i++) {
$attachName = urldecode($splitPath[$i]);
@@ -217,31 +217,6 @@ class RedBrowser extends DAV\Browser\Plugin {
$f[] = $ft;
}
// Storage and quota for the account (all channels of the owner of this directory)!
$limit = service_class_fetch($owner, 'attach_upload_limit');
$r = q("SELECT SUM(filesize) AS total FROM attach WHERE aid = %d",
intval($this->auth->channel_account_id)
);
$used = $r[0]['total'];
if ($used) {
$quotaDesc = t('%1$s used');
$quotaDesc = sprintf($quotaDesc,
userReadableSize($used));
}
if ($limit && $used) {
$quotaDesc = t('%1$s used of %2$s (%3$s&#37;)');
$quotaDesc = sprintf($quotaDesc,
userReadableSize($used),
userReadableSize($limit),
round($used / $limit, 1));
}
// prepare quota for template
$quota = array();
$quota['used'] = $used;
$quota['limit'] = $limit;
$quota['desc'] = $quotaDesc;
$output = '';
if ($this->enablePost) {
$this->server->broadcastEvent('onHTMLActionsPanel', array($parent, &$output));
@@ -249,7 +224,6 @@ class RedBrowser extends DAV\Browser\Plugin {
$html .= replace_macros(get_markup_template('cloud.tpl'), array(
'$header' => t('Files') . ": " . $this->escapeHTML($path) . "/",
'$quota' => $quota,
'$total' => t('Total'),
'$actionspanel' => $output,
'$shared' => t('Shared'),
@@ -298,11 +272,38 @@ class RedBrowser extends DAV\Browser\Plugin {
if (get_class($node) === 'Sabre\\DAV\\SimpleCollection')
return;
// Storage and quota for the account (all channels of the owner of this directory)!
$limit = service_class_fetch($owner, 'attach_upload_limit');
$r = q("SELECT SUM(filesize) AS total FROM attach WHERE aid = %d",
intval($this->auth->channel_account_id)
);
$used = $r[0]['total'];
if ($used) {
$quotaDesc = t('You are using %1$s of your available file storage.');
$quotaDesc = sprintf($quotaDesc,
userReadableSize($used));
}
if ($limit && $used) {
$quotaDesc = t('You are using %1$s of %2$s available file storage. (%3$s&#37;)');
$quotaDesc = sprintf($quotaDesc,
userReadableSize($used),
userReadableSize($limit),
round($used / $limit, 1) * 100);
}
// prepare quota for template
$quota = array();
$quota['used'] = $used;
$quota['limit'] = $limit;
$quota['desc'] = $quotaDesc;
$quota['warning'] = ((($limit) && ((round($used / $limit, 1) * 100) >= 90)) ? t('WARNING:') : ''); // 10485760 bytes = 100MB
$output .= replace_macros(get_markup_template('cloud_actionspanel.tpl'), array(
'$folder_header' => t('Create new folder'),
'$folder_submit' => t('Create'),
'$upload_header' => t('Upload file'),
'$upload_submit' => t('Upload')
'$upload_submit' => t('Upload'),
'$quota' => $quota
));
}

View File

@@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@@ -16,7 +16,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
class Directory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
/**
* @brief The path inside /cloud
@@ -116,7 +116,7 @@ class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
$modulename = get_app()->module;
if ($this->red_path === '/' && $name === $modulename) {
return new RedDirectory('/' . $modulename, $this->auth);
return new Directory('/' . $modulename, $this->auth);
}
$x = RedFileData($this->ext_path . '/' . $name, $this->auth);
@@ -251,7 +251,7 @@ class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
intval($filesize),
intval(0),
intval($is_photo),
dbesc($this->os_path . '/' . $hash),
dbesc($f),
dbesc(datetime_convert()),
dbesc(datetime_convert()),
dbesc($allow_cid),
@@ -362,6 +362,27 @@ class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
}
}
/**
* @brief delete directory
*/
public function delete() {
logger('delete file ' . basename($this->red_path), LOGGER_DEBUG);
if ((! $this->auth->owner_id) || (! perm_is_allowed($this->auth->owner_id, $this->auth->observer, 'write_storage'))) {
throw new DAV\Exception\Forbidden('Permission denied.');
}
if ($this->auth->owner_id !== $this->auth->channel_id) {
if (($this->auth->observer !== $this->data['creator']) || intval($this->data['is_dir'])) {
throw new DAV\Exception\Forbidden('Permission denied.');
}
}
attach_delete($this->auth->owner_id, $this->folder_hash);
}
/**
* @brief Checks if a child exists.
*

View File

@@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedFile extends DAV\Node implements DAV\IFile {
class File extends DAV\Node implements DAV\IFile {
/**
* The file from attach table.
@@ -126,7 +126,11 @@ class RedFile extends DAV\Node implements DAV\IFile {
}
}
$fname = dbunescbin($d[0]['data']);
$f = 'store/' . $this->auth->owner_nick . '/' . (($fname) ? $fname : '');
if(strpos($fname,'store') === false)
$f = 'store/' . $this->auth->owner_nick . '/' . $fname ;
else
$f = $fname;
// @todo check return value and set $size directly
@file_put_contents($f, $data);
$size = @filesize($f);
@@ -226,7 +230,11 @@ class RedFile extends DAV\Node implements DAV\IFile {
}
if (intval($r[0]['os_storage'])) {
$f = 'store/' . $this->auth->owner_nick . '/' . (($this->os_path) ? $this->os_path . '/' : '') . dbunescbin($r[0]['data']);
$x = dbunescbin($r[0]['data']);
if(strpos($x,'store') === false)
$f = 'store/' . $this->auth->owner_nick . '/' . (($this->os_path) ? $this->os_path . '/' : '') . $x;
else
$f = $x;
return fopen($f, 'rb');
}
return dbunescbin($r[0]['data']);

199
Zotlabs/Web/Router.php Normal file
View File

@@ -0,0 +1,199 @@
<?php
namespace Zotlabs\Web;
class Router {
function __construct(&$a) {
/**
*
* We have already parsed the server path into $a->argc and $a->argv
*
* $a->argv[0] is our module name. We will load the file mod/{$a->argv[0]}.php
* and use it for handling our URL request.
* The module file contains a few functions that we call in various circumstances
* and in the following order:
*
* "module"_init
* "module"_post (only called if there are $_POST variables)
* "module"_content - the string return of this function contains our page body
*
* Modules which emit other serialisations besides HTML (XML,JSON, etc.) should do
* so within the module init and/or post functions and then invoke killme() to terminate
* further processing.
*/
if(strlen($a->module)) {
/**
*
* We will always have a module name.
* First see if we have a plugin which is masquerading as a module.
*
*/
if(is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) {
include_once("addon/{$a->module}/{$a->module}.php");
if(function_exists($a->module . '_module'))
$a->module_loaded = true;
}
if((strpos($a->module,'admin') === 0) && (! is_site_admin())) {
$a->module_loaded = false;
notice( t('Permission denied.') . EOL);
goaway(z_root());
}
/**
* If the site has a custom module to over-ride the standard module, use it.
* Otherwise, look for the standard program module in the 'mod' directory
*/
if(! $a->module_loaded) {
if(file_exists("mod/site/{$a->module}.php")) {
include_once("mod/site/{$a->module}.php");
$a->module_loaded = true;
}
elseif(file_exists("mod/{$a->module}.php")) {
include_once("mod/{$a->module}.php");
$a->module_loaded = true;
}
}
/**
* This provides a place for plugins to register module handlers which don't otherwise exist on the system.
* If the plugin sets 'installed' to true we won't throw a 404 error for the specified module even if
* there is no specific module file or matching plugin name.
* The plugin should catch at least one of the module hooks for this URL.
*/
$x = array('module' => $a->module, 'installed' => false);
call_hooks('module_loaded', $x);
if($x['installed'])
$a->module_loaded = true;
/**
* The URL provided does not resolve to a valid module.
*
* On Dreamhost sites, quite often things go wrong for no apparent reason and they send us to '/internal_error.html'.
* We don't like doing this, but as it occasionally accounts for 10-20% or more of all site traffic -
* we are going to trap this and redirect back to the requested page. As long as you don't have a critical error on your page
* this will often succeed and eventually do the right thing.
*
* Otherwise we are going to emit a 404 not found.
*/
if(! $a->module_loaded) {
// Stupid browser tried to pre-fetch our Javascript img template. Don't log the event or return anything - just quietly exit.
if((x($_SERVER, 'QUERY_STRING')) && preg_match('/{[0-9]}/', $_SERVER['QUERY_STRING']) !== 0) {
killme();
}
if((x($_SERVER, 'QUERY_STRING')) && ($_SERVER['QUERY_STRING'] === 'q=internal_error.html') && $a->config['system']['dreamhost_error_hack']) {
logger('index.php: dreamhost_error_hack invoked. Original URI =' . $_SERVER['REQUEST_URI']);
goaway($a->get_baseurl() . $_SERVER['REQUEST_URI']);
}
logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' ADDRESS: ' . $_SERVER['REMOTE_ADDR'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG);
header($_SERVER['SERVER_PROTOCOL'] . ' 404 ' . t('Not Found'));
$tpl = get_markup_template('404.tpl');
$a->page['content'] = replace_macros($tpl, array(
'$message' => t('Page not found.')
));
// pretend this is a module so it will initialise the theme
$a->module = '404';
$a->module_loaded = true;
}
}
}
function Dispatch(&$a) {
/**
* Call module functions
*/
if($a->module_loaded) {
$a->page['page_title'] = $a->module;
$placeholder = '';
/**
* No theme has been specified when calling the module_init functions
* For this reason, please restrict the use of templates to those which
* do not provide any presentation details - as themes will not be able
* to over-ride them.
*/
if(function_exists($a->module . '_init')) {
$arr = array('init' => true, 'replace' => false);
call_hooks($a->module . '_mod_init', $arr);
if(! $arr['replace']) {
$func = $a->module . '_init';
$func($a);
}
}
/**
* Do all theme initialiasion here before calling any additional module functions.
* The module_init function may have changed the theme.
* Additionally any page with a Comanche template may alter the theme.
* So we'll check for those now.
*/
/**
* In case a page has overloaded a module, see if we already have a layout defined
* otherwise, if a PDL file exists for this module, use it
* The member may have also created a customised PDL that's stored in the config
*/
load_pdl($a);
/**
* load current theme info
*/
$theme_info_file = 'view/theme/' . current_theme() . '/php/theme.php';
if (file_exists($theme_info_file)){
require_once($theme_info_file);
}
if(function_exists(str_replace('-', '_', current_theme()) . '_init')) {
$func = str_replace('-', '_', current_theme()) . '_init';
$func($a);
}
elseif (x($a->theme_info, 'extends') && file_exists('view/theme/' . $a->theme_info['extends'] . '/php/theme.php')) {
require_once('view/theme/' . $a->theme_info['extends'] . '/php/theme.php');
if(function_exists(str_replace('-', '_', $a->theme_info['extends']) . '_init')) {
$func = str_replace('-', '_', $a->theme_info['extends']) . '_init';
$func($a);
}
}
if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error)
&& (function_exists($a->module . '_post'))
&& (! x($_POST, 'auth-params'))) {
call_hooks($a->module . '_mod_post', $_POST);
$func = $a->module . '_post';
$func($a);
}
if((! $a->error) && (function_exists($a->module . '_content'))) {
$arr = array('content' => $a->page['content'], 'replace' => false);
call_hooks($a->module . '_mod_content', $arr);
$a->page['content'] = $arr['content'];
if(! $arr['replace']) {
$func = $a->module . '_content';
$arr = array('content' => $func($a));
}
call_hooks($a->module . '_mod_aftercontent', $arr);
$a->page['content'] .= $arr['content'];
}
}
}
}

345
Zotlabs/Zot/Auth.php Normal file
View File

@@ -0,0 +1,345 @@
<?php
namespace Zotlabs\Zot;
class Auth {
protected $test;
protected $test_results;
protected $debug_msg;
protected $address;
protected $desturl;
protected $sec;
protected $version;
protected $delegate;
protected $success;
protected $delegate_success;
protected $remote;
protected $remote_service_class;
protected $remote_level;
protected $remote_hub;
protected $dnt;
function __construct($req) {
$this->test = ((array_key_exists('test',$req)) ? intval($req['test']) : 0);
$this->test_results = array('success' => false);
$this->debug_msg = '';
$this->success = false;
$this->address = $req['auth'];
$this->desturl = $req['dest'];
$this->sec = $req['sec'];
$this->version = $req['version'];
$this->delegate = $req['delegate'];
$c = get_sys_channel();
if(! $c) {
logger('unable to obtain response (sys) channel');
$this->Debug('no local channels found.');
$this->Finalise();
}
$x = $this->GetHublocs($this->address);
if($x) {
foreach($x as $xx) {
if($this->Verify($c,$xx))
break;
}
}
/**
* @FIXME we really want to save the return_url in the session before we
* visit rmagic. This does however prevent a recursion if you visit
* rmagic directly, as it would otherwise send you back here again.
* But z_root() probably isn't where you really want to go.
*/
if(strstr($this->desturl,z_root() . '/rmagic'))
goaway(z_root());
$this->Finalise();
}
function GetHublocs($address) {
// Try and find a hubloc for the person attempting to auth.
// Since we're matching by address, we have to return all entries
// some of which may be from re-installed hubs; and we'll need to
// try each sequentially to see if one can pass the test
$x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash
where hubloc_addr = '%s' order by hubloc_id desc",
dbesc($address)
);
if(! $x) {
// finger them if they can't be found.
$ret = zot_finger($address, null);
if ($ret['success']) {
$j = json_decode($ret['body'], true);
if($j)
import_xchan($j);
$x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash
where hubloc_addr = '%s' order by hubloc_id desc",
dbesc($address)
);
}
}
if(! $x) {
logger('mod_zot: auth: unable to finger ' . $address);
$this->Debug('no hubloc found for ' . $address . ' and probing failed.');
$this->Finalise();
}
return $x;
}
function Verify($channel,$hubloc) {
logger('auth request received from ' . $hubloc['hubloc_addr'] );
$this->remote = remote_channel();
$this->remote_service_class = '';
$this->remote_level = 0;
$this->remote_hub = $hubloc['hubloc_url'];
$this->dnt = 0;
// check credentials and access
// If they are already authenticated and haven't changed credentials,
// we can save an expensive network round trip and improve performance.
// Also check that they are coming from the same site as they authenticated with originally.
$already_authed = (((remote_channel()) && ($hubloc['hubloc_hash'] == remote_channel())
&& ($hubloc['hubloc_url'] === $_SESSION['remote_hub'])) ? true : false);
if($this->delegate && $this->delegate !== $_SESSION['delegate_channel'])
$already_authed = false;
if($already_authed)
return true;
if(local_channel()) {
// tell them to logout if they're logged in locally as anything but the target remote account
// in which case just shut up because they don't need to be doing this at all.
if (get_app()->channel['channel_hash'] == $hubloc['xchan_hash']) {
return true;
}
else {
logger('already authenticated locally as somebody else.');
notice( t('Remote authentication blocked. You are logged into this site locally. Please logout and retry.') . EOL);
if($this->test) {
$this->Debug('already logged in locally with a conflicting identity.');
return false;
}
}
return false;
}
// Auth packets MUST use ultra top-secret hush-hush mode - e.g. the entire packet is encrypted using the
// site private key
// The actual channel sending the packet ($c[0]) is not important, but this provides a
// generic zot packet with a sender which can be verified
$p = zot_build_packet($channel,$type = 'auth_check',
array(array('guid' => $hubloc['hubloc_guid'],'guid_sig' => $hubloc['hubloc_guid_sig'])),
$hubloc['hubloc_sitekey'], $this->sec);
$this->Debug('auth check packet created using sitekey ' . $hubloc['hubloc_sitekey']);
$this->Debug('packet contents: ' . $p);
$result = zot_zot($hubloc['hubloc_callback'],$p);
if(! $result['success']) {
logger('auth_check callback failed.');
if($this->test)
$this->Debug('auth check request to your site returned .' . print_r($result, true));
return false;
}
$j = json_decode($result['body'], true);
if(! $j) {
logger('auth_check json data malformed.');
if($this->test)
$this->Debug('json malformed: ' . $result['body']);
return false;
}
$this->Debug('auth check request returned .' . print_r($j, true));
if(! $j['success'])
return false;
// legit response, but we do need to check that this wasn't answered by a man-in-middle
if (! rsa_verify($this->sec . $hubloc['xchan_hash'],base64url_decode($j['confirm']),$hubloc['xchan_pubkey'])) {
logger('final confirmation failed.');
if($this->test)
$this->Debug('final confirmation failed. ' . $sec . print_r($j,true) . print_r($hubloc,true));
return false;
}
if (array_key_exists('service_class',$j))
$this->remote_service_class = $j['service_class'];
if (array_key_exists('level',$j))
$this->remote_level = $j['level'];
if (array_key_exists('DNT',$j))
$this->dnt = $j['DNT'];
// log them in
if ($this->test) {
// testing only - return the success result
$this->test_results['success'] = true;
$this->Debug('Authentication Success!');
$this->Finalise();
}
$_SESSION['authenticated'] = 1;
// check for delegation and if all is well, log them in locally with delegation restrictions
$this->delegate_success = false;
if($this->delegate) {
$r = q("select * from channel left join xchan on channel_hash = xchan_hash where xchan_addr = '%s' limit 1",
dbesc($this->delegate)
);
if ($r && intval($r[0]['channel_id'])) {
$allowed = perm_is_allowed($r[0]['channel_id'],$hubloc['xchan_hash'],'delegate');
if($allowed) {
$_SESSION['delegate_channel'] = $r[0]['channel_id'];
$_SESSION['delegate'] = $hubloc['xchan_hash'];
$_SESSION['account_id'] = intval($r[0]['channel_account_id']);
require_once('include/security.php');
// this will set the local_channel authentication in the session
change_channel($r[0]['channel_id']);
$this->delegate_success = true;
}
}
}
if (! $this->delegate_success) {
// normal visitor (remote_channel) login session credentials
$_SESSION['visitor_id'] = $hubloc['xchan_hash'];
$_SESSION['my_url'] = $hubloc['xchan_url'];
$_SESSION['my_address'] = $this->address;
$_SESSION['remote_service_class'] = $this->remote_service_class;
$_SESSION['remote_level'] = $this->remote_level;
$_SESSION['remote_hub'] = $this->remote_hub;
$_SESSION['DNT'] = $this->dnt;
}
$arr = array('xchan' => $hubloc, 'url' => $this->desturl, 'session' => $_SESSION);
call_hooks('magic_auth_success',$arr);
get_app()->set_observer($hubloc);
require_once('include/security.php');
get_app()->set_groups(init_groups_visitor($_SESSION['visitor_id']));
info(sprintf( t('Welcome %s. Remote authentication successful.'),$hubloc['xchan_name']));
logger('mod_zot: auth success from ' . $hubloc['xchan_addr']);
$this->success = true;
return true;
}
function Debug($msg) {
$this->debug_msg .= $msg . EOL;
}
function Finalise() {
if($this->test) {
$this->test_results['message'] = $this->debug_msg;
json_return_and_die($this->test_results);
}
goaway($this->desturl);
}
}
/**
*
* Magic Auth
* ==========
*
* So-called "magic auth" takes place by a special exchange. On the site where the "channel to be authenticated" lives (e.g. $mysite),
* a redirection is made via $mysite/magic to the zot endpoint of the remote site ($remotesite) with special GET parameters.
*
* The endpoint is typically https://$remotesite/post - or whatever was specified as the callback url in prior communications
* (we will bootstrap an address and fetch a zot info packet if possible where no prior communications exist)
*
* Five GET parameters are supplied:
* * auth => the urlencoded webbie (channel@host.domain) of the channel requesting access
* * dest => the desired destination URL (urlencoded)
* * sec => a random string which is also stored on $mysite for use during the verification phase.
* * version => the zot revision
* * delegate => optional urlencoded webbie of a local channel to invoke delegation rights for
*
* * test => (optional 1 or 0 - debugs the authentication exchange and returns a json response instead of redirecting the browser session)
*
* When this packet is received, an "auth-check" zot message is sent to $mysite.
* (e.g. if $_GET['auth'] is foobar@podunk.edu, a zot packet is sent to the podunk.edu zot endpoint, which is typically /post)
* If no information has been recorded about the requesting identity a zot information packet will be retrieved before
* continuing.
*
* The sender of this packet is an arbitrary/random site channel. The recipients will be a single recipient corresponding
* to the guid and guid_sig we have associated with the requesting auth identity
*
* \code{.json}
* {
* "type":"auth_check",
* "sender":{
* "guid":"kgVFf_...",
* "guid_sig":"PT9-TApz...",
* "url":"http:\/\/podunk.edu",
* "url_sig":"T8Bp7j...",
* "sitekey":"aMtgKTiirXrICP..."
* },
* "recipients":{
* {
* "guid":"ZHSqb...",
* "guid_sig":"JsAAXi..."
* }
* }
* "callback":"\/post",
* "version":1,
* "secret":"1eaa661",
* "secret_sig":"eKV968b1..."
* }
* \endcode
*
* auth_check messages MUST use encapsulated encryption. This message is sent to the origination site, which checks the 'secret' to see
* if it is the same as the 'sec' which it passed originally. It also checks the secret_sig which is the secret signed by the
* destination channel's private key and base64url encoded. If everything checks out, a json packet is returned:
*
* \code{.json}
* {
* "success":1,
* "confirm":"q0Ysovd1u...",
* "service_class":(optional)
* "level":(optional)
* "DNT": (optional do-not-track - 1 or 0)
* }
* \endcode
*
* 'confirm' in this case is the base64url encoded RSA signature of the concatenation of 'secret' with the
* base64url encoded whirlpool hash of the requestor's guid and guid_sig; signed with the source channel private key.
* This prevents a man-in-the-middle from inserting a rogue success packet. Upon receipt and successful
* verification of this packet, the destination site will redirect to the original destination URL and indicate a successful remote login.
* Service_class can be used by cooperating sites to provide different access rights based on account rights and subscription plans. It is
* a string whose contents are not defined by protocol. Example: "basic" or "gold".
*
* @param[in,out] App &$a
*/

55
Zotlabs/Zot/DReport.php Normal file
View File

@@ -0,0 +1,55 @@
<?php
namespace Zotlabs\Zot;
class DReport {
private $location;
private $sender;
private $recipient;
private $message_id;
private $status;
private $date;
function __construct($location,$sender,$recipient,$message_id,$status = 'deliver') {
$this->location = $location;
$this->sender = $sender;
$this->recipient = $recipient;
$this->message_id = $message_id;
$this->status = $status;
$this->date = datetime_convert();
}
function update($status) {
$this->status = $status;
$this->date = datetime_convert();
}
function addto_recipient($name) {
$this->recipient = $this->recipient . ' ' . $name;
}
function addto_update($status) {
$this->status = $this->status . ' ' . $status;
}
function set($arr) {
$this->location = $arr['location'];
$this->sender = $arr['sender'];
$this->recipient = $arr['recipient'];
$this->message_id = $arr['message_id'];
$this->status = $arr['status'];
$this->date = $arr['date'];
}
function get() {
return array(
'location' => $this->location,
'sender' => $this->sender,
'recipient' => $this->recipient,
'message_id' => $this->message_id,
'status' => $this->status,
'date' => $this->date
);
}
}

22
Zotlabs/Zot/IHandler.php Normal file
View File

@@ -0,0 +1,22 @@
<?php
namespace Zotlabs\Zot;
interface IHandler {
function Ping();
function Pickup($data);
function Notify($data);
function Request($data);
function AuthCheck($data,$encrypted);
function Purge($sender,$recipients);
function Refresh($sender,$recipients);
}

297
Zotlabs/Zot/Receiver.php Normal file
View File

@@ -0,0 +1,297 @@
<?php
namespace Zotlabs\Zot;
class Receiver {
protected $data;
protected $encrypted;
protected $error;
protected $messagetype;
protected $sender;
protected $validated;
protected $recipients;
protected $response;
protected $handler;
function __construct($data,$prvkey,$handler) {
$this->error = false;
$this->validated = false;
$this->messagetype = '';
$this->response = array('success' => false);
$this->handler = $handler;
if(! is_array($data))
$data = json_decode($data,true);
if($data && is_array($data)) {
$this->encrypted = ((array_key_exists('iv',$data)) ? true : false);
if($this->encrypted) {
$this->data = @json_decode(@crypto_unencapsulate($data,$prvkey),true);
}
if(! $this->data)
$this->data = $data;
if($this->data && is_array($this->data) && array_key_exists('type',$this->data))
$this->messagetype = $this->data['type'];
}
if(! $this->messagetype)
$this->error = true;
if($this->data) {
$this->sender = ((array_key_exists('sender',$this->data)) ? $this->data['sender'] : null);
$this->recipients = ((array_key_exists('recipients',$this->data)) ? $this->data['recipients'] : null);
}
if($this->sender)
$this->ValidateSender();
$this->Dispatch();
}
function ValidateSender() {
$hubs = zot_gethub($this->sender,true);
if (! $hubs) {
/* Have never seen this guid or this guid coming from this location. Check it and register it. */
/* (!!) this will validate the sender. */
$result = zot_register_hub($this->sender);
if ((! $result['success']) || (! ($hubs = zot_gethub($this->sender,true)))) {
$this->response['message'] = 'Hub not available.';
json_return_and_die($this->response);
}
}
foreach($hubs as $hub) {
update_hub_connected($hub,((array_key_exists('sitekey',$this->sender)) ? $this->sender['sitekey'] : ''));
}
$this->validated = true;
}
function Dispatch() {
/* Handle tasks which don't require sender validation */
switch($this->messagetype) {
case 'ping':
/* no validation needed */
$this->handler->Ping();
break;
case 'pickup':
/* perform site validation, as opposed to sender validation */
$this->handler->Pickup($this->data);
break;
default:
if(! $this->validated) {
$this->response['message'] = 'Sender not valid';
json_return_and_die($this->response);
}
break;
}
/* Now handle tasks which require sender validation */
switch($this->messagetype) {
case 'auth_check':
$this->handler->AuthCheck($this->data,$this->encrypted);
break;
case 'request':
$this->handler->Request($this->data);
break;
case 'purge':
$this->handler->Purge($this->sender,$this->recipients);
break;
case 'refresh':
case 'force_refresh':
$this->handler->Refresh($this->sender,$this->recipients);
break;
case 'notify':
$this->handler->Notify($this->data);
break;
default:
$this->response['message'] = 'Not implemented';
json_return_and_die($this->response);
break;
}
}
}
/**
* @brief zot communications and messaging.
*
* Sender HTTP posts to this endpoint ($site/post typically) with 'data' parameter set to json zot message packet.
* This packet is optionally encrypted, which we will discover if the json has an 'iv' element.
* $contents => array( 'alg' => 'aes256cbc', 'iv' => initialisation vector, 'key' => decryption key, 'data' => encrypted data);
* $contents->iv and $contents->key are random strings encrypted with this site's RSA public key and then base64url encoded.
* Currently only 'aes256cbc' is used, but this is extensible should that algorithm prove inadequate.
*
* Once decrypted, one will find the normal json_encoded zot message packet.
*
* Defined packet types are: notify, purge, refresh, force_refresh, auth_check, ping, and pickup
*
* Standard packet: (used by notify, purge, refresh, force_refresh, and auth_check)
* \code{.json}
* {
* "type": "notify",
* "sender":{
* "guid":"kgVFf_1...",
* "guid_sig":"PT9-TApzp...",
* "url":"http:\/\/podunk.edu",
* "url_sig":"T8Bp7j5...",
* },
* "recipients": { optional recipient array },
* "callback":"\/post",
* "version":1,
* "secret":"1eaa...",
* "secret_sig": "df89025470fac8..."
* }
* \endcode
*
* Signature fields are all signed with the sender channel private key and base64url encoded.
* Recipients are arrays of guid and guid_sig, which were previously signed with the recipients private
* key and base64url encoded and later obtained via channel discovery. Absence of recipients indicates
* a public message or visible to all potential listeners on this site.
*
* "pickup" packet:
* The pickup packet is sent in response to a notify packet from another site
* \code{.json}
* {
* "type":"pickup",
* "url":"http:\/\/example.com",
* "callback":"http:\/\/example.com\/post",
* "callback_sig":"teE1_fLI...",
* "secret":"1eaa...",
* "secret_sig":"O7nB4_..."
* }
* \endcode
*
* In the pickup packet, the sig fields correspond to the respective data
* element signed with this site's system private key and then base64url encoded.
* The "secret" is the same as the original secret from the notify packet.
*
* If verification is successful, a json structure is returned containing a
* success indicator and an array of type 'pickup'.
* Each pickup element contains the original notify request and a message field
* whose contents are dependent on the message type.
*
* This JSON array is AES encapsulated using the site public key of the site
* that sent the initial zot pickup packet.
* Using the above example, this would be example.com.
*
* \code{.json}
* {
* "success":1,
* "pickup":{
* "notify":{
* "type":"notify",
* "sender":{
* "guid":"kgVFf_...",
* "guid_sig":"PT9-TApz...",
* "url":"http:\/\/z.podunk.edu",
* "url_sig":"T8Bp7j5D..."
* },
* "callback":"\/post",
* "version":1,
* "secret":"1eaa661..."
* },
* "message":{
* "type":"activity",
* "message_id":"10b049ce384cbb2da9467319bc98169ab36290b8bbb403aa0c0accd9cb072e76@podunk.edu",
* "message_top":"10b049ce384cbb2da9467319bc98169ab36290b8bbb403aa0c0accd9cb072e76@podunk.edu",
* "message_parent":"10b049ce384cbb2da9467319bc98169ab36290b8bbb403aa0c0accd9cb072e76@podunk.edu",
* "created":"2012-11-20 04:04:16",
* "edited":"2012-11-20 04:04:16",
* "title":"",
* "body":"Hi Nickordo",
* "app":"",
* "verb":"post",
* "object_type":"",
* "target_type":"",
* "permalink":"",
* "location":"",
* "longlat":"",
* "owner":{
* "name":"Indigo",
* "address":"indigo@podunk.edu",
* "url":"http:\/\/podunk.edu",
* "photo":{
* "mimetype":"image\/jpeg",
* "src":"http:\/\/podunk.edu\/photo\/profile\/m\/5"
* },
* "guid":"kgVFf_...",
* "guid_sig":"PT9-TAp...",
* },
* "author":{
* "name":"Indigo",
* "address":"indigo@podunk.edu",
* "url":"http:\/\/podunk.edu",
* "photo":{
* "mimetype":"image\/jpeg",
* "src":"http:\/\/podunk.edu\/photo\/profile\/m\/5"
* },
* "guid":"kgVFf_...",
* "guid_sig":"PT9-TAp..."
* }
* }
* }
* }
* \endcode
*
* Currently defined message types are 'activity', 'mail', 'profile', 'location'
* and 'channel_sync', which each have different content schemas.
*
* Ping packet:
* A ping packet does not require any parameters except the type. It may or may
* not be encrypted.
*
* \code{.json}
* {
* "type": "ping"
* }
* \endcode
*
* On receipt of a ping packet a ping response will be returned:
*
* \code{.json}
* {
* "success" : 1,
* "site" {
* "url": "http:\/\/podunk.edu",
* "url_sig": "T8Bp7j5...",
* "sitekey": "-----BEGIN PUBLIC KEY-----
* MIICIjANBgkqhkiG9w0BAQE..."
* }
* }
* \endcode
*
* The ping packet can be used to verify that a site has not been re-installed, and to
* initiate corrective action if it has. The url_sig is signed with the site private key
* and base64url encoded - and this should verify with the enclosed sitekey. Failure to
* verify indicates the site is corrupt or otherwise unable to communicate using zot.
* This return packet is not otherwise verified, so should be compared with other
* results obtained from this site which were verified prior to taking action. For instance
* if you have one verified result with this signature and key, and other records for this
* url which have different signatures and keys, it indicates that the site was re-installed
* and corrective action may commence (remove or mark invalid any entries with different
* signatures).
* If you have no records which match this url_sig and key - no corrective action should
* be taken as this packet may have been returned by an imposter.
*
* @param[in,out] App &$a
*/

View File

@@ -0,0 +1,35 @@
<?php
namespace Zotlabs\Zot;
class ZotHandler implements IHandler {
function Ping() {
zot_reply_ping();
}
function Pickup($data) {
zot_reply_pickup($data);
}
function Notify($data) {
zot_reply_notify($data);
}
function Request($data) {
zot_reply_message_request($data);
}
function AuthCheck($data,$encrypted) {
zot_reply_auth_check($data,$encrypted);
}
function Purge($sender,$recipients) {
zot_reply_purge($sender,$recipients);
}
function Refresh($sender,$recipients) {
zot_reply_refresh($sender,$recipients);
}
}

4
app/firefoxshare.apd Normal file
View File

@@ -0,0 +1,4 @@
url: $baseurl/ffsapi
requires: local_channel
name: Firefox Share
photo: $baseurl/app/firefoxshare.png

BIN
app/firefoxshare.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

4
app/grid.apd Normal file
View File

@@ -0,0 +1,4 @@
url: $baseurl/network
requires: local_channel
name: Grid
photo: $baseurl/images/hubzilla_logo_6.png

View File

@@ -1,4 +0,0 @@
url: $baseurl/network
requires: local_channel
name: Matrix
photo: $baseurl/app/matrix.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

214
boot.php
View File

@@ -7,12 +7,12 @@
/**
* Hubzilla.
*
* The Hubzilla (aka "Red") is an open source decentralised communications
* Hubzilla is an open source decentralised communications
* platform combined with a decentralised identity/authentication framework
* wrapped in an extensible content management system, providing website designers
* the ability to embed fully decentralised communications and social tools
* into many traditional website designs (blogs, forums, small business
* websites, charitable organisations, etc.). Red also provides DNS mobility
* websites, charitable organisations, etc.). Hubzilla also provides DNS mobility
* and internet scale privacy/access control.
*
* This allows any individual website to participate in a matrix of linked
@@ -46,10 +46,12 @@ require_once('include/account.php');
define ( 'PLATFORM_NAME', 'hubzilla' );
define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R');
define ( 'RED_VERSION', trim(file_get_contents('version.inc')));
define ( 'STD_VERSION', '1.2.5' );
define ( 'ZOT_REVISION', 1 );
define ( 'DB_UPDATE_VERSION', 1145 );
define ( 'DB_UPDATE_VERSION', 1165 );
/**
* @brief Constant with a HTML line break.
@@ -63,10 +65,10 @@ define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
//define ( 'NULL_DATE', '0000-00-00 00:00:00' );
define ( 'TEMPLATE_BUILD_PATH', 'store/[data]/smarty3' );
define ( 'DIRECTORY_MODE_NORMAL', 0x0000); // This is technically DIRECTORY_MODE_TERTIARY, but it's the default, hence 0x0000
define ( 'DIRECTORY_MODE_PRIMARY', 0x0001);
define ( 'DIRECTORY_MODE_SECONDARY', 0x0002);
define ( 'DIRECTORY_MODE_STANDALONE', 0x0100);
define ( 'DIRECTORY_MODE_NORMAL', 0x0000); // A directory client
define ( 'DIRECTORY_MODE_PRIMARY', 0x0001); // There can only be *one* primary directory server in a directory_realm.
define ( 'DIRECTORY_MODE_SECONDARY', 0x0002); // All other mirror directory servers
define ( 'DIRECTORY_MODE_STANDALONE', 0x0100); // A detached (off the grid) hub with itself as directory server.
// We will look for upstream directories whenever me make contact
// with other sites, but if this is a new installation and isn't
@@ -78,11 +80,12 @@ define ( 'DIRECTORY_FALLBACK_MASTER', 'https://zothub.com');
$DIRECTORY_FALLBACK_SERVERS = array(
'https://zothub.com',
'https://zotid.net',
'https://red.zottel.red',
'https://redmatrix.info',
'https://hubzilla.site',
'https://hubzilla.zottel.net',
'https://hub.pixelbits.de',
'https://my.federated.social',
'https://redmatrix.nl'
'https://hubzilla.nl',
'https://blablanet.es'
);
@@ -242,6 +245,21 @@ define ( 'PHOTO_COVER', 0x0010 );
define ( 'PHOTO_ADULT', 0x0008 );
define ( 'PHOTO_FLAG_OS', 0x4000 );
define ( 'PHOTO_RES_ORIG', 0 );
define ( 'PHOTO_RES_1024', 1 ); // rectangular 1024 max width or height, floating height if not (4:3)
define ( 'PHOTO_RES_640', 2 ); // to accomodate SMBC vertical comic strips without scrunching the width
define ( 'PHOTO_RES_320', 3 ); // accordingly
define ( 'PHOTO_RES_PROFILE_300', 4 ); // square 300 px
define ( 'PHOTO_RES_PROFILE_80', 5 ); // square 80 px
define ( 'PHOTO_RES_PROFILE_48', 6 ); // square 48 px
define ( 'PHOTO_RES_COVER_1200', 7 ); // 1200w x 435h (2.75:1)
define ( 'PHOTO_RES_COVER_850', 8 ); // 850w x 310h
define ( 'PHOTO_RES_COVER_425', 9 ); // 425w x 160h
/**
* Menu types
*/
@@ -253,11 +271,11 @@ define ( 'MENU_BOOKMARK', 0x0002 );
* Network and protocol family types
*/
define ( 'NETWORK_DFRN', 'dfrn'); // Friendica, Mistpark, other DFRN implementations
define ( 'NETWORK_ZOT', 'zot!'); // Zot!
define ( 'NETWORK_DFRN', 'friendica-over-diaspora'); // Friendica, Mistpark, other DFRN implementations
define ( 'NETWORK_ZOT', 'zot'); // Zot!
define ( 'NETWORK_OSTATUS', 'stat'); // status.net, identi.ca, GNU-social, other OStatus implementations
define ( 'NETWORK_FEED', 'feed'); // RSS/Atom feeds with no known "post/notify" protocol
define ( 'NETWORK_DIASPORA', 'dspr'); // Diaspora
define ( 'NETWORK_FEED', 'rss'); // RSS/Atom feeds with no known "post/notify" protocol
define ( 'NETWORK_DIASPORA', 'diaspora'); // Diaspora
define ( 'NETWORK_MAIL', 'mail'); // IMAP/POP
define ( 'NETWORK_MAIL2', 'mai2'); // extended IMAP/POP
define ( 'NETWORK_FACEBOOK', 'face'); // Facebook API
@@ -333,6 +351,12 @@ define ( 'MENU_ITEM_ZID', 0x0001);
define ( 'MENU_ITEM_NEWWIN', 0x0002);
define ( 'MENU_ITEM_CHATROOM', 0x0004);
define ( 'SITE_TYPE_ZOT', 0);
define ( 'SITE_TYPE_NOTZOT', 1);
define ( 'SITE_TYPE_UNKNOWN', 2);
/**
* Poll/Survey types
*/
@@ -415,6 +439,7 @@ define ( 'TERM_SAVEDSEARCH', 6 );
define ( 'TERM_THING', 7 );
define ( 'TERM_BOOKMARK', 8 );
define ( 'TERM_HIERARCHY', 9 );
define ( 'TERM_COMMUNITYTAG', 10 );
define ( 'TERM_OBJ_POST', 1 );
define ( 'TERM_OBJ_PHOTO', 2 );
@@ -472,6 +497,11 @@ define ( 'ACTIVITY_POST', NAMESPACE_ACTIVITY_SCHEMA . 'post' );
define ( 'ACTIVITY_UPDATE', NAMESPACE_ACTIVITY_SCHEMA . 'update' );
define ( 'ACTIVITY_TAG', NAMESPACE_ACTIVITY_SCHEMA . 'tag' );
define ( 'ACTIVITY_FAVORITE', NAMESPACE_ACTIVITY_SCHEMA . 'favorite' );
define ( 'ACTIVITY_CREATE', NAMESPACE_ACTIVITY_SCHEMA . 'create' );
define ( 'ACTIVITY_WIN', NAMESPACE_ACTIVITY_SCHEMA . 'win' );
define ( 'ACTIVITY_LOSE', NAMESPACE_ACTIVITY_SCHEMA . 'lose' );
define ( 'ACTIVITY_TIE', NAMESPACE_ACTIVITY_SCHEMA . 'tie' );
define ( 'ACTIVITY_COMPLETE', NAMESPACE_ACTIVITY_SCHEMA . 'complete' );
define ( 'ACTIVITY_POKE', NAMESPACE_ZOT . '/activity/poke' );
define ( 'ACTIVITY_MOOD', NAMESPACE_ZOT . '/activity/mood' );
@@ -484,6 +514,7 @@ define ( 'ACTIVITY_OBJ_P_PHOTO', NAMESPACE_ACTIVITY_SCHEMA . 'profile-photo' );
define ( 'ACTIVITY_OBJ_ALBUM', NAMESPACE_ACTIVITY_SCHEMA . 'photo-album' );
define ( 'ACTIVITY_OBJ_EVENT', NAMESPACE_ACTIVITY_SCHEMA . 'event' );
define ( 'ACTIVITY_OBJ_GROUP', NAMESPACE_ACTIVITY_SCHEMA . 'group' );
define ( 'ACTIVITY_OBJ_GAME', NAMESPACE_ACTIVITY_SCHEMA . 'game' );
define ( 'ACTIVITY_OBJ_TAGTERM', NAMESPACE_ZOT . '/activity/tagterm' );
define ( 'ACTIVITY_OBJ_PROFILE', NAMESPACE_ZOT . '/activity/profile' );
define ( 'ACTIVITY_OBJ_THING', NAMESPACE_ZOT . '/activity/thing' );
@@ -544,6 +575,9 @@ define ( 'ITEM_TYPE_WEBPAGE', 3 );
define ( 'ITEM_TYPE_BUG', 4 );
define ( 'ITEM_TYPE_DOC', 5 );
define ( 'ITEM_IS_STICKY', 1000 );
define ( 'DBTYPE_MYSQL', 0 );
define ( 'DBTYPE_POSTGRES', 1 );
@@ -589,6 +623,21 @@ function startup() {
}
}
class ZotlabsAutoloader {
static public function loader($className) {
$filename = str_replace('\\', '/', $className) . ".php";
if (file_exists($filename)) {
include($filename);
if (class_exists($className)) {
return TRUE;
}
}
return FALSE;
}
}
/**
* class: App
*
@@ -612,10 +661,9 @@ class App {
public $poi = null; // "person of interest", generally a referenced connection
private $oauth_key = null; // consumer_id of oauth request, if used
public $layout = array(); // Comanche parsed template
public $pdl = null;
public $pdl = null; // Comanche page description
private $perms = null; // observer permissions
private $widgets = array(); // widgets for this page
//private $widgetlist = null; // widget ordering and inclusion directives
public $groups;
public $language;
@@ -694,11 +742,18 @@ class App {
'smarty3' => '}}'
);
// These represent the URL which was used to access the page
private $scheme;
private $hostname;
private $baseurl;
private $path;
// This is our standardised URL - regardless of what was used
// to access the page
private $baseurl;
/**
* App constructor.
*/
@@ -717,7 +772,6 @@ class App {
set_include_path(
'include' . PATH_SEPARATOR
. 'library' . PATH_SEPARATOR
. 'library/phpsec' . PATH_SEPARATOR
. 'library/langdet' . PATH_SEPARATOR
. '.' );
@@ -801,7 +855,7 @@ class App {
$this->is_mobile = $mobile_detect->isMobile();
$this->is_tablet = $mobile_detect->isTablet();
$this->head_set_icon('/images/rm-32.png');
$this->head_set_icon('/images/hz-32.png');
BaseObject::set_app($this);
@@ -814,6 +868,9 @@ class App {
$this->register_template_engine($k);
}
}
spl_autoload_register('ZotlabsAutoloader::loader');
}
function get_baseurl($ssl = false) {
@@ -823,7 +880,7 @@ class App {
&& array_key_exists('baseurl',$this->config['system'])
&& strlen($this->config['system']['baseurl'])) {
$url = $this->config['system']['baseurl'];
$url = trim($url,'\\/');
return $url;
}
@@ -841,6 +898,7 @@ class App {
&& array_key_exists('baseurl',$this->config['system'])
&& strlen($this->config['system']['baseurl'])) {
$url = $this->config['system']['baseurl'];
$url = trim($url,'\\/');
}
$parsed = @parse_url($url);
@@ -858,6 +916,11 @@ class App {
}
}
function get_scheme() {
return $this->scheme;
}
function get_hostname() {
return $this->hostname;
}
@@ -931,26 +994,6 @@ class App {
return $this->groups;
}
function set_widget($title,$html, $location = 'aside') {
$this->widgets[] = array('title' => $title, 'html' => $html, 'location' => $location);
}
function get_widgets($location = '') {
if($location && count($this->widgets)) {
$ret = array();
foreach($this->widgets as $w) {
if ($w['location'] == $location)
$ret[] = $w;
}
$arr = array('location' => $location, 'widgets' => $ret);
call_hooks('get_widgets', $arr);
return $arr['widgets'];
}
$arr = array('location' => $location, 'widgets' => $this->widgets);
call_hooks('get_widgets', $arr);
return $arr['widgets'];
}
function set_pager_total($n) {
$this->pager['total'] = intval($n);
}
@@ -966,6 +1009,10 @@ class App {
if ($user_scalable === false)
$user_scalable = 1;
$preload_images = ((local_channel()) ? get_pconfig(local_channel(),'system','preload_images') : 0);
if ($preload_images === false)
$preload_images = 0;
$interval = ((local_channel()) ? get_pconfig(local_channel(),'system','update_interval') : 80000);
if($interval < 10000)
$interval = 80000;
@@ -979,10 +1026,11 @@ class App {
*/
$tpl = get_markup_template('head.tpl');
$this->page['htmlhead'] = replace_macros($tpl, array(
'$preload_images' => $preload_images,
'$user_scalable' => $user_scalable,
'$baseurl' => $this->get_baseurl(),
'$local_channel' => local_channel(),
'$generator' => PLATFORM_NAME . ' ' . RED_VERSION,
'$generator' => Zotlabs\Project\System::get_platform_name() . ((Zotlabs\Project\System::get_project_version()) ? ' ' . Zotlabs\Project\System::get_project_version() : ''),
'$update_interval' => $interval,
'$icon' => head_get_icon(),
'$head_css' => head_get_css(),
@@ -1056,18 +1104,7 @@ class App {
}
function set_template_engine($engine = 'smarty3') {
$this->theme['template_engine'] = $engine;
/*if ($engine) {
case 'smarty3':
if(!is_writable(TEMPLATE_BUILD_PATH))
echo "<b>ERROR</b> folder <tt>" . TEMPLATE_BUILD_PATH . "</tt> must be writable by webserver."; killme();
break;
default:
break;
}*/
}
function get_template_ldelim($engine = 'smarty3') {
@@ -1180,7 +1217,7 @@ function z_root() {
}
/**
* @brief Return absolut URL for given $path.
* @brief Return absolute URL for given $path.
*
* @param string $path
*
@@ -1346,7 +1383,7 @@ function check_config(&$a) {
*
*/
$r = q("SELECT * FROM `addon` WHERE `installed` = 1");
$r = q("SELECT * FROM addon WHERE installed = 1");
if($r)
$installed = $r;
else
@@ -1382,6 +1419,9 @@ function check_config(&$a) {
}
load_hooks();
check_cron_broken();
}
@@ -1492,12 +1532,6 @@ function login($register = false, $form_id = 'main-login', $hiddens=false) {
$tpl = get_markup_template("logout.tpl");
}
else {
// There's no such thing as login_head.tpl, has never been in Red, removed from Friendica 1 Jun 2013...
// $a->page['htmlhead'] .= replace_macros(get_markup_template("login_head.tpl"), array(
// '$baseurl' => $a->get_baseurl(true)
// ));
$tpl = get_markup_template("login.tpl");
if(strlen($a->query_string))
$_SESSION['login_return_url'] = $a->query_string;
@@ -1548,6 +1582,10 @@ function goaway($s) {
* @return int|bool account_id or false
*/
function get_account_id() {
if(intval($_SESSION['account_id']))
return intval($_SESSION['account_id']);
if(get_app()->account)
return intval(get_app()->account['account_id']);
@@ -1718,8 +1756,12 @@ function proc_run($cmd){
$cmd = "cmd /c start \"title\" /D \"$cwd\" /b $cmdline";
proc_close(proc_open($cmd, array(), $foo));
}
else
proc_close(proc_open($cmdline ." &", array(), $foo));
else {
if(get_config('system','use_proc_open'))
proc_close(proc_open($cmdline ." &", array(), $foo));
else
exec($cmdline . ' > /dev/null &');
}
}
/**
@@ -2002,10 +2044,17 @@ function load_pdl(&$a) {
require_once('include/comanche.php');
if (! count($a->layout)) {
$arr = array('module' => $a->module, 'layout' => '');
call_hooks('load_pdl',$arr);
$layout = $arr['layout'];
$n = 'mod_' . $a->module . '.pdl' ;
$u = comanche_get_channel_id();
if($u)
$s = get_pconfig($u, 'system', $n);
if(! $s)
$s = $layout;
if((! $s) && (($p = theme_include($n)) != ''))
$s = @file_get_contents($p);
@@ -2014,6 +2063,7 @@ function load_pdl(&$a) {
$a->pdl = $s;
}
}
}
@@ -2075,15 +2125,8 @@ function construct_page(&$a) {
$a->build_pagehead();
$arr = $a->get_widgets();
ksort($arr, SORT_NUMERIC);
if(count($arr)) {
foreach($arr as $x) {
if(! array_key_exists($x['location'], $a->page))
$a->page[$x['location']] = '';
$a->page[$x['location']] .= $x['html'];
}
if($a->page['pdl_content']) {
$a->page['content'] = comanche_region($a,$a->page['content']);
}
// Let's say we have a comanche declaration '[region=nav][/region][region=content]$nav $content[/region]'.
@@ -2100,6 +2143,7 @@ function construct_page(&$a) {
call_hooks('construct_page', $arr);
$a->layout = $arr['layout'];
foreach($a->layout as $k => $v) {
if((strpos($k, 'region_') === 0) && strlen($v)) {
if(strpos($v, '$region_') !== false) {
@@ -2143,6 +2187,24 @@ function construct_page(&$a) {
header("Content-type: text/html; charset=utf-8");
// security headers - see https://securityheaders.io
if($a->get_scheme() === 'https' && $a->config['system']['transport_security_header'])
header("Strict-Transport-Security: max-age=31536000");
if($a->config['system']['content_security_policy'])
header("Content-Security-Policy: script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'");
if($a->config['system']['x_security_headers']) {
header("X-Frame-Options: SAMEORIGIN");
header("X-Xss-Protection: 1; mode=block;");
header("X-Content-Type-Options: nosniff");
}
if($a->config['system']['public_key_pins']) {
header("Public-Key-Pins: " . $a->config['system']['public_key_pins']);
}
require_once(theme_include(
((x($a->page, 'template')) ? $a->page['template'] : 'default' ) . '.php' )
);
@@ -2271,7 +2333,7 @@ function cert_bad_email() {
'$error' => t('Website SSL certificate is not valid. Please correct.')
));
$subject = email_header_encode(sprintf(t('[red] Website SSL error for %s'), $a->get_hostname()));
$subject = email_header_encode(sprintf(t('[hubzilla] Website SSL error for %s'), $a->get_hostname()));
mail($a->config['system']['admin_email'], $subject, $email_msg,
'From: Administrator' . '@' . $a->get_hostname() . "\n"
. 'Content-type: text/plain; charset=UTF-8' . "\n"
@@ -2312,7 +2374,7 @@ function check_cron_broken() {
'$lastdate' => (($d)? $d : t('never'))
));
$subject = email_header_encode(sprintf(t('[red] Cron tasks not running on %s'), $a->get_hostname()));
$subject = email_header_encode(sprintf(t('[hubzilla] Cron tasks not running on %s'), $a->get_hostname()));
mail($a->config['system']['admin_email'], $subject, $email_msg,
'From: Administrator' . '@' . $a->get_hostname() . "\n"
. 'Content-type: text/plain; charset=UTF-8' . "\n"
@@ -2320,3 +2382,5 @@ function check_cron_broken() {
set_config('system','lastpollcheck',datetime_convert());
return;
}

View File

@@ -57,9 +57,9 @@ Private messages are encrypted during transport and storage. In this day and age
This provides the ability to select posts by date ranges
**Collections Filter**
**Privacy Group Filter**
Enable widget to display stream posts only from selected collections. This also toggles the outbound permissions while you are viewing a collection. This is analogous to Google "circles" or Disapora "aspects".
Enable widget to display stream posts only from selected groups of connection. This also toggles the outbound permissions while you are viewing a privacy group. This is analogous to Google "circles" or Disapora "aspects".
**Saved Searches**

View File

@@ -1,136 +0,0 @@
Hooks - Complete List
=====================
* 'about_hook'
* 'account_settings'
* 'app_menu'
* 'atom_author'
* 'atom_entry'
* 'atom_feed'
* 'atom_feed_end'
* 'authenticate'
* 'avatar_lookup'
* 'bb2diaspora'
* 'bbcode'
* 'channel_remove'
* 'check_account_email'
* 'check_account_invite'
* 'check_account_password'
* 'connect_premium'
* 'connector_settings'
* 'contact_block_end'
* 'contact_edit'
* 'contact_edit_post'
* 'contact_photo_menu'
* 'contact_select_options'
* 'conversation_start'
* 'cron'
* 'directory_item'
* 'display_item'
* 'display_item'
* 'display_settings'
* 'display_settings_post'
* 'enotify'
* 'enotify_mail'
* 'enotify_store'
* 'event_created'
* 'event_updated'
* 'feature_enabled'
* 'feature_settings'
* 'feature_settings_post'
* 'follow'
* 'gender_selector'
* 'get_all_perms'
* 'get_features'
* 'get_widgets'
* 'global_permissions'
* 'home_content'
* 'home_init'
* 'html2bbcode'
* 'import_directory_profile'
* 'init_1'
* 'item_photo_menu'
* 'item_translate'
* 'jot_networks'
* 'jot_tool'
* 'logged_in'
* 'login_hook'
* 'logging_out'
* 'magic_auth'
* 'magic_auth_success'
* 'main_slider'
* 'marital_selector'
* 'mood_verbs'
* 'network_content_init'
* 'network_ping'
* 'network_tabs'
* 'network_to_name'
* 'notifier_end'
* 'notifier_normal'
* 'obj_verbs'
* 'oembed_probe'
* 'page_content_top'
* 'page_end'
* 'page_header'
* 'parse_atom'
* 'parse_link'
* 'pdl_selector'
* 'perm_is_allowed'
* 'personal_xrd'
* 'photo_post_end'
* 'photo_post_end'
* 'photo_upload_begin'
* 'photo_upload_end'
* 'photo_upload_file'
* 'photo_upload_form'
* 'poke_verbs'
* 'post_local'
* 'post_local_end'
* 'post_local_start'
* 'post_mail'
* 'post_mail_end'
* 'post_remote'
* 'post_remote_end'
* 'post_remote_update'
* 'post_remote_update_end'
* 'prepare_body'
* 'prepare_body_final'
* 'prepare_body_init'
* 'proc_run'
* 'profile_advanced'
* 'profile_edit'
* 'profile_post'
* 'profile_sidebar'
* 'profile_sidebar_enter'
* 'profile_tabs'
* 'register_account'
* 'render_location'
* 'settings_account'
* 'settings_form'
* 'settings_post'
* 'sexpref_selector'
* 'smilie'
* 'validate_channelname'
* 'webfinger'
* 'zid'
* 'zid_init'
***General Module Hooks***
* $a->module . '_mod_aftercontent'
* $a->module . '_mod_aside'
* $a->module . '_mod_content'
* $a->module . '_mod_init'
* $a->module . '_mod_post'
***General Selector Hooks***
* $a->module . '_post_' . $selname
* $a->module . '_post_' . $selname
* $a->module . '_post_' . $selname
* $a->module . '_pre_' . $selname
* $a->module . '_pre_' . $selname
* $a->module . '_pre_' . $selname
#include doc/macros/main_footer.bb;

View File

@@ -0,0 +1,105 @@
[b]Hubzilla on OpenShift[/b]
You will notice a new .openshift folder when you fetch from upstream, i.e. from [url=https://github.com/redmatrix/hubzilla.git]https://github.com/redmatrix/hubzilla.git[/url] , which contains a deploy script to set up Hubzilla on OpenShift with plugins and extra themes.
As of this writing, 2015-10-28, you do not have to pay for OpenShift on the Free plan, which gives you three gears at no cost. The Bronze plan gives you three gears at no cost too, but you can expand to 16 gears by paying, and this requires you to register your payment card. The three gears can give three instances of Hubzilla with one gear each, or you can combine two gears into one high-availability Hubzilla instance and one extra gear. The main difference to be aware of is this: gears on the Free plan will go into hibernation if left idle for too long, this does not happen on the Bronze plan.
Create an account on OpenShift, then use the registration e-mail and password to create your first Hubzilla instance. Install git and RedHat's command line tools - rhc - if you have not already done so. See for example https://developers.openshift.com/en/getting-started-debian-ubuntu.html on how to do this on Debian GNU/Linux, or in the menu on that page for other GNU/Linux distributions or other operating systems.
[code]rhc app-create your_app_name php-5.4 mysql-5.5 cron phpmyadmin --namespace your_domain --from-code https://github.com/redmatrix/hubzilla.git -l your@email.address -p your_account_password
[/code]
Make a note of the database username and password OpenShift creates for your instance, and use these at [url=https://your_app_name-your_domain.rhcloud.com/]https://your_app_name-your_domain.rhcloud.com/[/url] to complete the setup. You MUST change server address from 127.0.0.1 to localhost.
NOTE: PostgreSQL is NOT supported by the deploy script yet, see [zrl=https://zot-mor.rhcloud.com/display/3c7035f2a6febf87057d84ea0ae511223e9b38dc27913177bc0df053edecac7c@zot-mor.rhcloud.com?zid=haakon%40zot-mor.rhcloud.com]this thread[/zrl].
[b]Update[/b]
To update, consider your own workflow first. I have forked Hubzilla code into my GitHub account to be able to try things out, this remote repo is called origin. Here is how I fetch new code from upstream, merge into my local repo, then push the updated code both into origin and the remote repo called openshift.
[code]git fetch upstream;git checkout master;git merge upstream/master;git push origin;git push openshift HEAD
[/code]
[b]Administration[/b]
Symptoms of need for MySQL database administration are:
[list]
[*] you can visit your domain and see the Hubzilla frontpage, but trying to login throws you back to login. This can mean your session table is marked as crashed.
[*] you can login, but your channel posts are not visible. This can mean your item table is marked as crashed.
[*] you can login and you can see your channel posts, but apparently nobody is getting your posts, comments, likes and so on. This can mean your outq table is marked as crashed.
[/list]
You can check your OpenShift logs by doing
[code]
rhc tail -a your_app_name -n your_domain -l your@email.address -p your_account_password
[/code]
and you might be able to confirm the above suspicions about crashed tables, or other problems you need to fix.
[b]How to fix crashed tables in MySQL[/b]
Using MySQL and the MyISAM database engine can result in table indexes coming out of sync, and you have at least two options for fixing tables marked as crashed.
[list]
[*] Use the database username and password OpenShift creates for your instance at [url=https://your_app_name-your_domain.rhcloud.com/phpmyadmin/]https://your_app_name-your_domain.rhcloud.com/phpmyadmin/[/url] to login via the web into your phpMyAdmin web interface, click your database in the left column, in the right column scroll down to the bottom of the list of tables and click the checkbox for marking all tables, then select Check tables from the drop down menu. This will check the tables for problems, and you can then checkmark only those tables with problems, and select Repair table from the same drop down menu at the bottom.
[*] You can port-forward the MySQL database service to your own machine and use the MySQL client called mysqlcheck to check, repair and optimize your database or individual database tables without stopping the MySQL service on OpenShift. Run the following in two separate console windows.
To port-forward do
[code]rhc port-forward -a your_app_name -n your_domain -l your@email.address -p your_password[/code]
in one console window, then do either -o for optimize, -c for check or -r for repair, like this
[code]mysqlcheck -h 127.0.0.1 -r your_app_name -u your_app_admin_name -p[/code]
and give the app's password at the prompt. If all goes well you should see a number of table names with an OK behind them.
You can now
[code]Press CTRL-C to terminate port forwarding[/code]
[*] You can do
[code]rhc cartridge stop mysql-5.5 -a your_app_name[/code]
to stop the MySQL service running in your app on OpenShift before running myisamchk - which should only be run when MySQL is stopped, and then
login to your instance with SSH - see OpenShift for details - and do
[code]cd mysql/data/your_database
myisamchk -r *.MYI[/code]
or if you get
[code]Can't create new tempfile[/code]
check your OpenShift's gear quota with
[code]quota -gus[/code]
and if you are short on space, then locally (not SSH) do
[code]rhc app-tidy your_app_name -l your_login -p your_password[/code]
to have rhc delete temporary files and OpenShift logs to free space first, then check the size of your local repo dir and execute
[code]git gc[/code]
against it and check the size again, and then to minimize your remote repo connect via SSH to your application gear and execute the same command against it by changing to the remote repo directory - your repo should be in
[code]~/git/your_app_name.git[/code]
(if not, do find -size +1M to find it), then do
[code]
cd
cd mysql/data/yourdatabase
myisamchk -r -v -f*.MYI[/code]
and hopefully your database tables are now okay.
You can now start the MySQL service on OpenShift by locally doing
[code]rhc cartridge start mysql-5.5 -a your_app_name[/code]
[/list]
[b]Notes[/b]
[list]
[*] definitely DO turn off feeds and discovery by default and limit delivery reports from 30 days to 3 days if you are on the Free or Bronze plan on OpenShift with a single 1Gb gear by visiting [observer.baseurl]/admin/site when logged in as administrator of your Hubzilla site.
[*] The above defaults have been added into the deploy script.
[*] DO add git gc to the deploy script
[*] MAYBE DO add myisamchk - only checking? to the end of the deploy script.
[*] mysqlcheck is similar in function to myisamchk, but works differently. The main operational difference is that mysqlcheck must be used when the mysqld server is running, whereas myisamchk should be used when it is not. The benefit of using mysqlcheck is that you do not have to stop the server to perform table maintenance - this means this documenation should be fixed.
[/list]

View File

@@ -1,25 +1,28 @@
#Privacy Policy
Privacy Policy
==============
##Summary##
##Summary
Q: Who can see my content?
A: By default ANYBODY on the internet, UNLESS you restrict it. The $Projectname allows you to choose the privacy level you desire. Restricted content will NOT be visible to spy networks and their advertisers. It will be protected against eavesdropping by outsiders - to the best of our ability. Hub administrators with sufficient skills and patience MAY be able to eavesdrop on some private communications but they must expend effort to do so. Privacy modes exist within the $Projectname which are even resistant to eavesdropping by skilled and determined hub administrators.
A: By default ANYBODY on the internet, UNLESS you restrict it. $Projectname allows you to choose the privacy level you desire. Restricted content will NOT be visible to "spy networks" and advertisers. It will be protected against eavesdropping by outsiders - to the best of our ability. Hub administrators with sufficient skills and patience MAY be able to eavesdrop on some private communications but they must expend effort to do so. Privacy modes exist within $Projectname which are even resistant to eavesdropping by skilled and determined hub administrators.
Q: Can my content be censored?
A: The $Projectname (the network) CANNOT censor your content. Server and hub administrators are subject to local laws and MAY remove objectionable content from their site/hub. Anybody MAY become a hub administrator, including you; and therefore publish content which might otherwise be censored. You still MAY be subject to local laws.
A: $Projectname (the network) CANNOT censor your content. Server and hub administrators are subject to local laws and MAY remove objectionable content from their site/hub. Anybody MAY become a hub administrator, including you; and therefore publish content which might otherwise be censored. You still MAY be subject to local laws.
##Definitions
**$Projectname**
Otherwise referred to as "the network", the $Projectname is a collection of individual computers/servers (aka **hubs**) which connect together to form a larger cooperative network.
Otherwise referred to as "the network", $Projectname is a collection of individual computers/servers (aka **hubs**) which connect together to form a larger cooperative network.
**hub**
An individual computer or server connected to the $Projectname. These are provided by a **hub administrator** and may be public or private, paid or free.
An individual computer or server connected to $Projectname. These are provided by a **hub administrator** and may be public or private, paid or free.
**hub administrator**
@@ -29,7 +32,7 @@ The system operator of an individual hub.
**Public Information**
Any information or anything posted by you within the $Projectname MAY be public or visible to anybody on the internet. To the extent possible, the $Projectname allows you to protect content and restrict who can view it.
Any information or anything posted by you within $Projectname MAY be public or visible to anybody on the internet. To the extent possible, $Projectname allows you to protect content and restrict who can view it.
Your profile photo, your channel name, and the location (URL or network address) of your channel are visible to anybody on the internet and privacy controls will not affect the display of these items.
@@ -37,7 +40,7 @@ You MAY additionally provide other profile information. Any information which yo
**Content**
Content you provide (status posts, photos, files, etc.) belongs to you. The $Projectname default is to publish content openly and visible to anybody on the internet (PUBLIC). You MAY control this in your channel settings and restrict the default permissions or you MAY restrict the visibility of any single published item separately (PRIVATE). The $Projectname developers will ensure that restricted content is ONLY visible to those in the restriction list - to the best of their ability.
Content you provide (status posts, photos, files, etc.) belongs to you. The $Projectname default is to publish content openly and visible to anybody on the internet (PUBLIC). You MAY control this in your channel settings and restrict the default permissions or you MAY restrict the visibility of any single published item separately (PRIVATE). $Projectname developers will ensure that restricted content is ONLY visible to those in the restriction list - to the best of their ability.
Content (especially status posts) that you share with other networks or that you have made visible to anybody on the internet (PUBLIC) cannot easily be taken back once it has been published. It MAY be shared with other networks and made available through RSS/Atom feeds. It may also be syndicated on other $Projectname sites. It MAY appear on spy networks and internet searches. If you do not wish this default behaviour please adjust your channel settings and restrict who can see your content.
@@ -45,28 +48,29 @@ Content (especially status posts) that you share with other networks or that you
Comments to posts that were created by others and posts which are designated as forum posts belong to you as the creator/author, but the distribution of these posts is not under your direct control. These posts/comments MAY be re-distributed to others, and MAY be visible to anybody on the internet. In the case of comments, the creator of the "first message" in the thread to which you are replying controls the distribution of all comments and replies to that message.
**Private Information**
$Projectname developers will ensure that any content you provide which is designated as PRIVATE will be protected against eavesdropping - to the best of their ability. Private content is generally hidden or obscured even from hub administrators. It is also stripped from email notifications. It is difficult but NOT impossible for this content to be seen by a hub administrator. This is a side effect of the physical laws of the universe. Unfortunately, if a database needs to decrypt a post at display time, it must have the means to decrypt the post! End to end encryption is also provided and this CANNOT be seen, even by a determined administrator.
$Projectname developers will ensure that any content you provide which is designated as PRIVATE will be protected against eavesdropping - to the best of their ability. Private channel content CAN be seen in the database of every involved hub administrator, but private messages are obscured in the database. The latter means that it is very difficult, but NOT impossible for this content to be seen by a hub administrator. Private channel content and private messages are also stripped from email notifications. End to end encryption is provided as an optional feature and this CANNOT be seen, even by a determined administrator.
##Identity Privacy
Privacy for your identity is another aspect. Because you have a decentralized identity in the $Projectname, your privacy extends beyond your home hub. If you want to have complete control of your privacy and security you should run your own hub on a dedicated server. For many people, this is complicated and may stretch their technical abilities. So let's list a few precautions you can make to assure your privacy as much as possible.
Privacy for your identity is another aspect. Because you have a decentralized identity in $Projectname, your privacy extends beyond your home hub. If you want to have complete control of your privacy and security you should run your own hub on a dedicated server. For many people, this is complicated and may stretch their technical abilities. So let's list a few precautions you can make to assure your privacy as much as possible.
A decentralized identity has a lot of advantages and gives you al lot of interesting features, but you should be aware of the fact that your identity is known by other hubs in the $Projectname network. One of those advantages is that other channels can serve you customized content and allow you to see private things (such as private photos which others wish to share with you). Because of this those channels need to know who you are. But we understand that sometimes those other channels know more from you than you might desire. For instance the plug-in Visage that can tell a channel owner the last time you visit their profile. You can easily OPT-OUT of this low level and we think, harmless tracking.
* You can enable [Do Not Track (DNT)](http://donottrack.us/) in your web browser. We respect this new privacy policy proposal. All modern browsers support DNT. You will find it in the privacy settings of your browsers or else you can consult the web browser's manual. This will not affect the functionality of the $Projectname. This setting is probably enough for most people.
* You can enable [Do Not Track (DNT)](http://donottrack.us/) in your web browser. We respect this new privacy policy proposal. All modern browsers support DNT. You will find it in the privacy settings of your browsers or else you can consult the web browser's manual. This will not affect the functionality of $Projectname. This setting is probably enough for most people.
*You can [disable publication](settings) of your channel in our channel directory. If you want people to find your channel, you should give your channel address directly to them. We think this is a good indication that you prefer extra privacy and automatically enable "Do Not Track" if this is the case.
* You can have a blocked hub. That means that all channels and content on that hub is not public, and not visible to the outside world. This is something only your hub administrator can do. We also respect this and automatically enable "Do Not Track" if it is set.
###Censorship
The $Projectname is a global network which is inclusive of all religions and cultures. This does not imply that every member of the network feels the same way you do on contentious issues, and some people may be STRONGLY opposed to the content you post. In general, if you wish to post something that you know may nor be universally acceptable, the best approach is to restrict the audience using privacy controls to a small circle of friends.
$Projectname is a global network which is inclusive of all religions and cultures. This does not imply that every member of the network feels the same way you do on contentious issues, and some people may be STRONGLY opposed to the content you post. In general, if you wish to post something that you know may nor be universally acceptable, the best approach is to restrict the audience using privacy controls to a small circle of friends.
The $Projectname as a network provider is unable to censor content. However, hub administrators MAY censor any content which appears on their hub to comply with local laws or even personal judgement. Their decision is final. If you have issues with any hub administrator, you may move your account and postings to another site which is more in line with your expectations. Please check (periodically) the [Terms of Service](help/TermsOfService) of your hub to learn about any rules or guidelines. If your content consists of material which is illegal or may cause issues, you are STRONGLY encouraged to host your own (become a hub administrator). You may still find that your content is blocked on some hubs, but the $Projectname as a network cannot block it from being posted.
$Projectname as a network provider is unable to censor content. However, hub administrators MAY censor any content which appears on their hub to comply with local laws or even personal judgement. Their decision is final. If you have issues with any hub administrator, you may move your account and postings to another site which is more in line with your expectations. Please check (periodically) the [Terms of Service](help/TermsOfService) of your hub to learn about any rules or guidelines. If your content consists of material which is illegal or may cause issues, you are STRONGLY encouraged to host your own (become a hub administrator). You may still find that your content is blocked on some hubs, but $Projectname as a network cannot block it from being posted.
The $Projectname RECOMMENDS that hub administrators provide a grace period of 1-2 days between warning an account holder of content that needs to be removed and physically removing or disabling the account. This will give the content owner an opportunity to export their channel meta-data and import it to another site. In rare cases the content may be of such a nature to justify the immediate termination of the account. This is a hub decision, not a $Projectname decision.
$Projectname RECOMMENDS that hub administrators provide a grace period of 1-2 days between warning an account holder of content that needs to be removed and physically removing or disabling the account. This will give the content owner an opportunity to export their channel meta-data and import it to another site. In rare cases the content may be of such a nature to justify the immediate termination of the account. This is a hub decision, not a $Projectname decision.
If you typically and regularly post content of an adult or offensive nature, you are STRONGLY encouraged to mark your account "NSFW" (Not Safe For Work). This will prevent the display of your profile photo in the directory except to viewers that have chosen to disable "safe mode". If your profile photo is found by directory administrators to be adult or offensive, the directory administrator MAY flag your profile photo as NSFW. There is currently no official mechanism to contest or reverse this decision, which is why you SHOULD mark your own account NSFW if it is likely to be inappropriate for general audiences.

View File

@@ -5,7 +5,7 @@ Hubzilla
###Websites. Redefined.
![Hubzilla](images/ghash-32.png)
![Hubzilla](../images/hz-32.png)
**What are Hubs?**

View File

@@ -11,9 +11,9 @@ When you start to mention somebody, it will create an auto-complete box to selec
**Private Mentions**
If you wish to restrict a post to a single person or a number of people, you can do this by selecting channels or collections from the privacy tool. You can also just tag them with a privacy tag. A privacy tag is a name preceded by the two characters @! - and in addition to tagging these channels, will also change the privacy permissions of the post to include them (and perhaps restrict the post from "everybody" if this was the default). You can have more than one privacy tag, for instance @!bob and @!linda will send the post only to Bob and Linda (in addition to any recipients you selected with the privacy selector - if any).
If you wish to restrict a post to a single person or a number of people, you can do this by selecting channels or privacy groups from the privacy tool. You can also just tag them with a privacy tag. A privacy tag is a name preceded by the two characters @! - and in addition to tagging these channels, will also change the privacy permissions of the post to include them (and perhaps restrict the post from "everybody" if this was the default). You can have more than one privacy tag, for instance @!bob and @!linda will send the post only to Bob and Linda (in addition to any recipients you selected with the privacy selector - if any).
You may also tag public collections. When you create or edit a collection, there is a checkbox to allow the group members to be seen by others. If this box is checked for a collection and you tag (for instance) @!Friends - the post will be restricted to the Friends collection. Check that the collection is public before doing this - as there is no way to take back a post except to delete it. The collection name will appear in the post and will alert members of that collection that they are members of it.
You may also tag privacy groups which are "public". When you create or edit a privacy group, there is a checkbox to allow the group members to be seen by others. If this box is checked for a group and you tag (for instance) @!Friends - the post will be restricted to the Friends group. Check that the group is public before doing this - as there is no way to take back a post except to delete it. The group name will appear in the post and will alert members of that group that they are members of it.

View File

@@ -4,13 +4,13 @@ Translating the $Projectname
Translation Process
-------------------
The strings used in the UI of Red is translated at [Transifex][1] and then
The strings used in the UI of Hubzilla is translated at [Transifex][1] and then
included in the git repository at github. If you want to help with translation
for any language, be it correcting terms or translating Red to a
for any language, be it correcting terms or translating Hubzilla to a
currently not supported language, please register an account at transifex.com
and contact the Red translation team there.
and contact the Redmatrix translation team there.
Translating Red is simple. Just use the online tool at transifex. If you
Translating Hubzilla is simple. Just use the online tool at transifex. If you
don't want to deal with git & co. that is fine, we check the status of the
translations regularly and import them into the source tree at github so that
others can use them.
@@ -26,32 +26,32 @@ tree.
If you want to get your work into the source tree yourself, feel free to do so
and contact us with and question that arises. The process is simple and
Red ships with all the tools necessary.
Hubzilla ships with all the tools necessary.
The location of the translated files in the source tree is
/view/LNG-CODE/
where LNG-CODE is the language code used, e.g. de for German or fr for French.
For the email templates (the *.tpl files) just place them into the directory
and you are done. The translated strings come as a "messages.po" file from
transifex which needs to be translated into the PHP file Red uses. To do
and you are done. The translated strings come as a "hmessages.po" file from
transifex which needs to be translated into the PHP file Hubzilla uses. To do
so, place the file in the directory mentioned above and use the "po2php"
utility from the util directory of your Red installation.
utility from the util directory of your Hubzilla installation.
Assuming you want to convert the German localization which is placed in
view/de/messages.po you would do the following.
view/de/hmessages.po you would do the following.
1. Navigate at the command prompt to the base directory of your
Red installation
Hubzilla installation
2. Execute the po2php script, which will place the translation
in the strings.php file that is used by Red.
in the hstrings.php file that is used by Hubzilla.
$> php util/po2php.php view/de/messages.po
$> php util/po2php.php view/de/hmessages.po
The output of the script will be placed at view/de/strings.php where
The output of the script will be placed at view/de/hstrings.php where
froemdoca os expecting it, so you can test your translation mmediately.
3. Visit your Red page to check if it still works in the language you
3. Visit your Hubzilla page to check if it still works in the language you
just translated. If not try to find the error, most likely PHP will give
you a hint in the log/warnings.about the error.
@@ -59,19 +59,19 @@ view/de/messages.po you would do the following.
not give any output if the file is ok but might give a hint for
searching the bug in the file.
$> php view/de/strings.php
$> php view/de/hstrings.php
4. commit the two files with a meaningful commit message to your git
repository, push it to your fork of the Red repository at github and
repository, push it to your fork of the Hubzilla repository at github and
issue a pull request for that commit.
Utilities
---------
Additional to the po2php script there are some more utilities for translation
in the "util" directory of the Red source tree. If you only want to
translate Red into another language you wont need any of these tools most
likely but it gives you an idea how the translation process of Red
in the "util" directory of the Hubzilla source tree. If you only want to
translate Hubzilla into another language you wont need any of these tools most
likely but it gives you an idea how the translation process of Hubzilla
works.
For further information see the utils/README file.
@@ -79,7 +79,7 @@ For further information see the utils/README file.
Known Problems
--------------
* Red uses the language setting of the visitors browser to determain the
* Hubzilla uses the language setting of the visitors browser to determain the
language for the UI. Most of the time this works, but there are some known
quirks.
* the early translations are based on the friendica translations, if you

View File

@@ -15,7 +15,7 @@ Some/many of these widgets have restrictions which may restrict the type of page
* args: count - number of items to return (default 24)
<br />&nbsp;<br />
* collections - collection selector for the current logged in channel
* collections - privacy group selector for the current logged in channel
* args: mode - one of "conversation", "group", "abook" depending on module
<br />&nbsp;<br />
@@ -74,8 +74,11 @@ Some/many of these widgets have restrictions which may restrict the type of page
* suggestedchats - "interesting" chatrooms chosen for the current observer
* item - displays a single webpage item by mid
* args: mid - message_id of webpage to display
* item - displays a single webpage item by mid or page title
* args:
* channel_id - channel that owns the content, defualt is the profile_uid
* mid - message_id of webpage to display (must be webpage, not a conversation item)
* title - URL page title of webpage (must provide one of either title or mid)
<br />&nbsp;<br />
* photo - display a single photo
@@ -85,10 +88,17 @@ Some/many of these widgets have restrictions which may restrict the type of page
* style - CSS style string
<br />&nbsp;<br />
* cover_photo - display the cover photo for the selected channel
* args:
* channel_id - channel to use, default is the profile_uid
* style - CSS style string (default is dynamically resized to width of region)
<br />&nbsp;<br />
* photo_rand - display a random photo from one of your photo albums. Photo permissions are honoured
* args:
* album - album name (very strongly recommended if you have lots of photos)
* scale - typically 0 (original size), 1 (640px), or 2 (320px)
* scale - typically 0 (original size), 1 (1024px), 2, (640px), or 3 (320px)
* style - CSS style string
* channel_id - if not your own
<br />&nbsp;<br />
@@ -99,6 +109,21 @@ Some/many of these widgets have restrictions which may restrict the type of page
* channel_id - if not your own
<br />&nbsp;<br />
* tasklist - provide a task or to-do list for the currently logged-in channel.
* args:
* all - display completed tasks if all is non-zero.
<br />&nbsp;<br />
* forums - provide a list of connected public forums with unseen counts for the current logged-in channel.
<br />&nbsp;<br />
* album - provides a widget containing a complete photo album from albums belonging to the page owner; this may be too large to present in a sidebar region as is best implemented as a content region widget.
* args:
* album - album name
* title - optional title, album name is used if not present
<br />&nbsp;<br />
Creating New Widgets
====================

View File

@@ -1,24 +1,24 @@
[b]About[/b]
The $Projectname is a decentralized communication network, which aims to provide communication that is censorship-resistant, privacy-respecting, and thus free from the oppressive claws of contemporary corporate communication giants. These giants function primarily as spy networks for paying clients of all sorts and types, in addition to monopolizing and centralizing the Internet; a feature that was not part of the original and revolutionary goals that produced the World Wide Web.
$Projectname is a decentralized communication network, which aims to provide communication that is censorship-resistant, privacy-respecting, and thus free from the oppressive claws of contemporary corporate communication giants. These giants function primarily as spy networks for paying clients of all sorts and types, in addition to monopolizing and centralizing the Internet; a feature that was not part of the original and revolutionary goals that produced the World Wide Web.
The $Projectname is free and open source. It is designed to scale from a $35 Raspberry Pi, to top of the line AMD and Intel Xeon-powered multi-core enterprise servers. It can be used to support communication between a few individuals, or scale to many thousands and more.
$Projectname is free and open source. It is designed to scale from a $35 Raspberry Pi, to top of the line AMD and Intel Xeon-powered multi-core enterprise servers. It can be used to support communication between a few individuals, or scale to many thousands and more.
Red aims to be skill and resource agnostic. It is easy to use by everyday computer users, as well as by systems administrators and developers.
$Projectname aims to be skill and resource agnostic. It is easy to use by everyday computer users, as well as by systems administrators and developers.
How you use it depends on how you want to use it.
It is written in the PHP scripting language, thus making it trivial to install on any hosting platform in use today. This includes self-hosting at home, at hosting providers such as [url=http://mediatemple.com/]Media Temple[/url] and [url=http://www.dreamhost.com/]Dreamhost[/url], or on virtual and dedicated servers, offered by the likes of [url=https://www.linode.com]Linode[/url], [url=http://greenqloud.com]GreenQloud[/url] or [url=https://aws.amazon.com]Amazon AWS[/url].
In other words, the $Projectname can run on any computing platform that comes with a web server, a MySQL-compatible database, and the PHP scripting language.
In other words, $Projectname can run on any computing platform that comes with a web server, a MySQL-compatible database, and the PHP scripting language.
Along the way, Red offers a number of unique goodies:
Along the way, $Projectname offers a number of unique goodies:
[b]Single-click user identification:[/b] meaning you can access sites on the $Projectname simply by clicking on links to remote sites. Authentication just happens automagically behind the scenes. Forget about remembering multiple user names with multiple passwords when accessing different sites online.
[b]Single-click user identification:[/b] meaning you can access sites on $Projectname simply by clicking on links to remote sites. Authentication just happens automagically behind the scenes. Forget about remembering multiple user names with multiple passwords when accessing different sites online.
[b]Cloning:[/b] of online identities. Your online presence no longer has to be tied to a single server, domain name or IP address. You can clone and import your identity (or channel as we call it) to another server (or, a hub as servers are known in the $Projectname). Now, should your primary hub go down, no worries, your contacts, posts[i]*[/i], and messages[i]*[/i] will automagically continue to be available and accessible under your cloned channel. [i](*: only posts and messages as from the moment you cloned your channel)[/i]
[b]Cloning:[/b] of online identities. Your online presence no longer has to be tied to a single server, domain name or IP address. You can clone and import your identity (or channel as we call it) to another server (or, a hub as servers are known in $Projectname). Now, should your primary hub go down, no worries, your contacts, posts[i]*[/i], and messages[i]*[/i] will automagically continue to be available and accessible under your cloned channel. [i](*: only posts and messages as from the moment you cloned your channel)[/i]
[b]Privacy:[/b] Red identities (Zot IDs) can be deleted, backed up/downloaded, and cloned. The user is in full control of their data. Should you decide to delete all your content and erase your Zot ID, all you have to do is click on a link and it's immediately deleted from the hub. No questions, no fuss.
[b]Privacy:[/b] $Projectname identities (Zot IDs) can be deleted, backed up/downloaded, and cloned. The user is in full control of their data. Should you decide to delete all your content and erase your Zot ID, all you have to do is click on a link and it's immediately deleted from the hub. No questions, no fuss.
#include doc/macros/main_footer.bb;

View File

@@ -1,19 +1,22 @@
[h3]Plugins/Addons[/h3]
[list=1]
[*] abcjsplugin - Create musical scores in your posts
[*] adultphotoflag - prevents nsfw photos from being displayed in public albums
[*] bbmath - use complex math expressions in your posts
[*] bookmarker - replace #^ with bookmark link in posts
[*] buglink - provide a bug reporting icon in the lower-left corner of every page
[*] calc - a scientific calculator
[*] chess - cross domain identity aware interactive chess games
[*] chords - generate fingering charts and alternatives for every known guitar chord
[*] custom_home - set a custom page as the hub start page
[*] diaspora - crosspost to a Diaspora account (different from the built-in Diaspora emulator)
[*] dfedfix - fixes some federation issues with Diaspora releases around aug-sep 2015
[*] diaspora - Diaspora protocol emulator
[*] diaspost - crosspost to a Diaspora account (different from the Diaspora protocol emulator)
[*] dirstats - show some interesting statistics generated by the driectory server
[*] donate - provides a project donation page
[*] dwpost - crosspost to Dreamwidth
[*] embedly - use the embedly (formerly ooehmbed) service to embed media from many providers
[*] extcron - use an external cron service to run your hub's scheduled tasks
[*] flattr - provides a "Flattr Us" button
[*] flattrwidget - provides a "Flattr Us" button
[*] flip - create upside down text
[*] fortunate - displays random quote (fortune cookie). Requires setting up a fortune server.
[*] frphotos - import photo albums from Friendica
@@ -26,12 +29,16 @@
[*] libertree - crosspost to Libertree
[*] likebanner - create a "like us on red#matrix" banner image
[*] ljpost - crosspost to LiveJournal
[*] logrot - logfile rotation utility
[*] mahjongg - Chinese puzzle game
[*] mailhost - when using multiple channel clones, select one to receive email notifications
[*] mayan_places - set location field to a random city in the Mayan world
[*] morechoice - additional gender/sexual-preference choices for profiles (not safe for work)
[*] moremoods - Additional mood options
[*] morepokes - additional poke options (not safe for work)
[*] msgfooter - provide legal or other text on each outgoing post
[*] noembed - use noembed.com as an addition to Hubzilla's native oembed functionality (currently broken)
[*] nofed - prevent "federation" of channel posts, maintains all interaction on your site
[*] nsabait - add random terrorism related hashtags to your posts
[*] nsfw - Highly recommended plugin to collpase posts with inappropriate content
[*] openclipatar - choose a profile photo from hundreds of royalty free images
@@ -42,21 +49,29 @@
[*] qrator - generate QR code images
[*] rainbowtag - display your tag and category clouds in colours
[*] randpost - post/reply bot based on and requires fortunate
[*] redred - Crosspost to another Redmatrix or Hubzilla channel
[*] redfiles - import file storage from redmatrix
[*] redphotos - import photo albums from redmatrix
[*] redred - Crosspost to another Red Matrix or Hubzilla channel
[*] rtof - Crosspost to Friendica
[*] sendzid - add 'zid' auth parmaters to all outbound links, not just in-network links
[*] skeleton - sample addon/plugin to demonstrate plugin development
[*] smiley_pack - extend the built-in smilie (emoticon) support
[*] smileybutton - provides a smiley selector on the post window
[*] startpage - set a personal preferred page to redirect after logging in.
[*] statistics_json - Diaspora statistics generator
[*] statusnet - GNU-social and StatusNet crosspost [zrl=[baseurl]/help/addons_gnusocial]Posting To Gnu Social[/zrl]
[*] superblock - Highly recommended - completely block an offensive channel from your stream
[*] testdrive - Turns your hub into a test drive site with accounts that expire after a trail period.
[*] tictac - 3D tic-tac-toe
[*] torch - flashlight app
[*] tour - feature tour for new members
[*] twitter - crosspost to Twitter
[*] upload_limits - discover what server setting (there are a few) may be causing large photo uploads to fail
[*] visage - show visitors to your channel
[*] wholikesme - provides a page to display what connections have 'liked' your posts the most
[*] webRTC - use an external server (mayfirst.org) to negotiate webRTC hookups
[*] wppost - crosspost to WordPress (or other wordpress XMLRPC service)
[*] xmpp - XMPP chat based on converse.js
[/list]
[h3]Addon Repositories[/h3]

15
doc/admins.bb Normal file
View File

@@ -0,0 +1,15 @@
[h2]Documentation for Hub Administrators[/h2]
[h3]Administrators[/h3]
[zrl=[baseurl]/help/install]Install[/zrl]
[zrl=[baseurl]/help/red2pi]Installing $Projectname on the Raspberry Pi[/zrl]
[zrl=[baseurl]/help/Hubzilla_on_OpenShift]$Projectname on OpenShift[/zrl]
[zrl=[baseurl]/help/troubleshooting]Troubleshooting Tips[/zrl]
[zrl=[baseurl]/help/hidden_configs]Tweaking $Projectname's Hidden Configurations[/zrl]
[zrl=[baseurl]/help/faq_admins]FAQ For Admins[/zrl]
[zrl=[baseurl]/help/service_classes]Service Classes[/zrl]
[zrl=[baseurl]/help/directories]Working with and configuring Directories[/zrl]
[zrl=[baseurl]/help/theme_management]Theme Management[/zrl]

View File

@@ -0,0 +1,23 @@
[h2]statuses/update[/h2]
Parameters
title: Title of the status
status: Status in text [or bbcode] format
htmlstatus: Status in HTML format
in_reply_to_status_id
lat: latitude
long: longitude
media: image data
source: Application name
group_allow
contact_allow
group_deny
contact_deny
Example
[code]
curl -u theUsername:thePassword http://mywebsite/api/statuses/update.xml -d status='Hello world'
[/code]

View File

@@ -4,19 +4,20 @@ The API allows you to post to the red# by HTTP POST request. Below you see an ex
[code]curl -ssl -u [color=blue]$E-Mail[/color]:[color=blue]$Password[/color] -d "[color=blue]$Parameters[/color]" [url][observer=1][observer.baseurl][/observer][observer=0]example.com[/observer]/api/statuses/update
[/url][/code]
[table][tr][td]$E-Mail:[/td][td]The E-Mail Adress you use to login[/td][/tr]
[table][tr][td]$E-Mail:[/td][td]The E-Mail Address you use to login, or the channel nickname (without the hostname)[/td][/tr]
[tr][td]$Password:[/td][td]The Password you use to login[/td][/tr]
[tr][td]$Parameters:[/td][td]That's the interesting part, here you insert the content you want to send using the following parameters:[/td][/tr][/table]
[ul]
[*]title: the title of the posting
[*]channel: the channel you want to post to
[*]channel: the channel you want to post to (do not use this parameter with HTTP Basic auth)
[*]category: a comma-seperated list of categories for the posting
[*]status: the content of the posting, formatted with BBCode
OR
[*]htmlstatus:the content of the posting, formatted in HTML.
[/ul]
To post to a specific channel, replace the email address with the channel nickname. If you supply the channel parameter, it has to match the "email", but is superfluous anyway.
Instead of calling [observer=1][observer.baseurl][/observer][observer=0]example.com[/observer]/api/statuses/update which returns a json (you could also add .json on the end to clarify) output, you can use [observer.baseurl]/api/statuses/update.xml to get an xml formatted return.

View File

@@ -7,11 +7,11 @@
<li>[u]underlined[/u] - <u>underlined</u><br />
<li>[s]strike[/s] - <strike>strike</strike><br />
<li>[color=red]red[/color] - <span style="color: red;">red</span><br />
<li>[url=https://redmatrix.me]$Projectname[/url] <a href="https://redmatrix.me">$Projectname</a><br />
<li>[img]https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg" alt="Image/photo" /><br />
<li>[img float=left]https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg" style="float:left;" alt="Image/photo" /><br />
<li>[url=https://zothub.com]$Projectname[/url] <a href="https://zothub.com">$Projectname</a><br />
<li>[img]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" alt="Image/photo" /><br />
<li>[img float=left]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" style="float:left;" alt="Image/photo" /><br />
<div style="clear:both;"></div>
<li>[img float=right]https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://redmatrix.me/images/default_profile_photos/rainbow_man/48.jpg" style="float:right;" alt="Image/photo" /><br />
<li>[img float=right]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" style="float:right;" alt="Image/photo" /><br />
<div style="clear:both;"></div>
<li>[code]code[/code] <code>code</code><br />
<li>[quote]quote[/quote] <blockquote>quote</blockquote><br />
@@ -50,8 +50,8 @@
<p>$Projectname specific codes</p>
<ul class="listbullet" style="list-style-type: circle;">
<li>[&amp;copy;] &copy; This works for many HTML entities</li>
<li>[zrl]https://redmatrix.me[/zrl] Magic-auth version of [url] tag</li>
<li>[zmg]https://redmatrix.me/some/photo.jpg[/zmg] Magic-auth version of [img] tag<br /></li>
<li>[zrl]https://zothub.com[/zrl] Magic-auth version of [url] tag</li>
<li>[zmg]https://zothub.com/some/photo.jpg[/zmg] Magic-auth version of [img] tag<br /></li>
<li>[observer=1]Text to display if observer is authenticated in the matrix[/observer]</li>
<li>[observer=0]Text to display if observer is <strong>not</strong> authenticated in the matrix[/observer]</li>

45
doc/bugs.bb Normal file
View File

@@ -0,0 +1,45 @@
[h2]Bugs, Issues, and things that go bump in the night...[/h2]
[h3]Something went wrong! Who is charge of fixing it?[/h3]
[b]Hubzilla Community Server[/b]
Hubzilla Community Server is open source software which is maintained by "the community" - essentially unpaid volunteers.
[b]Hubzilla Enterprise Server[/b]
Hubzilla Enterprise Server is commercial software with a variety of support plans depending on the specific license terms.
The first thing you need to do is talk to your hub administrator - the person who runs and manages your site. They are in the unique position of having access to the internal software and database and [b]logfiles[/b] and will need to be involved in fixing your problem. Other people "on the net" can't really help with this. The first thing the hub administrator needs to do is look at their logs and/or try to reproduce the problem. So try to be as helpful and courteous as possible in helping them look into the problem.
To find your hub administrator (if you don't know who they are) please look at [url=[baseurl]/siteinfo]this page[/url]. If they have not provided any contact info on that page or provided an "Impressum" there, see [url=[baseurl]/siteinfo/json]this site info summary[/url] under the heading "admin:".
[h3]I'm a hub administrator; what do I do?[/h3]
The software instructions which provide this server are open source and are available for your inspection. If an error message was reported, often one can do a search on the source files for that error message and find out what triggered it. With this information and the site logfiles it may be possible to figure out the sequence of events leading to the error. There could also be other sites involved, and the problem may not even be on your site but elsewhere in the network. Try to pin down the communication endpoints (hubs or sites) involved in the problem and contact the administrator of that site or those sites. Please try and provide an event time of when things went wrong so it can be found in the logs. Work with the other administrator(s) to try and find the cause of the problem. Logfiles are your friend. When something happens in the software that we didn't expect, it is nearly always logged.
[h3]The white screen of death[/h3]
If you get a blank white screen when doing something, this is almost always a code or syntax error. There are instructions in your .htconfig.php file for enabling syntax logging. We recommend all sites use this. With syntax logging enabled repeat the sequence which led to the error and it should log the offending line of code. Hopefully you will be able to fix the problem with this information. When you do, please submit the fix "upstream" so that we can share the fix with the rest of the project members and other communities. This is a key benefit of using open source software - we share with each other and everybody benefits.
[h3]I'm stumped. I can't figure out what is wrong.[/h3]
[b]Hubzilla Enterprise Server[/b]
Please make contact with the vendor - who will have provided you with support contact details. Preferably this contact will be made by the hub administrator so that he/she can assist us in collecting the necessary issue details. We will assign a ticket and notify you of progress.
[b]Hubzilla Community Server[/b]
At this point it might be worthwhile discussing the issue on one of the online forums. There may be several of these and some may be more suited to your spoken language. As a last resort, try "Channel One", which is in English.
If the community developers can't help you right away, understand that they are volunteers and may have a lot of other work and demands on their time. At this point you need to file a bug report. You will need an account on github.com to do this. So register, and then visit https://github.com/redmatrix/hubzilla/issues
. Create an issue here and provide all the same information that you provided online. Don't leave out anything.
Then you wait. If it's a high profile issue, it may get fixed quickly. But nobody is in charge of fixing bugs. If it lingers without resolution, please spend some more time investigating the problem. Ask about anything you don't understand related to the behaviour. You will learn more about how the software works and quite possibly figure out why it isn't working now. Ultimately it is somebody in the community who is going to fix this and you are a member of the community; and this is how the open source process works.
[b]In either case[/b]
Other developers working to fix the problem may need to find out more, so do your homework and document what is happening and everything you've tried. Don't say "I did xyz and it didn't work." That doesn't tell us anything. Tell us precisely what steps you took and what you expected the result to be, and precisely what happened as a result. If there were any error messages, don't say "there was an error message". Tell us exactly what the message said.

78
doc/ca/Privacy.md Normal file
View File

@@ -0,0 +1,78 @@
Política de Privacitat
======================
##Sumari##
Q: Qui pot veure el meu contingut?
A: Per defecte TOTHOM A INTERNET, EXCEPTE que ho hagis restringit. $Projectname permet te triar el nivell de privacitat que desitgis. El contingut restringit no serà visible als "espies de la xarxa " ni als anunciants. Estarà protegit contra l'espionatge per estranys - de la millor manera que sabem. Administradors de nodes amb habilitats i paciència suficients poden ser capaços d'espiar a algunes comunicacions privades però han de invertir molt esforç per fer-ho. Hi maneres de Privacitat en $Projectname que són fins i tot resistents a escoltes il·legals pels administradors de nodes hàbils i decidits.
Q: Pot el meu contingut ser censurat?
A: $Projectname (la xarxa de nodes) NO POT censurat el teu contingut. Els administradors de servidor i del node estan subjectes a les lleis locals i poden suprimir contingut censurable des del seu lloc/node. Qualsevol POT convertir-se en un administrador de node, inclòs tu; i per tant publicar contingut que d'altra manera podria ser censurat. Encara i això estaràs subjecte a les teves lleis locals. Es la teva decisió.
##Definicions
**$Projectname**
Coneguda d'un altre forma com "la xarxa", Hubzilla és una col·lecció d'equips individuals/servidors (àlies nodes) que connecten entre si per formar una xarxa cooperativa més gran.
**node (hub)**
Un equip individual o un servidor connectat a $Projectname. Aquests són proporcionats per un **administrador del node** i poden ser públics o privats, de pagament o gratuïts.
**administrador del node**
L'operador del sistema d'un node individual.
##Polítiques
**Informació Pública**
Qualsevol informació o cualsevol cosa publicada per tu a $Projectname POT ser pública o visible a qualsevol a Internet. En la mesura que sigui possible, $Projectname te permet protegir el contingut i restringir qui pot veure-ho.
La teva foto de perfil, el nom del teu canal, i la ubicació (URL o adreça de xarxa) del seu canal són visibles per a qualsevol persona a Internet i els controls de privacitat no afectaràn la visualització d'aquests elements.
POTS proporcionar, a més, un altra informació de perfil. Qualsevol informació que proporcionis en el teu perfil públic **per defecte** POT ser transmesa a altres centres en $Projectname i, a més, és possible que aparegui en el directori del canal. POTS restringir la visualització d'aquesta informació de perfil. Es POT restringir (permets que visualitzin), només als membres del teu nucli, o només les connexions (amics), o altres conjunts limitats de espectadors com desitgis. Si vols que el teu perfil estigui restringit, has d'establir la configuració de privacitat adequada, o simplement NO PROPORCIONIS informació addicional.
**Contingut**
El contingut que proporciones (missatges d'estat, fotos, arxius, etc.) et pertany a tu. Per defecte a $Projectname és publica contingut de forma oberta i visible per qualsevol en internet (PÚBLIC). POTS controlar això a la seva configuració del canal i restringir els permisos per defecte o pot restringir la visibilitat de qualsevol article únic publicat per separat (PRIVAT). Els desenvolupadors $Projectname s'han d'assegurat que el contingut restringit és visible NOMÉs per als que estan a la llista d'autoritzats - han emprat el millor d'ells per això.
El contingut (especialment les entrades d'estat) que es comparteixen amb altres xarxes o que has fet visible a qualsevol a Internet (PÚBLIC) no poden ser retirats (esborrats) fàcilment un cop que ha estat publicats. Pot haver estat compartit amb altres xarxes i posat a disposició a través de feeds RSS/Atom. També pot haver estat sindicat en altres llocs $Projectname. Pot aparèixer en les xarxes d'espionatge i recerques a Internet. Si no desitges aquest comportament per defecte, si et plau, ajusta la configuració del canal i restringeix qui pot veure el teu contingut.
**Comentaris i entrades a Forums**
Els comentaris als llocs que es van crear per altres i entrades que es designen com missatges al fòrum pertanyen tant a tu com al creador/autor, però la distribució d'aquests llocs no està sota el teu control directe. Aquestes entrades/comentaris es poden tornar a distribuir als altres, i pot ser visible per qualsevol en internet. En el cas dels comentaris, el creador del "primer missatge" al fil al qual està responent controla la distribució de tots els comentaris i respostes a aquest missatge.
**Informació Privada**
Els desenvolupadors de $Projectname aseguraràn que cualsevol contingut que creis designat com PRIVAT estarà protegit contra estaràn protegits contra les escoltes - han emprat el millor d'ells per això. El contingut privat generalment s'amaga o enfosqueix fins i tot als administradors de nodes. També s'eliminen les notificacions per correu electrònic. És difícil, però no impossible que aquest contingut sigui vist per un administrador de node. El xifrat extrem a extrem es facilita com una característica opcional i fa el contingut, NO VISIBLE, fins i tot per un administrador determinat a veure'l.
##Privacitat de la Identitat
La Privacitat per la teva identitat és un altre aspecte. En tenir una identitat descentralitzada a $Projectname, la seva privacitat s'estén més enllà del seu node d'inici. Si vols tenir el control complet de la teva privacitat i seguretat has d'executar el teu propi centre en un servidor dedicat. Per a moltes persones, això és complicat i pot esgotar les seves habilitats tècniques. Així que anem a enumerar algunes precaucions que pots fer per assegurar la teva privacitat tant com sigui possible.
Una identitat descentralitzat té molts avantatges i te dóna un munt de característiques interessants, però has de ser conscient del fet que la teva identitat és coneguda per altres centres de la xarxa $Projectname. Un d'aquests avantatges és que altres canals poden servir contingut personalitzat i permetrà veure el contingut privat (com fotos privades que altres volen compartir amb vostè). Per això els canals necessiten saber qui ets. Però entenem que de vegades aquests altres canals en saben més de tu del que pugui desitjar. Per exemple, el plug-in Visage pot dir-li al propietari d'un canal l'última vegada que vas visitar el seu perfil. Pots renunciar fàcilment a aquest baix nivell de seguiment, que creiem inofensiu.
* Pots activar [No Em Segueixis (anglès:Do Not Track (DNT))](http://donottrack.us/) al teu navegador web. Respectem aquesta nova política de privacitat proposada. Tots en navegadors moderns soporten DNT. Trobaràs als ajustos de privacitat del teu navegador web o sino pots consultar el manual del navegador. Això no afectarà la funcionalitat de $Projectname. Aquest ajust, segurament, es suficient per la majoria de la gent.
* Pots [deshabilitar publicacions](ajustos) del teu canal al nostre canal de directoris. Si vols que la gent trobi el teu canal, has de facilitar la teva direcció del canal a ell(a). Pensem que això es un bon indicador que, en aquest cas, vols es un extra de privacitat i automaticament s'activarà "No Em Segueixis" (DNT).
* Pots tenir un node blocat. Això significa que tots els canals i contingut en aquest node no es públic i invisible al món exterior. Això és quelcom que només ho pot fer l'administrador del teu node. També es respecta això i automàticament s'activa DNT si és sel·leccionat.
###Censura
$Projectname és una xarxa global que inclou a totes les religions i cultures. Això no implica que tots els membres de la xarxa pensin de la mateixa manera que tu pel que fa en temes polèmics, i algunes persones poden sentir una forta oposició al contingut que publiquis. En general, si desitjes publicar alguna cosa que saps que no és universalment acceptable, el millor enfocament consisteix a restringir l'audiència utilitzant els controls de privacitat a un petit cercle d'amics.
$Projectname com un proveïdor de la xarxa no pot censurar el contingut. No obstant això, els administradors de node poden censurar qualsevol contingut que apareix en el seu centre per complir amb les lleis locals o fins i tot el seu judici personal. La seva decisió serà inapel·lable. Si té problemes amb qualsevol administrador de node, pots moure el teu compte i publicacions a un altre lloc que estigui més d'acord amb les teves expectatives. Si us plau comprova (periòdicament) les [Condicions d'ús](help/TermsOfService) del teu centre per aprendre sobre les normes o directrius. Si el teu contingut consisteix en un material que és il·legal o que pugui causar problemes, es recomana ENCARIDAMENT a allotjar tu mateix (convertir-te en un administrador de node). Podràs trobar que el teu contingut està bloquejat en alguns centres, però $Projectname, com a xarxa, no pot bloquejar una vegada publicat.
$Projectname RECOMANA que els administradors de nodes ofereixin un període de gràcia de 1-2 dies entre advertir al titular d'un compte, que hi ha contingut que ha de ser eliminat, i l'eliminació física o desactivació del compte. Això li donarà al propietari del contingut l'oportunitat d'exportar els seus canal de meta-dades i importar-lo a un altre lloc. En rares ocasions el contingut pot ser de tal naturalesa que es justifiqui l'eliminació immediata del compte. Aquesta és una decisió del node, no és una decisió de $Projectname.
Si normalment i regularment publiques contingut per a adults o de caràcter ofensiu, es recomana ENCARIDAMENT que marquis el compte com "NSFW" (No segur per al treball). Això evitarà que es mostri la teva foto de perfil al directori, excepte per als espectadors que han optat per desactivar el "mode segur". Si la teva foto de perfil es considera per a adults o ofensiu pels administradors de directori, l'administrador del directori POT marcar la teva foto de perfil com NSFW. Actualment no hi ha un sistema oficial per revertir aquesta decisió. Així DEURIES marcar tu mateix, el teu compte, com a NSFW si és probable que no sigui apropiat per a audiències generals.
#include doc/macros/main_footer.bb;

8
doc/ca/TermsOfService.md Normal file
View File

@@ -0,0 +1,8 @@
Termes del Servei
================
Aquest node Hubzilla encara no te Termes del Servei. Estic buscant un model adient.....
En resum empreu el servei respectant els altres i no cometeu il·legalitats. Aquest node no s'identifica amb les opinions dels usuaris ni es responsablilitza de les mateixes.
#include doc/SiteTOS.md;

27
doc/ca/about.bb Normal file
View File

@@ -0,0 +1,27 @@
[b]Que és[/b]
$Projectname és una xarxa de comunicacions descentralitzades, que permet comunicacions lliures de censura, amb privacitat, i per tant lliure de les urpes opressores de gegants contemporanis de comunicació corporativa. Aquests gegants funcionen principalment com xarxes d''espionatge per a cobrar a clients de totes les classes i tipus, a més de monopolitzar i centralitzar Internet; una característica que no formava part dels objectius originals i revolucionàries que van produir la World Wide Web.
$Projectname és gratuït i de codi obert. Està dissenyat per a creixèr des de una raspberry pi de 35, fins el màxim de la gama de servidors AMD i servidors empresarials de múltiples nuclis que funcionen amb Intel Xeon. Pot ser utilitzat per a suportar la comunicació entre uns pocs individus, o l'escalar a molts milers i més.
$Projectname pretén ser àgil i capaç de treballar amb múltiples recursos informàtics. És fàcil d'utilitzar pels usuaris habituals d''ordinadors, així com per administradors de sistemes i desenvolupadors.
La forma d'utilitzar depèn de com voleu utilitzar-lo.
Està escrit en el llenguatge de scripting PHP, pel que és trivial instal·lar-lo en qualsevol plataforma d'allotjament en ús avui en dia. Això inclou l'auto-allotjament a casa, en els proveïdors d'allotjament, com ara [url=http://mediatemple.com/]Media Temple[/url] i [url=http://www.dreamhost.com/]Dreamhost[/url], o en servidors virtuals i dedicats, oferts per gràcia de [url=https://www.linode.com]Linode[/url], [url=http://greenqloud.com]GreenQloud[/url] o [url=https://aws.amazon.com]Amazon AWS[/url].
En altres paraules, $Projectname es pot executar en qualsevol plataforma informàtica que vingui amb un servidor web, una base de dades compatible amb MySQL i el llenguatge de scripting PHP.
De pas, $Projectname ofereix una sèrie de atractius únics:
[b]Identificació amb un sol clic d'usuari:[/b] vol dir que pot accedir a llocs en $Projectname simplement fent clic als enllaços a llocs remots. L''autenticació passa automàgicament en segon plà. Oblida't de recordar múltiples noms d'usuari amb múltiples contrasenyes en accedir a diferents llocs en línia.
[b]La clonació:[/b] de les identitats en línia. La seva presència en línia ja no ha d'estar lligat a un sol servidor, nom de domini o adreça IP. Pot clonar i importar la seva identitat (o canal com en diem) a un altre servidor (o, en un concentrasor com son coneguts els servidors a $Projectname). Ara, si el seu concentrador/servidor cau, no et preocupis, els teus contactes, missatges [i]*[/i], i els missatges de [i]*[/i] automàgicament segueixen estant disponibles i accessibles al seu canal clonat. [i](*: només es perden els missatges i els missatges a partir del moment en que va clonar el seu canal)[/i]
[b]Privacitat:[/b] les identitats a $Projectname (Zot identificadors) es poden eliminar, salvar/descarregar i clonar. L'usuari el control total de les seves dades. Si vostè decideix esborrar tot el seu contingut i esborrar la seva ID Zot, tot el que has de fer és fer clic a un enllaç i s'eliminen immediatament d concentrador/servidor. No hi ha preguntes, sense problemes.
#include doc/macros/main_footer.bb;

View File

@@ -0,0 +1,19 @@
[size=large][b]Comptes, Perfils i Canals[/b][/size]
Una vegada t'has registrat amb un [i]compte[/i] al servei, també has de crear un [i]perfil[/i] i un [i]canal[/i].
[b]Compte[/b]
Tens i]un[/i] compte. Això consisteix en una adreça de correu electrònic i una contrasenya. Amb el teu compte pots accedit al teu perfil i al teu canal.
[i]Pensa en el teu compte com una via per autenticar-te al teu lloc $Projectname. Et permet fer coses com, crear perfils i canals amb els que podràs amb altres persones.[/i]
[b]Perfil[/b]
Segurament t'has registrat a altres serveis a internet, com fòrums, o comunicacions en línia. Per a tots ells proveeixes alguna informació de tu, data de naixement, país, edat, i que es el que d'agrada. [observer=1]If you like you can see your profile here: [baseurl]/profile/[observer.webname] and edit it by clicking on the pencil icon next to your avatar image. [/observer]
Unlike other services $Projectname offers you the advantage of creating [i]many more profiles[/i]. That way you are able to distinguish between profiles targeted specially at everyone (your public profile), your work mates, your family and your partner.
[i]Think of your profile as the basic information about yourself you tell other people.[/i]
[b]Channel[/b]
During the registration you created your first [i]channel[/i]. Yes, besides several profiles you are able to have several channels. This might be a bit confusing in the beginning, but let's clear things up. You already have created one channel. You can use this one for the public, to communicate with people about every day life. But perhaps you are an avid book reader and many people are bored by that. So you open a [i]second channel[/i] just for the book lovers, where you all can talk about books as much as you like. Obviously this is a new stream of posts, with a new profile (... or new profile[i]s[/i] ...) and completely different contacts. Some connections might exist in both channels, but there will be some that are exclusive to only one of both. You yourself just switch between both of them just like you would in real life switch when talking to people you meet on the street or people you meet specially to talk about books. You can even connect to yourself, or better: to your other channel. :)
[i]Think of a channel as different spaces dedicated to different topics where you meet with different people.[/i]
#include doc/macros/main_footer.bb;

15
doc/ca/admins.bb Normal file
View File

@@ -0,0 +1,15 @@
[h2]Documentació per a Administradors de Concentradors (dits Hubs en anglès)[/h2]
[h3]Administradors[/h3]
[zrl=[baseurl]/help/install]Instal·lació[/zrl]
[zrl=[baseurl]/help/red2pi]Instal·lant $Projectname en una Raspberry Pi[/zrl]
[zrl=[baseurl]/help/Hubzilla_on_OpenShift]$Projectname en OpenShift[/zrl]
[zrl=[baseurl]/help/troubleshooting]Consells per solucionar problemes[/zrl]
[zrl=[baseurl]/help/hidden_configs]Afinant Configuracions ocultes de $Projectname[/zrl]
[zrl=[baseurl]/help/faq_admins]FAQ Per als Administradors[/zrl]
[zrl=[baseurl]/help/service_classes]Classes de Serveis[/zrl]
[zrl=[baseurl]/help/directories]Treballant amb i configuració de directoris[/zrl]
[zrl=[baseurl]/help/theme_management]Gestió de Temes[/zrl]

32
doc/ca/channels.bb Normal file
View File

@@ -0,0 +1,32 @@
[b]Canals[/b]
Els canals són simplement col·leccions de continguts emmagatzemats en un sol lloc. Un canal pot representar qualsevol cosa. Podria representi, un lloc web, un fòrum, àlbums de fotos, qualsevol cosa. Per a la majoria de la gent, el seu primer canal serà &quot;Ell&quot; mateix.
Les característiques més importants d'un canal que &quot;em&quot; representa són:
Comunicacions segures i privades &quot;lliures d'spam&quot;
Identitat i &quot;un sol inici de sessió &quot; a través de tota la xarxa
Controls de privacitat i permisos que s'estenen a tota la xarxa
Serveis de directori (com una guia telefònica)
En resum, una cadena que et representa a mateix és &quot;jo, a l'Internet &quot;.
Hauràs de crear el teu primer canal com a part del procés de registre. També pots crear canals additonal des del menú &quot;Selecciona canal &quot;.
Se li demanarà que proporcioni un nom de canal, i un curt sobrenom. Per a un canal que et representa a tu mateix, és una bona idea utilitzar el teu nom real per assegurar-se que els teus amics puguin trobar-te, i connectar al teu canal. El sobrenom curt s'utilitzarà per generar un nom &quot;intermediari&quot;. Això és una mica com un nom d'usuari, i es veurà com una adreça de correu electrònic, prenent forma sobrenom@domini. Has de pensar una mica en que desitges utilitzar aquí. Imagina a algú demanant la teu nom intermediari i haver de dir-los que és &quot;Crema-miss_issipi.123&quot;. &quot;cremamississipi&quot; seria una opció molt millor.
Una vegada que hagis creat el teu canal, se't portarà a la pàgina de configuració, que permet definir el teu canal, i establir els teus permisos predeterminats.
Un cop fet això, el canal està llest per utilitzar. En [observer=1][observer.url][/observer][observer=0]example.com/channel/username[/observer] trobaràs el teu canal de &quot;flux&quot;. Aquí és on apareixerà la teva activitat recent, en ordre cronològic invers. Si publica a la casella &quot;compartir&quot;, apareixerà l'entrada a la part superior del teu flux. També trobaràs enllaços a totes les altres àrees de comunicació per aquest canal. El fitxa &quot;en quant a &quot; conté el teu &quot;perfil&quot;, la pàgina de fotos conté àlbums de fotos, i la pàgina d'esdeveniments conté esdeveniments compartits per tu i els teus contactes.
La pàgina &quot;Xarxa&quot; conté tots els missatges recents de tota la xarxa $Projectname, de nou amb sentit cronològic invers. Els missatges exactes que apareixen aquí depenen en gran mesura dels teus permisos. En la teva forma més permissiva, rebràs missatges de desconeguts. A l'altre extrem de l'escala, podràs veure els missatges de només els seus amics - o si ets realment antisocial, només els teus propis missatges.
Com s'ha esmentat al principi, són possibles molts altres tipus de canal, però, el procediment de creació és el mateix. La diferència entre els canals es troba principalment en els permisos assignats. Per exemple, una cadena per a l'intercanvi de documents amb els seus col.legues a la feina, és millor si canvieu valors més permissius per &quot;Em pot escriure en el meu&quot; públic &quot;magatzem d'arxius &quot;, que un compte personal. Per obtenir més informació, consulteu la secció de permisos.
#include doc/macros/main_footer.bb;

34
doc/ca/develop.bb Normal file
View File

@@ -0,0 +1,34 @@
[h2]Documentació per Desenvolupadors[/h2]
[h3]Documentació Tècnica[/h3]
[zrl=[baseurl]/help/Zot---A-High-Level-Overview]Una vista en profunditat a Zot[/zrl]
[zrl=[baseurl]/help/zot]Una introducció a Zot[/zrl]
[zrl=[baseurl]/help/zot_structures]Estuctures a Zot[/zrl]
[zrl=[baseurl]/help/comanche]Descripcions de Pàgina a Comanche[/zrl]
[zrl=[baseurl]/help/Creating-Templates]Creant Plantilles a Comanche[/zrl]
[zrl=[baseurl]/help/Widgets]Artilugis[/zrl]
[zrl=[baseurl]/help/plugins]Complements[/zrl]
[zrl=[baseurl]/help/hooklist]Ganxos (detallat - en construcció)[/zrl]
[zrl=[baseurl]/help/doco]Documentació[/zrl]
[zrl=[baseurl]/help/DerivedTheme1]Creant Temes Derivats[/zrl]
[zrl=[baseurl]/help/schema_development]Esquemes[/zrl]
[zrl=[baseurl]/help/Translations]Traduccions[/zrl]
[zrl=[baseurl]/help/developers]Desenvolupadors[/zrl]
[zrl=[baseurl]/help/intro_for_developers]Introducció per Desenvolupadors[/zrl]
[zrl=[baseurl]/help/database]Documentació del esquema de la base de dades[/zrl]
[zrl=[baseurl]/help/api_functions]Funcions de la API[/zrl]
[zrl=[baseurl]/help/api_posting]Entrades a $Projectname emprant la API[/zrl]
[zrl=[baseurl]/help/developer_function_primer]Funcions Red 101[/zrl]
[zrl=[baseurl]/doc/html/]Refrència del Codi (Doxygen generat - ajust de cookies)[/zrl]
[zrl=[baseurl]/help/to_do_doco]Llista de Pendents per a la Documentació del Projecte $Projectname[/zrl]
[zrl=[baseurl]/help/to_do_code]Llista de Pendents per a Desenvolupadors[/zrl]
[zrl=[baseurl]/help/roadmap]Full de ruta[/zrl]
[zrl=[baseurl]/help/git_for_non_developers]Git per a No-Desenvolupadors[/zrl]
[zrl=[baseurl]/help/dev_beginner]Manual pas-a-pas per a desenvolupadors principiants[/zrl]
[h3]Preguntes Més Freqüents (FAQ) Per Desenvolupadors[/h3]
[zrl=[baseurl]/help/faq_developers]FAQ Per Desenvoupadors[/zrl]
[h3]Recursos Externs[/h3]
[url=https://zothub.com/channel/one]Development Channel[/url]
[url=https://federated.social/channel/postgres]Postgres-specific $Projectname Admin Support Channel[/url]

202
doc/ca/features.bb Normal file
View File

@@ -0,0 +1,202 @@
[b][size=36]Característiques[/size][/b]
[b][size=24]$Projectname en Poques Paraules[/size][/b]
TL;DR
$Projectname proveeix publicacions i comunicacions socials distribuïdes amb [b]permisos descentralitzats[/b].
Així, que vol dir "permisos descentralitzats"? Em donen la habilitat de compàrtir quelcom al meu lloc web (fotos, mitjans, arxius, pàgines web, etc.) Aamb persones específiques en llocs completament diferents - encara que no necesàriament amb [i]tothom[/i] en aquests llocs web; i no es necessita tenir un usuari i contrasenya en aquests altres llocs web per poder fer-ho ni per poder tafanejar el que ells han compartit amb mi. Ells tenen un usuari i contrasenya al seu lloc web i "màgica autenticació" entre llocs web afiliats a la xarxa. També, al esser centralitzat, no hi ha terceres parts que puguin saltar-se els permisos i veure el que estàs fent a la xarxa.
$Projectname combina moltes característiques dels blocs tradicionals, les xarxes socials i els mitjans de comunicació, sistemes de gestió de continguts i emmagatzematge en el núvol personal en un marc de treball fàcil d'utilitzar. Cada node de la xarxa pot funcionar independent o enllaçar amb altres nodes per crear una súper-xarxa; deixant la privacitat sota el control de l'editor original.
$Projectname és una aplicació de servidor web de codi obert escrit originalment en PHP/MySQL i és fàcilment instalable per aquells amb habilitats d'administració web bàsiques. També s'estén fàcilment a través de plugins i temes i altres eines de tercers.
[b][size=24]Característiques de $Projectname[/size][/b]
$Projectname és un tot terreny per a la publicació web i una xarxa de comunicacions amb diverses característiques úniques. Està dissenyat per a ser utilitzat per la gamma més àmplia de persones a la web, dels blocaires no tècnics, als programadors de PHP experts i administradors de sistemes experimentats.
A aquesta pàgina s'enumeren algunes de les característiques fonamentals de $Projectname que s'inclouen amb la versió oficial. Igual que amb la majoria del programari lliure i de codi obert, pot haver moltes altres extensions, complements, plugins, temes i configuracions que estan limitats només per les necessitats i la imaginació dels membres.
[b][size=24]Construït per la Privacitat i la Llibertat[/size][/b]
Un dels objectius de disseny de $Projectname és permetre la comunicació fàcil a la web, mentre que preserva la intimitat, si així es desitja pels membres. Per aconseguir aquest objectiu, $Projectname inclou una sèrie de característiques que permeten nivells arbitraris de privacitat:
[b]Control Lliscant d'Afinitat[/b]
En afegir connexions en $Projectname, els membres tenen l'opció d'assignar nivells de "afinitat" (el prop que la seva amistat és amb el contacte) per a la nova connexió. Per exemple, quan s'afegeix a algú que resulta ser una persona a la que segueixes el seu bloc, podries assignar al seu canal un nivell d'afinitat de &quot;Coneguts&quot;.
D'altra banda, quan s'afegeix el canal d'un amic, que pot ser col·locat sota el nivell d'afinitat de &quot;Amics&quot;.
En aquest punt, l'eina [i]Control Lliscant d'Afinitat[/i] de $Projectname, que en general apareix a la part superior de la teva pàgina, ajusta el contingut de la pàgina per incloure als que estan dins del rang afinitat desitjada. No es mostraran Canals fora d'aquest rang, llevat que s'ajusti el Control Lliscant per incloure'ls.
El Control Lliscant D'Afinitat permet filtrar instantàniament grans quantitats de contingut, agrupats per nivells de proximitat.
[b]Filtre de Connexions[/b]
Tens la capacitat de controlar amb precisió el que apareix en el teu flux emprant opcionalment el "filtre de connexió". Quan s'activa, l'editor de connexió proporciona entrades per a la selecció de criteris que ha de ser aparellat amb la finalitat d'incloure o excloure un lloc específic d'un canal específic. Una vegada que un missatge s'ha permès, tots els comentaris a aquest lloc se'ls permet, independentment de si s'ajusten als criteris de selecció. Pots seleccionar paraules que si estàn presents al bloc o assegurar-te que està inclosses en el teu flux. Les expressions regulars es poden usar per al control encara més fi, així com hashtags o fins i tot l'idioma detectat del lloc.
[b]Llista de Control d'Accés[/b]
En compartir el contingut, els membres tenen l'opció de restringir qui veu el contingut. En fer clic al cadenat sota de la casella de compartir, un pot triar els destinataris desitjats del lloc, fent clic en els seus noms.
Un cop enviat, el missatge serà visible únicament pel remitent i els destinataris seleccionats. En altres paraules, el missatge no apareixerà al mur públic.
Llistes de Control d'Accés es poden aplicar als continguts i missatges, fotos, esdeveniments, pàgines web, sales de xat i arxius.
[b]Inici de Sessió Únic[/b]
Les Llistes de Control d'Accés treballen per a tots els canals a la xarxa gràcies a la nostra tecnologia única d'inici de sessió únic. La majoria dels enllaços interns proporcionen una identitat símbolica que pot ser verificada en altres llocs $Projectname i s'utilitza per controlar l'accés als recursos privats. Entres una vegada al teu concentrador. Després d'això, l'autenticació de tots els recursos de $Projectname és "màgia".
[b]WebDAV activa l'Emagatzematge d'Arxius[/b]
Els arxius poden ser enviats a la teva àrea d'emmagatzematge personal utilitzant les teves utilitats del sistema operatiu (arrossegar i deixar anar en la majoria dels casos). Pots protegir aquests arxius amb la Llista de Control d'Accés amb qualsevol combinació de membres de $Projectname (incloent alguns membres d'altres terceres xarxes) o fer-los públics.
[b]Foto Àlbums[/b]
Salva Fotos en Àlbums. Totes les fotografies es poden protegir mitjançant llistes de control d'accés.
[b]Calendari d'Esdeveniments[/b]
Creació i gestió d'esdeveniments i tasques, que també poden ser protegits amb llistes de control d'accés. Els esdeveniments poden ser importats/exportats a un altre programari amb el format estàndard de la indústria vCalendar/iCal i compartida en els llocs amb els altres. Esdeveniments d'aniversari s'agreguen automàticament dels teus amics i es tradueixen a la seva zona horària correcta així sabràs exactament quan es produeix l'aniversari - no importa on et trobis en el món en relació amb la persona de l'aniversari. Els esdeveniments es creen normalment amb taulells d'assistència perquè els teus amics i connexions puguin confirmar la seva assistència a l'instant.
[b]Sales de Xat[/b]
Pots crear qualsevol nombre de sales de xat personals i permetre l'accés a través de llistes de control d'accés. Aquestes solen ser més segures que XMPP, IRC, i altres transports de missatgeria instantània, encara que també permetem l'ús d'aquests altres serveis a través de connectors.
[b]Constructor de Pàgines Web[/b]
$Projectname moltes eines de creació de "Gestió de Contingut" per a la creació de pàgines web, incloent l'edició disposició, menús, blocs, widgets, i pàgina/contingut per regions. Totes aquestes poden ser d'accés controlat perquè les pàgines resultants siguin privades per al seu públic objectiu.
[b]Apps/Aplicacions[/b]
Apps poden ser construïdes i distribuïdes pels membres. Aquestes aplicacions són diferents del tradicional "bloqueig pel proveïdor" perquè són controlats completament per l'autor - que pot proporcionar control d'accés a les pàgines d'aplicacions de destinació i la càrrega consegüent per a aquest accés. La majoria de les aplicacions en $Projectname són gratuïtes i es poden crear fàcilment per aquells que no tenen coneixements de programació.
[b]Disposició[/b]
La disposició de la pàgina es basa en un llenguatge de descripció anomenat Comanche. $Projectname en si mateix està escrit amb dissenys de Comanche i es poden canviar. Això permet un nivell de personalització que no se sol trobar en els anomenats "entorns multiusuari".
[b]Favorits[/b]
Compartir i guardar/administrar els enllaços de favorits proporcionats en les converses.
[b]Xifrat de missatges privats i Dubtes sobre la confidencialitat[/b]
El correu privat s'emmagatzema en un format ocult. Si això no és a prova de bales, en general, evita l'espionatge informal per l'administrador del lloc o ISP.
Cada canal de $Projectname el seu propi conjunt únic de claus RSA (de 4096 bits) públiques i privades associades, que es genera quan es crea primer els canals. Això s'utilitza per protegir els missatges privats i missatges en trànsit.
A més, els missatges poden ser creats utilitzant "xifrat d'extrem a extrem", que no pot ser llegit per els operadors $Projectname o ISPs o algú que no coneixi el codi d'accés.
Els missatges públics en general, no es xifren en trànsit o en l'emmagatzematge.
Els missatges privats poden ser retirats (com si no s'hagués enviat), encara que no es garanteix que el destinatari no l'ha llegit abans que l'hagis retirat.
Entrades i missatges poden ser creats amb una data de venciment, moment en el qual s'eliminaran/borraran en el lloc del destinatari.
[b]Servei de Federació[/b]
A més de l'afegit (addon) "connectors d'entrades creuades" a una varietat de xarxes alternatives, no hi ha suport natiu per a la importació de continguts de RSS/Atom i usar això per crear canals especials. A més, una implementació experimental, però de treball del protocol de la Diàspora permet la comunicació amb la gent en les xarxes socials friendica i Diàspora descentralitzats. Actualment això es va marcar experimental a causa de que aquestes xarxes no tenen el mateix nivell de funcions de privacitat i encriptació i habilitats com $Projectname i poden presentar riscos per a la privacitat.
També hi ha suport experimental per a l'autenticació OpenID que es pot utilitzar en les llistes de control d'accés. Aquest és un treball en progrés. El seu concentrador $Projectname pot ser utilitzat com un proveïdor d'OpenID per autenticar als serveis externs que utilitzen aquesta tecnologia.
Els canals poden tenir permisos per convertir-se en "canals derivats" on dos o més canals existents es combinen per crear un nou canal d'actualitat.
[b]Col·leccions[/b]
"Col·leccions" és la nostra implementació de grups de privacitat, que és similar a Google "Cercles" i "Aspectes" de Diaspora. Això li permet filtrar el flux entrant per col·leccions o grups, i automàticament configurar la llista de control d'accés sortint a només aquells en la Col·lecció quan publiqui. Pots obviar tot això en qualsevol moment (abans d'enviar l'entrada).
[b]Serveis de Directori [/b]
Oferim fàcil accés a un directori de membres i proporcionem eines descentralitzades capaçes de proporcionar amics "suggerits". Els directoris són llocs normals $Projectname que han optat per acceptar la funció de servidor de directori. Això requereix més recursos que la majoria dels llocs típics pel que no és el predeterminat. Els Directoris estan sincronitzats i reflecteixen el que tots ells contenen amb informació actualitzada sobre tota la xarxa (subjecte a demores normals de propagació).
[b]TLS/SSL[/b]
Els concentradors de $Projectname que empran TLS/SSL, les comunicacions entre client i servidor son encriptades via TLS/SSL. Donades les recents revelacions en els mitjans de comunicació en relació amb, la vigilància global i l'elusió de xifrat pel NSA i GCHQ, és raonable suposar que les comunicacions HTTPS-protegides es poden veure compromeses de diverses maneres. Les comunicacions privades són en conseqüència xifrades en un nivell superior abans d'enviar-les fora del lloc.
[b]Ajustos del Canals[/b]
Quan es crea un canal, es tria un rol al que s'apliquen una sèrie d'ajustos de seguretat i privacitat preconfigurats. Aquests són elegits per les millors pràctiques per mantenir la privacitat en els nivells requerits.
Si escolliu un paper privacitat "personalitzat", cada canal permet permisos de gra fi que es fixaràn per a diferents aspectes de la comunicació. Per exemple, sota la capçalera &quot;Ajusts de Seguretat i Privacitat&quot;, cada aspecte a la banda esquerra de la pàgina, té sis (6) Opcions possibles de visualització/accés, que es poden seleccionar fent clic al menú desplegable. També hi ha una sèrie d'altres opcions de privacitat que pots editar.
Les opcions són:
- Ningú, excepte tu mateix.
- Només aquells que es permeten específicament.
- Qualsevol persona en la seva llibreta d'adreces.
- Qualsevol en aquest lloc web.
- Qualsevol persona en aquesta xarxa.
- Qualsevol autenticat.
- Qualsevol persona a Internet.
[b]Forums Públics i Privats[/b]
Els fòrums són típicament canals que poden estar obertes a la participació de múltiples autors. Actualment existeixen dos mecanismes per pujar als fòrums: 1) els missatges "de mur a mur" i 2) a través de les etiquetes de foro @menció. Els fòrums poden ser creats per qualsevol persona i s'utilitzats per a qualsevol propòsit. El directori conté una opció per buscar fòrums públics. Als Fòrums privats només es poden fer entrades pels membres i sovint només son vistos pels membres.
[b]Clonat de Comptes[/b]
Els Comptes a $Projectname es refereixen com a [i]identitats nómades[/i], perquè la identitat d'un membre no està lligada al concentrador/servidor on es va crear originalment. Per exemple, quan es crea un compte de Facebook o Gmail, que està lligat a aquests serveis. No poden funcionar sense Facebook.com o Gmail.com.
Per contra, imagina que has creat una identitat a $Projectname anomenada [b]tina@Hubzillahub.com[/b]. Aquesta es pot clonar a un altre hub de $Projectname amb el mateix nom o un altre de diferent: per exemple [b]viuPerSempre@HubzillaHub.info[/b]
Tots dos canals estan ara sincronitzats, el que significa que tots els seus contactes i preferències es dupliquen en el teu clon. No importa si s'envia un missatge des del seu hub original o el nou centre. Els missatges/emtrades seran reflectits/des en tots dos comptes.
Aquesta és una característica bastant revolucionària, si tenim en compte alguns dels escenaris:
- Què passa si el concentrador/servidor on la identitat es basa cau sobtadament fora de línia? Sense clonació, un membre no pot comunicar fins que aquest centre torna a estar de nou en línia (sens dubte molts de vosaltres heu vist i maleït el Twitter "Fail Whale"). Amb la clonació, es pot iniciar la sessió al compte clonat, i la vida continua feliços per sempre. - L'administrador del teu concentrador/servidor ja no es pot permetre el luxe de pagar el concentrador/servidor $Projectname que ofereix gratuitament. Llavors anuncia que el centre serà tancant en dues setmanes. Això li dóna temps suficient als socis/partíceps per clonar la seva identitat/s i preservar les seves relacions de $Projectname, amics i contingut. - Què passa si la teva identitat està subjecta a la censura del govern? El teu proveïdor del concentrador/servidor pot ser obligat a eliminar el teu compte, juntament amb les identitats i dades associades. Amb la clonació, a $Projectname ofereixes [b]resistència a la censura[/b]. Pots tenir centenars de clons, si vols, amb noms totalment diferents, i existents en molts centres diferents, escampats a tot l'Internet.
$Projectname ofereix noves i interesants possibilitats per a la privacitat. Pots llegir més a la pàgina &lt;&lt;Bones Pràctiques en Comunicacions Privades&gt;&gt;.
A tenir en compte. Per a una explicació completa de la clonació d'identitat, llegir el &lt;HOW TO CLONE MY IDENTITY&gt;.
[b]Perfils Multiples[/b]
Es poden crear qualsevol nombre de perfils amb informació diferent i es poden fer-se visible/s a alguns de les teves connexions/amics. Un perfil "per defecte" es pot veure per qualsevol persona i pot contenir informació limitada, amb més informació disponible per grups o persones seleccionades. Això vol dir que el perfil (i el contingut del lloc) per als teus amics bevedors de cervesa pot ser diferents del que presentes als seus companys de treball, i també completament diferent del que és visible per al públic en general.
[b]Còpies de Seguretat del Compte[/b]
Hubzilla ofereix una còpia de seguretat del compte, amb un simple clic, on pots descarregar una còpia de seguretat completa del teu perfil(s).
Les còpies de seguretat es poden utilitzar per clonar o restaurar un perfil.
[b]Eliminació del Compte[/b]
Els comptes poden ser [b]esborrats immediatament[/b] fent clic en un enllaç. [b]Això és així[/b]. Tot el contingut associat s'elimina de la xarxa (això inclou els missatges i qualsevol altre tipus de contingut produït pel perfil suprimit). Depenent del nombre de connexions que , el procés d'eliminació de contingut remot podria portar el seu temps, però està previst que passi tan aviat com sigui possible.
[b][size=20]Creació de Contingut[/size][/b]
[b]Escribint Entrades[/b]
$Projectname suporta un nombre de diferents alternatives per afegir contingut amb text enriquit. La opció per defecte es una variant personalitzada de _BBcode, ajustada per al seu ús a $Projectname. Pots activar l'ús de Markdown (un llenguatge de marques) fàcil de treballar amb ell. Un editor visual també es pot emprar. El editor visual tradicionalment emprat en $Projectname va tenir seriosos problemes i ha estat eliminat. Estem actualment buscant un substitut.
Quant creem &quot;llocs Web&quot;, El contingut espot afegir en HTML, Markdown, BBcode, i/o text plà.
[b]Esborrat del contingut[/b]
Qualsevol contingut creat a $Projectname roman sota el control del membre (o canal) que el va crear originalment. En qualsevol moment, un membre pot esborrar un missatge o un rang de missatges. El procés d'esborrat assegura que el contingut es eliminat, indiferentment de on es va publicar si en el canal primari (l'inicial)del concentrador/servidor o en altre qualsevol on el canal es va autenticar remotament via Zot ($Projectname communicació i protocol d'autenticació).
[b]Multimedia[/b]
Igual que qualsevol altre sistema modern de blocs, xarxes socials, o d'un servei de micro-blogging, $Projectname és compatible amb la càrrega d'arxius, la incorporació dels vídeos, l'enllaç de pàgines web.
[b]Vista Prèvia/Edició[/b]
Les entrades es poder pre visualitzar abans d'enviar-les i reeditar desprès de ser enviades.
[b]Votacions/Consens[/b]
El missatges poden convertir-se en "consensos", són articles que ofereixen als lectors una forma de retroalimentació, es recopilen en comptadors de "d'acord", "en desacord" i "abstenir-se". Que permeten mesurar l'interès per les idees i crear enquestes informals.
[b]Estenent $Projectname[/b]
$Projectname es pot estendre per diferents nombre de vies, a través de la personalització del lloc, la teva personalització, ajustos optatius, temes i addons/plugins.
[b]API[/b]
Una API està disponible per al seu ús per serveis de terceres part. Està basat originalment en una de les primeres API's de Twitter(de la que existeixen cents d'eines de terceres parts). S'està ampliant actualment per proporcionar accés a les instal·lacions i capacitats que són específiques de $Projectname. L'accés pot ser proporcionada per usuari/contrasenya o OAuth i es proporciona registre de clients d'aplicacions OAuth.
#include doc/macros/main_footer.bb;

3
doc/ca/first-post.bb Normal file
View File

@@ -0,0 +1,3 @@
[size=large]La teva primera entrada[/size]
... pendent de ser escrita ...

20
doc/ca/general.bb Normal file
View File

@@ -0,0 +1,20 @@
[h2]Informació del Projecte/Lloc[/h2]
[zrl=[baseurl]/help/Privacy]Politica de Privacitat[/zrl]
[zrl=[baseurl]/help/history]Història de $Projectname[/zrl]
[h3]Recursos Externs[/h3]
[zrl=[baseurl]/help/external-resource-links]Enllaços a Recursos Externs[/zrl]
[url=https://github.com/redmatrix/hubzilla]Lloc Web Principal[/url]
[url=https://github.com/redmatrix/hubzilla-addons]Complements del Lloc Web[/url]
[url=[baseurl]/help/credits]Credits en $Projectname[/url]
[h3]Sobre Aquest Node $Projectname[/h3]
[zrl=[baseurl]/help/TermsOfService]Termes de Servei per a AQUEST Node[/zrl]
[zrl=[baseurl]/siteinfo]Informació del Node[/zrl]
[zrl=[baseurl]/siteinfo/json]Informació Tècnica Detallada en format JSON d'aquest Node[/zrl]

12
doc/ca/main.bb Normal file
View File

@@ -0,0 +1,12 @@
[zrl=[baseurl]/help/about][b]Que és $Projectname?[/b][/zrl]
$Projectname és una plataforma de comunicació i publicació descentralitzada que et permet mantenir el control de les teves necessitats de comunicació, gràcies a l'encriptació automàtica i control d'accés de gra fi. Éts tu, i només tu qui decideixes qui pot veure les teves coses.
[zrl=[baseurl]/help/features][b]Característiques de $Projectname[/b][/zrl]
$Projectname ja s'està executant com una xarxa distribuïda global i demostra la seva versatilitat i escalabilitat des de independent fins a grans llocs.
Penseu en plataformes independents de comunicació de la família, de comunitats en línia distribuïdes, fòrums de suport, blocs i pàgines web. O proveïdors de continguts professionals amb canals premium comercials i accés de continguts específics. El que vulguis, $Projectname és allà per atendre la teva creativitat.
[zrl=[baseurl]/help/what_is_zot][b]Tens Zot? Be, Deuries.[/b][/zrl]
Zot és el gran nou protocol de communicació inventat especialment per a $Projectname. Com a membre, ja no estàs lligat a un sol lloc o concentrador (hub) gràcies a les "identitats nòmades". Migra fàcilment a un altre servidor i manté els teus contactes intactes, o clona i executa el mateix canal en diversos servidors. Encara que un d'ells tanqui, no es perd res. A més, una vegada que estàs dins de $Projectname no hi ha necessitat d'autenticar dues vegades, fins i tot quan s'accedeix des d'un altre lloc $Projectname. Zot és el que difèrencia $Projectname de qualsevol altre projecte.

25
doc/ca/members.bb Normal file
View File

@@ -0,0 +1,25 @@
[h2]Documentació per a Membres del Concentrador[/h2]
[h3]Començant[/h3]
[zrl=[baseurl]/help/registration]Registrant un Compte[/zrl]
[zrl=[baseurl]/help/accounts_profiles_channels_basics]Tu a $Projectname: breument comptes, perfils i canals[/zrl]
[zrl=[baseurl]/help/profiles]Perfils[/zrl]
[zrl=[baseurl]/help/channels]Canals[/zrl]
[zrl=[baseurl]/help/roles]Permisos per roles i tipus de Canals[/zrl]
[zrl=[baseurl]/help/first-post]La teva primera entrada[/zrl]
[zrl=[baseurl]/help/connecting_to_channels]Connectant Amb Altres Canals[/zrl]
[zrl=[baseurl]/help/permissions]Permisos I Encriptació: Tu Tens El Control[/zrl]
[zrl=[baseurl]/help/cloud]Emmagatzegament Al Núbol[/zrl]
[zrl=[baseurl]/help/remove_account]Esborrar un Canal o un Compte[/zrl]
[h3]Ajuda per als Membres[/h3]
[zrl=[baseurl]/help/tags_and_mentions]Etiquetes i Mencions[/zrl]
[zrl=[baseurl]/help/webpages]Pàgines Web[/zrl]
[zrl=[baseurl]/help/bbcode]Referència BBcode per a entrades i comentaris[/zrl]
[zrl=[baseurl]/help/checking_account_quota_usage]Comprovant la Quota d'Ús del Compte[/zrl]
[zrl=[baseurl]/help/cloud_desktop_clients]Clients d'Escriptori al Núbol[/zrl]
[zrl=[baseurl]/help/AdvancedSearch]Cerca Avançada al Directori[/zrl]
[zrl=[baseurl]/help/addons]Ajuda pels Addons[/zrl]
[zrl=[baseurl]/help/diaspora_compat]Compatibilitat de Comunicacions amb Diaspora (Diaspora i Friendica)[/zrl]
[zrl=[baseurl]/help/faq_members]FAQ Per Membres[/zrl]
[zrl=[baseurl]/help/bugs]Errors, Assumptes, i les coses que arriben de cop a la nit...[/zrl]

37
doc/ca/profiles.bb Normal file
View File

@@ -0,0 +1,37 @@
[b]Profiles[/b]
$Projectname has unlimited profiles. You may use different profiles to show different &quot;sides of yourself&quot; to different audiences. This is different to having different channels. Different channels allow for completely different sets of information. You may have a channel for yourself, a channel for your sports team, a channel for your website, or whatever else. A profile allows for finely graded &quot;sides&quot; of each channel. For example, your default public profile might say &quot;Hello, I'm Fred, and I like laughing&quot;. You may show your close friends a profile that adds &quot;and I also enjoy dwarf tossing&quot;.
You always have a profile known as your &quot;default&quot; or &quot;public&quot; profile. This profile is always available to the general public and cannot be hidden (there may be rare exceptions on privately run or disconnected sites). You may, and probably should restrict the information you make available on your public profile.
That said, if you want other friends to be able to find you, it helps to have the following information in your public profile...
[ul][*]Your real name or at least a nickname everybody knows
[*]A photo of you
[*]Your location on the planet, at least to a country level.[/ul]
In addition, if you'd like to meet people that share some general interests with you, please take a moment and add some &quot;Keywords&quot; to your profile. Such as &quot;music, linux, photography&quot; or whatever. You can add as many keywords as you like.
To create an alternate profile, first go to [zrl=[baseurl]/settings/features]Settings &gt; Additional Features[/zrl] and enable &quot;Multiple Profiles&quot; there, otherwise you won't have the ability to use more than just your default profile.
Then select &quot;Edit Profiles&quot; from the menu of your $Projectname site. You may edit an existing profile, change the profile photo, add things to a profile or create a new profile. You may also create a &quot;clone&quot; of an existing profile if you only wish to change a few items but don't wish to enter all the information again. To do that, click on the profile you want to clone and choose &quot;Clone this profile&quot; there.
In the list of your profiles, you can also choose the contacts who can see a specific profile. Just click on &quot;Edit visibility&quot; next to the profile in question (only available for the profiles that are not your default profile) and then click on user images to add them to or remove them from the group of people who can see this profile.
Once a profile has been selected, when the person views your profile, they will see the private profile you have assigned. If they are not authenticated, they will see your public profile.
There is a setting which allows you to publish your profile to a directory and ensure that it can be found by others. You can change this setting on the &quot;Settings&quot; page.
If you do not wish to be found be people unless you give them your channel address, you may leave your profile unpublished.
[b]Keywords and Directory Search[/b]
On the directory page, you may search for people with published profiles. Currently, only the name field and the keywords are searched. You may also include such keywords in your default profile - which may be used to search for common interests with other members. Keywords are used in the channel suggestion tool and although they aren't visible in the directory, they are shown if people visit your profile page.
On your Connnections page and in the directory there is a link to &quot;Suggestions&quot; or &quot;Channel Suggestions&quot;, respectively. This will find channels who have matching and/or similar keywords. The more keywords you provide, the more relevant the search results that are returned. These are sorted by relevance.
See Also
[zrl=[baseurl]/help/AdvancedSearch]Advanced Searching[/zrl]
#include doc/macros/main_footer.bb;

35
doc/ca/registration.bb Normal file
View File

@@ -0,0 +1,35 @@
[size=large][b]Registre[/b][/size]
No tots els llocs $Projectname permeten la inscripció oberta. Si es permet el registre, veureu un enllaç de &quot; Registre &quot; immediatament sota de l'entrada a la pàgina principal del lloc. Seguint aquest enllaç et portarà a la pàgina de registre del lloc. En alguns llocs es pot redirigir a un altre lloc que permet registres. Com tots els llocs $Projectname estan vinculats, no importa on resideix el teu compte.
[b]La Teva Adreça de Correu Electrònic[/b]
Si us plau introdueix la teva adreça de correu electrònic vàlida. La teva adreça de correu electrònic mai es farà pública. Aquesta adreça s'utilitzarà per activar el teu compte, que (opcionalment) enviarà notificacions de correu electrònic per als missatges entrants o articles, [i]i per recuperar contrasenyes perdudes[/i].
[b]Contrasenya[/b]
Introdueix una contrasenya de la teva elecció, i repeix-la en la segona casella per assegurar-te que es va escriure correctament. Com $Projectname ofereix una identitat descentralitzada, Es pot accedir al teu compte en molts altres llocs web no només en el que t'has donat d'alta.
[b]Termes Del Servei[/b]
Clica a l'enllaç per llegir els [zrl=[baseurl]/help/TermsOfService]Termes de Servei[/zrl] del lloc. Una vegada llegits, marca la casella al formulari de registre per confirmar.
[b]Registre[/b]
Una vegada que hagis proporcionat els detalls necessaris, fes clic al botó "Registrar-se". Alguns llocs poden requerir l'aprovació de l'administrador abans de processar el registre, s'avisarà si aquest és el cas. Si us plau, mira el teu correu electrònic (incloent carpetes d'spam) per poder finalitzar la teva aprovació de registre.
[b]Crear un Canal[/b]
A continuació, se et presentarà la pantalla &quot; Afegir un canal&quot;. Normalment, el primer canal serà un que et representa - pel que l'ús del seu propi nom (o pseudònim) com el nom del canal és una bona idea. El nom de la cadena ha de ser pensat com un títol o descripció breu del teu canal. El &quot; triar un sobrenom curt &quot; és similar a un &quot;nom d'usuari &quot;. Farem servir tot el que entra aquí per crear una adreça de canal, que altres persones utilitzaran per connectar-se amb tu, i que utilitzaràs per iniciar sessió en altres llocs. Això s'assembla a una adreça de correu electrònic, i pren la forma nickname@siteyouregisteredat.xyz
Quan es crea el teu canal se't portarà directament a la pàgina de configuració on pots definir permisos, habilitar les funcions, etc. Totes aquestes coses es tracten a la secció corresponent dels fitxers d'ajuda.
Veure Tambè
[zrl=[baseurl]/help/accounts_profiles_channels_basics]Lo Basic sobre Identitats dins $Projectname[/zrl]
[zrl=[baseurl]/help/accounts]Comptes[/zrl]
[zrl=[baseurl]/help/profiles]Perfils[/zrl]
[zrl=[baseurl]/help/permissions]Permisos[/zrl]
[zrl=[baseurl]/help/remove_account]Eliminar Compte[/zrl]
#include doc/macros/main_footer.bb;

61
doc/ca/what_is_zot.bb Normal file
View File

@@ -0,0 +1,61 @@
[b]Qué és Zot?[/b]
Zot és el protocol que fa funcionar $Projectname, proveeix tres Característiques esencials: Comunicacions, Identitat, i Control d'Accéss.
Les funcionalitats que proveeix es poden describir de la següent manera:
- una relació en línia es només un munt de permisos
- internet és només un altre carpeta
[b][size=20]Comunicacions[/size][/b]
Zot és un protocol revolucionari que ofereix [i]comunicacions descentralitzades[/i] i [i]gestió d'identitat[/i] en tota la malla (o entrallat de connexions). El resultat es una plataforma que proveeix serveis web comparables amb els que ofereixen les grans companyies, però sense elles ni els seus problemes de privacitat, la seva insaciable necessitat de beneficis, ni la seva idea dels jardins-privats.
Comunicacions i xarxes socials són una part integral del teixit. Qualsevol canal (i qualsevol servei ofert per aquest canal) por fer ús complert de les grans caracteristiques de comunicació social a escala global. Aquestes comunicacions poden ser públiques o privades - i comunicacions privades no es limiten a encriptar totalment l'enviament, sino que també encripten l'emmagatzegament per tal d'impedir que, administradors de sistemes murris o proveidors de servei, accidental o intencionadament tafanegin o revelin dades personals.
Zot permet un ampli vental de serveis en segon plà per a la xarxa, des de oferir suggeriments d'amics, a serveis de directori. També pot realitzar altres coses que normalment només són possibles en un proveïdor centralitzat, com missatges &quot;de mur a mur&quot;. Perfils particulars/múltiples es poden crear fàcilment i el contingut del web es pot adaptar a l'espectador a través del [i]Control Lliscant d'Afinitat[/i].
No trobaràs, de cap manera, aquestes característiques en altres serveis de comunicació descentralitzades. A més de proporcionar la descentralització de concentradors (servidors), potser la característica més innovadora i interessant de Zot és el subministrament de serveis [i]d'identitat descentralitzada[/i].
[b][size=20]Identitat[/size][/b]
La capa que permet identitat mitjançant Zot es única. Facilita [i]l'identificació única invisible[/i] al llarg de tots els llocs de la malla.
També ofereix [i]identitat nómada[/i], de tal forma que les teves comunicacions amb amics, familiars , i qualsevol amb el que et comuniquis no s'han de veure afectats per la pérdua (caiguda, desconnexió) temporal/permanent del teu node de comunicació primari.
Les parts importants de la teva identitat i les relacions es poden copiar a una memòria USB, o el teu ordinador portàtil, i poden aparèixer en qualsevol node de la xarxa en qualsevol moment - amb tots els teus amics i preferències intactes.
Fonamentalment, aquestes instàncies (identitats) nòmades es mantenen en sincronia per tal que qualsevol instància pugui fer-se càrrec si un altre està en perill o danyada. Això el protegeix contra no només d'una fallada del sistema, sinó també de sobrecàrregues temporals del lloc i/o la manipulació governamental o censura.
Identitat nòmada, inici de sessió únic, i nodes $Projectname descentralitzats, al nostre parer, introduir un alt grau de grau de [i]resiliència[/i] i [i]persistència[/i] en les comunicacions d'Internet, que són profundament necessàries en direcció contrària de les tendències mundials cap a la centralització corporativa, així com la vigilància governamental indiscriminada i la censura.
Com naveges per la xarxa, els canals de visualització i el seu contingut únic, que es produeix sobre la marxa, fins i tot a través de centres de servidors completament diferents. No hi ha contrasenyes per entrar. No hi ha res a escriure. No tens que posar teu nom en cada nou lloc que visites.
Com Zot pot fer això? En diem [i]identificació-màgica[/i], perquè $Projectname oculta els detalls de les complexitats que van a l'inici únic de sessió, les identitats nòmades, i l'experiència de navegació a la xarxa. Aquest és un dels objectius de disseny de $Projectname: per augmentar la privacitat i la llibertat a la xarxa, alhora que redueix la complexitat i el tedi interposat per la necessitat d'introduir noves contrasenyes i noms d'usuari per a cada vista diferent, que pots visitar en línia.
Entrar com a usuari només una vegada en el teu centre d'origen (o qualsevol centre de recolçament nòmada que hagis triat). Això permet accedir a tots els serveis autenticats en qualsevol lloc de la malla - com ara anar a comprar, blocs, fòrums, i l'accés a la informació privada. Això és igual que els serveis oferts pels grans proveïdors de les empreses amb enormes bases de dades d'usuaris; però, pots ser un membre d'aquesta comunitat, així com un servidor en aquesta xarxa emprant un RasberryPi de 35$. La teva contrasenya no s'emmagatzema en un miler de diferents llocs, o encara pitjor, només en uns pocs llocs com Google i Facebook, fora del teu control directe.
No pots ser silenciat. No pots ser eliminat de la xarxa, llevat que triïs per sortir, tu mateix.
[b][size=20]Control d'Accés[/size][/b]
La capa de identitat de Zot permet proporcionar permisos específics a qualsevol contingut que desitgis publicar - i aquests permisos s'estenen per $ProjectName. Això és com tenir un sol súper gran espai web format per un exèrcit de petits llocs web individuals - i on cada canal a la xarxa pot controlar completament les seves preferències de privacitat i ús compartit dels recursos web que creen.
Actualment, la xarxa suporta comunicacions, àlbums de fotos, esdeveniments, i arxius. Això s'ampliarà en el futur per proporcionar serveis de gestió de continguts (pàgines web) i instal·lacions d'emmagatzematge en el núvol, com biblioteques WebDAV i multimèdia. Cada objecte i la forma en què es comparteix i amb qui està completament sota el teu control.
Aquest tipus de control està disponible en grans proveïdors de serveis com Facebook i Google, ja que poseeixen la base de dades d'usuari. Dins de la xarxa, no hi ha necessitat d'un gran usuari de base de dades a la teva màquina - perquè la xarxa [i]és[/i] la teva base de dades d'usuari. essencialment infinita capacitat (limitada pel nombre total de nodes en línia a través d'Internet), i s'estén entre centenars, i potencialment milions d'ordinadors.
L'accés pot ser concedit o negat per a qualsevol recurs, a qualsevol canal, o qualsevol grup de canals; en qualsevol lloc dins de la malla. Altres podràn accedir al teu contingut si els permets fer-ho, i ni tan sols cal tenir un compte al node. Les teves fotos privades no es poden veure, perquè els permissos realment funcionen; no són un complement que s'ha afegit a l'últim moment. Si no ets a la llista d'espectadors permesos per a una foto en particular, tu no la veuràs.
[b][size=18]Recursos Addicionals i Enllaços[/size][/b]
Per més detalla, informació tècnica sobre Zot, clica sobre algún dels següents enllaços:
- [url=https://github.com/friendica/red/wiki/Zot---A-High-Level-Overview]Vista per experts (en anglès)[/url]
- [url=https://github.com/friendica/red/wiki/zot]Especificació pel desenvolupament de Zot (en anglès)[/url]
- [url=https://github.com/redmatrix/hubzilla/blob/master/include/zot.php]Referència per la implementació de Zot en PHP (en anglès)[/url]
#include doc/macros/main_footer.bb;

View File

@@ -22,7 +22,7 @@ Once you have created your channel, you will be taken to the settings page, wher
Once you have done this, your channel is ready to use. At [observer=1][observer.url][/observer][observer=0]example.com/channel/username[/observer] you will find your channel &quot;stream&quot;. This is where your recent activity will appear, in reverse chronological order. If you post in the box marked &quot;share&quot;, the entry will appear at the top of your stream. You will also find links to all the other communication areas for this channel here. The &quot;About&quot; tab contains your &quot;profile&quot;, the photos page contain photo albums, and the events page contains events share by both yourself and your contacts.
The &quot;Matrix&quot; page contains all recent posts from across the matrix, again in reverse chronologial order. The exact posts that appear here depend largely on your permissions. At their most permissive, you will receive posts from complete strangers. At the other end of the scale, you may see posts from only your friends - or if you're feeling really anti-social, only your own posts.
The &quot;Grid&quot; page contains all recent posts from across the $Projectname network, again in reverse chronologial order. The exact posts that appear here depend largely on your permissions. At their most permissive, you will receive posts from complete strangers. At the other end of the scale, you may see posts from only your friends - or if you're feeling really anti-social, only your own posts.
As mentioned at the start, many other kinds of channel are possible, however, the creation procedure is the same. The difference between channels lies primarily in the permissions assigned. For example, a channel for sharing documents with colleagues at work would probably want more permissive settings for &quot;Can write to my &quot;public&quot; file storage&quot; than a personal account. For more information, see the permissions section.

View File

@@ -22,6 +22,6 @@ See: [zrl=[baseurl]/help/cloud_desktop_clients]Cloud Desktop Clients[/zrl]
[b]Permissions[/b]
When using WebDAV, the file is created with your channel's default file permissions and this cannot be changed from within the operating system. It also may not be as restrictive as you would like. What we've found is that the preferred method of making files private is to first create folders or directories; then visit &quot;filestorage/{{username}}&quot;; select the directory and change the permissions. Do this before you put anything into the directory. The directory permissions take precedence so you can then put files or other folders into that container and they will be protected from unwanted viewers by the directory permissions. It is common for folks to create a &quot;personal&quot; or &quot;private&quot; folder which is restricted to themselves. You can use this as a personal cloud to store anything from anywhere on the web or any computer and it is protected from others. You might also create folders for &quot;family&quot; and &quot;friends&quot; with permission granted to appropriate collections of channels.
When using WebDAV, the file is created with your channel's default file permissions and this cannot be changed from within the operating system. It also may not be as restrictive as you would like. What we've found is that the preferred method of making files private is to first create folders or directories; then visit &quot;filestorage/{{username}}&quot;; select the directory and change the permissions. Do this before you put anything into the directory. The directory permissions take precedence so you can then put files or other folders into that container and they will be protected from unwanted viewers by the directory permissions. It is common for folks to create a &quot;personal&quot; or &quot;private&quot; folder which is restricted to themselves. You can use this as a personal cloud to store anything from anywhere on the web or any computer and it is protected from others. You might also create folders for &quot;family&quot; and &quot;friends&quot; with permission granted to appropriate privacy groups.
#include doc/macros/main_footer.bb;

View File

@@ -27,8 +27,8 @@ Currently there are five layout templates, unless your site provides additional
edgesthree - three column layout with fixed side margins
full - three column layout with fixed side margins and adds a "header" region beneath the navigation bar
[b]redable[/b]
A template for reading longer texts. Three columns: aside, content and right_aside.
[b]redable[/b] (sic)
A template for reading longer texts full screen (so without navigation bar). Three columns: aside, content and right_aside.
For maximum readability it is advised to only use the middle content column.
[b]zen[/b]

View File

@@ -1,5 +1,9 @@
[b]Credits[/b]
Thanks to all who have helped and contributed to the project and its predecessors over the years. It is possible we missed in your name but this is unintentional. We also thank the community and its members for providing valuable input and without whom this entire effort would be meaningless.
It is also worth acknowledging the contributions and solutions to problems which arose from discussions amongst members and developers of other somewhat related and competing projects; even if we have had our occasional disagreements.
Mike Macgirvin
Fabio Comuni
Simon L'nu
@@ -10,7 +14,7 @@ tommy tomson
Simon
zottel
Christian Vogeley
jeroenpraat
Jeroen van Riet Paap (jeroenpraat)
Michael Vogel
erik
Zach Prezkuta
@@ -62,6 +66,7 @@ tonnerkiller
Antoine G
Christian Drechsler
Ludovic Grossard
RedmatrixCanada
Stanislav Lechev [0xAF]
aweiher
bufalo1973
@@ -73,3 +78,5 @@ mycocham
ndurchx
pafcu
Simó Albert i Beltran
Manuel Reva
Manuel Jiménez Friaza

View File

@@ -23,18 +23,17 @@
[tr][td][zrl=[baseurl]/help/database/db_group_member]group_member[/zrl][/td][td]privacy groups (collections), group info[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_groups]groups[/zrl][/td][td]privacy groups (collections), member info[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_hook]hook[/zrl][/td][td]plugin hook registry[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_hubloc]hubloc[/zrl][/td][td]Red location storage, ties a hub location to an xchan[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_hubloc]hubloc[/zrl][/td][td]xchan location storage, ties a hub location to an xchan[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_issue]issue[/zrl][/td][td]future bug/issue database[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_item]item[/zrl][/td][td]all posts and webpages[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_item_id]item_id[/zrl][/td][td]other identifiers on other services for posts[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_likes]likes[/zrl][/td][td]likes of 'things'[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_mail]mail[/zrl][/td][td]private messages[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_manage]manage[/zrl][/td][td]may be unused in Red, table of accounts that can "su" each other[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_menu]menu[/zrl][/td][td]webpage menu data[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_menu_item]menu_item[/zrl][/td][td]entries for webpage menus[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_notify]notify[/zrl][/td][td]notifications[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_obj]obj[/zrl][/td][td]object data for things (x has y)[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_outq]outq[/zrl][/td][td]Red output queue[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_outq]outq[/zrl][/td][td]output queue[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_pconfig]pconfig[/zrl][/td][td]personal (per channel) configuration storage[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_photo]photo[/zrl][/td][td]photo storage[/td][/tr]
[tr][td][zrl=[baseurl]/help/database/db_poll]poll[/zrl][/td][td]data for polls[/td][/tr]

View File

@@ -27,29 +27,22 @@
[/td][/tr]
[tr][td]abook_dob[/td][td]Datetime of connection's birthday converted from *their* timezone to UTC[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]abook_flags[/td][td]Bitfield containing blocked(0x1), ignored(0x2), hidden(0x4), archived(0x8), pending(0x10), unconnected(0x20), self(0x80), feed(0x100)[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_flags[/td][td]No longer used[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]abook_profile[/td][td]profile.guid of profile to display to this connection if authenticated[/td][td]char(64)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]abook_blocked[/td][td]Bi-directional communications with this channel are blocked, regardless of other permissions. [/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_ignored[/td][td]Incoming communications from this channel are blocked, regardless of other permissions. [/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_hidden[/td][td]This connection will not be shown as a connection to anybody but the channel owner[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_archived[/td][td]This connection is likely non-functioning and the entry and conversations are preserved, but further polled communications will not be attempted. [/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_pending[/td][td]A connection request was received from this channel but has not been approved by the channel owner, public communications may still be visible but no additional permissions have been granted. [/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_unconnected[/td][td]currently unused. Projected usage is to indicate "one-way" connections which were insitgated on this end but are still pending on the remote end. [/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_self[/td][td]is a special case where the owner is the target. Every channel has one abook entry with abook_self and with a target abook_xchan set to channel.channel_hash . When this flag is present, abook_my_perms is the default permissions granted to all new connections and several other fields are unused.[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_feed[/td][td]indicates this connection is an RSS/Atom feed and may trigger special handling.[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_incl[/td][td]connection filter allow rules separated by LF[/td][td]text[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_excl[/td][td]connection filter deny rules separated by LF[/td][td]text[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]abook_instance[/td][td]comma separated list of site urls of all channel clones that this connection is connected with (used only for singleton networks which don't support cloning)[/td][td]text[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/table]
Notes:
ABOOK_FLAGS_BLOCKED - Bi-directional communications with this channel are blocked, regardless of other permissions.
ABOOK_FLAGS_IGNORED - Incoming communications from this channel are blocked, regardless of other permissions.
ABOOK_FLAGS_HIDDEN - This connection will not be shown as a connection to anybody but the channel owner
ABOOK_FLAGS_ARCHIVED - This connection is likely non-functioning and the entry and conversations are preserved, but further polled communications will not be attempted.
ABOOK_FLAGS_PENDING - A connection request was received from this channel but has not been approved by the channel owner, public communications may still be visible but no additional permissions have been granted.
ABOOK_FLAGS_UNCONNECTED - currently unused. Projected usage is to indicate "one-way" connections which were insitgated on this end but are still pending on the remote end.
ABOOK_FLAGS_SELF is a special case where the owner is the target. Every channel has one abook entry with ABOOK_FLAGS_SELF with a target abook_xchan set to channel.channel_hash . When this flag is present, abook_my_perms is the default permissions granted to all new connections and several other fields are unused.
ABOOK_FLAGS_FEED - indicates this connection is an RSS/Atom feed and may trigger special handling.
Return to [zrl=[baseurl]/help/database]database documentation[/zrl]

View File

@@ -21,7 +21,15 @@
[/td][/tr]
[tr][td]folder[/td][td]attach.hash of parent folder[/td][td]char(64)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]flags[/td][td]see notes[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]flags[/td][td]no longer used[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]is_dir[/td][td]0 (file) or 1 to indicate a directory[/td][td]tinyint[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]is_photo[/td][td]if 1, a photo is linked to this resource[/td][td]tinyint[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]os_storage[/td][td]if 0, data contains content; if 1 data contains path to content (always 1 in hubzilla)[/td][td]tinyint[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]display_path[/td][td]under construction, store the human readable path[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]data[/td][td]file data or pathname to stored data if ATTACH_FLAG_OS[/td][td]longblob[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
@@ -39,12 +47,6 @@
[/td][/tr]
[/table]
Bitmasks
define ( 'ATTACH_FLAG_DIR', 0x0001); This is a directory
define ( 'ATTACH_FLAG_OS', 0x0002); Data content is link to OS file containing data, if unset the data filed contains the file data
permissions are xchan_hash or group_hash surrounded by angle chars. e.g. '<abc123><xyz789>'
Return to [zrl=[baseurl]/help/database]database documentation[/zrl]

View File

@@ -1,95 +1,99 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]channel_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]channel_id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]channel_account_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]channel_account_id[/td][td]account.id of the account owning this channel[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]channel_primary[/td][td][/td][td]tinyint(1) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]channel_primary[/td][td]1 = this is the primary instance of this channel[/td][td]tinyint(1) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]channel_name[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_name[/td][td]Name that this channel is known by[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_address[/td][td][/td][td]char(255)[/td][td]NO[/td][td]UNI[/td][td][/td][td]
[tr][td]channel_address[/td][td]"username" or URL-and-email safe nickname[/td][td]char(255)[/td][td]NO[/td][td]UNI[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_guid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_guid[/td][td]Long hash representing a psuedo-unique ID, does not have ot be globally unique[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_guid_sig[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_guid_sig[/td][td]channel.gui signed with channel.prvkey and base64url_encoded[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_hash[/td][td]base64url_encode of a 64-char whirlpool hash of channel.guid and channel_guid_sig concatenated, synonymous with xchan_hash.[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_timezone[/td][td][/td][td]char(128)[/td][td]NO[/td][td]MUL[/td][td]UTC[/td][td]
[tr][td]channel_timezone[/td][td]PHP-legal timezone[/td][td]char(128)[/td][td]NO[/td][td]MUL[/td][td]UTC[/td][td]
[/td][/tr]
[tr][td]channel_location[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_location[/td][td]Default for item.location[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_theme[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_theme[/td][td]channel theme preference[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_startpage[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]channel_startpage[/td]relative site URL to visit after logging in[td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]channel_pubkey[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_pubkey[/td][td]RSA public key 4096 bit[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_prvkey[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_prvkey[/td][td]RSA private key 4096 bit[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_notifyflags[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]65535[/td][td]
[tr][td]channel_notifyflags[/td][td]bifield representing what notification types are active[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]65535[/td][td]
[/td][/tr]
[tr][td]channel_pageflags[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]channel_pageflags[/td][td]bitfield of special channel uses[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]channel_dirdate[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]channel_dirdate[/td][td]time when directory was last pinged. Must do this once a month[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]channel_deleted[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]channel_deleted[/td][td]time when channel was deleted[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]channel_max_anon_mail[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]10[/td][td]
[tr][td]channel_max_anon_mail[/td][td]unused[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]10[/td][td]
[/td][/tr]
[tr][td]channel_max_friend_req[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]10[/td][td]
[tr][td]channel_max_friend_req[/td][td]unused[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]10[/td][td]
[/td][/tr]
[tr][td]channel_expire_days[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]channel_expire_days[/td][td]expire imported content that hasn't been otherwise protected after this many days, 0 is no expiration[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]channel_passwd_reset[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]channel_passwd_reset[/td][td]password reset token[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]channel_default_group[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]channel_default_group[/td][td]put all new connections into the group with this name[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]channel_allow_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_allow_cid[/td][td]Default permissions for this channel[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_allow_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_allow_gid[/td][td]Default permissions for this channel[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_deny_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_deny_cid[/td][td]Default permissions for this channel[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_deny_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]channel_deny_gid[/td][td]Default permissions for this channel[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]channel_r_stream[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_stream[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_r_profile[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_profile[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_r_photos[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_photos[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_r_abook[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_abook[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_stream[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_stream[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_wall[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_wall[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_tagwall[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_tagwall[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_comment[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_comment[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_mail[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_mail[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_photos[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_photos[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_chat[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_chat[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_a_delegate[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]channel_a_delegate[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]channel_r_storage[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_storage[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_storage[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_storage[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_r_pages[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_r_pages[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_pages[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_pages[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_a_republish[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_a_republish[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_w_like[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[tr][td]channel_w_like[/td][td]specific permission bitfield[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_removed[/td][td]if 1, this channel has been deleted[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[tr][td]channel_system[/td][td]if 1, this is the special system channel on this site[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]128[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,15 +1,15 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]chat_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]chat_id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]chat_room[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]chat_room[/td][td]chatroom.cr_id for this chat[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]chat_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]chat_xchan[/td][td]author xchan_hash[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]chat_text[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]chat_text[/td][td]the text of the chat message[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]created[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]created[/td][td]timestamp of this message[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,17 +1,17 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]cp_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]cp_id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]cp_room[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]cp_room[/td][td]chatroom.cr_id of the chatroom[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]cp_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]cp_xchan[/td][td]xchan_hash of the chatroom participant[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]cp_last[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]cp_last[/td][td]datetime last ping[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]cp_status[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]cp_status[/td][td]text status description e.g. "online"[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]cp_client[/td][td][/td][td]char(128)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]cp_client[/td][td][/td]IP address of this client[td]char(128)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[/table]

View File

@@ -1,27 +1,27 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]cr_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]cr_id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]cr_aid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]cr_aid[/td][td]account.id of chatroom owner[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]cr_uid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]cr_uid[/td][td]channel.channel_id of chatroom owner[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]cr_name[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]cr_name[/td][td]visible name of chatroom[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]cr_created[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]cr_created[/td][td]creation timestampe[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]cr_edited[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]cr_edited[/td][td]edited timestamp[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]cr_expire[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]cr_expire[/td][td]expiration period for chats in this chatroom in minutes, 0 is no expiration[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]allow_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]allow_cid[/td][td]permissions for this room[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]allow_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]allow_gid[/td][td]permissions for this room[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]deny_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]deny_cid[/td][td]permissions for this room[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]deny_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]deny_gid[/td][td]permissions for this room[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,21 +1,24 @@
Used in Diaspora private mails
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]guid[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]guid[/td][td]A unique identifier for this conversation[/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]recips[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]recips[/td][td]sender_handle;recipient_handle[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(11)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]uid[/td][td]channel.channel_id of the owner of this data[/td][td]int(11)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]creator[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]creator[/td][td]handle of creator[/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]created[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]created[/td][td]creation timestamp[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]updated[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]updated[/td][td]edited timestamp[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]subject[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]subject[/td][td]subject of initial message (obscured for privacy)[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,13 +1,13 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]uid[/td][td]channel.channel_id of the owner of this data[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]gid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]gid[/td][td]groups.id of the associated group[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan[/td][td]xchan.xchan_hash of the member assigned to the associated group[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[/table]

View File

@@ -1,17 +1,17 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]hash[/td][td]unique hash representing this group with the group name appended[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]uid[/td][td]channel.channel_id owning this data[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]visible[/td][td][/td][td]tinyint(1)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]visible[/td][td]1 indicates the member list is not private[/td][td]tinyint(1)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]deleted[/td][td][/td][td]tinyint(1)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]deleted[/td][td]1 indicates the group has been deleted[/td][td]tinyint(1)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]name[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]name[/td][td]human readable name of group[/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,15 +1,15 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(11)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(11)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]hook[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]hook[/td][td]name of hook[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]file[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]file[/td][td]relative filename of hook handler[/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]function[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]function[/td][td]function name of hook handler[/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]priority[/td][td][/td][td]int(11) unsigned[/td][td]NO[/td][td][/td][td]0[/td][td]
[tr][td]priority[/td][td]not yet implemented - can be used to sort conflicts in hook handling by calling handlers in priority order[/td][td]int(11) unsigned[/td][td]NO[/td][td][/td][td]0[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,104 +1,151 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]Sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]mid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]mid[/td][td]Message-id - globally unique, there can be several items with the same message-ID in the table as they may have different uid owners[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]aid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]aid[/td][td]channel_account_id of the channel_id (uid) which owns this copy of the item[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]uid[/td][td]channel_id (uid) which owns this copy of the item[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]parent[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]parent[/td][td]item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]parent_mid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]parent_mid[/td][td]Globally unique message-id of the parent to this item[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]thr_parent[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]thr_parent[/td][td]If the parent of this item is not the top-level item in the conversation, the message-id of the immediate parent; otherwise set to parent_mid[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]created[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]created[/td][td]Creation timestamp. If creation is more than ten minutes into the future, set item_delayed to 1; it will automatically be delivered by the poller once the created time has passed[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]edited[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]edited[/td][td]Date of last edit (default is created)[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]expires[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]expires[/td][td]Date this item expires and will be removed[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]commented[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]commented[/td][td]Date of last comment/reply to this item[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]received[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]received[/td][Date the item was received at this sitetd][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]changed[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]changed[/td][td]Date that something in the conversation changed, indicating clients should fetch the conversation again[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]comments_closed[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]comments_closed[/td][td]Date after which no more comments will be accepted[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]owner_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]owner_xchan[/td][td]xchan_hash of the owner of this conversation (this is who replies are sent to)[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]author_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]author_xchan[/td][td]xchan_hash of the author of this item[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]source_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]source_xchan[/td][td]xchan_hash of the external source of this item belongs to multiple delivery chains and comments need to be uplinked[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]mimetype[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]mimetype[/td][td]mime type of the content body[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]title[/td][td][/td][td]text[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]title[/td][td]item title[/td][td]text[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]body[/td][td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]body[/td][td]item body content[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]app[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]app[/td][td]application which generated this item[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]lang[/td][td][/td][td]char(64)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]lang[/td][td]auto-detected language[/td][td]char(64)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]revision[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]revision[/td][td]future use, version control[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]verb[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]verb[/td][td]ActivityStreams verb (old style URI)[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]obj_type[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]obj_type[/td][td]ActivityStreams object type (old style URI)[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]object[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]object[/td][td]JSON encoded object structure unless it is an implied object (normal post)[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]tgt_type[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]tgt_type[/td][td]ActivityStreams target type if applicable (URI)[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]target[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]target[/td][td]JSON encoded target structure if used[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]layout_mid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]layout_mid[/td][td]For webpages, which layout (mid or message_id) to use when displaying this page[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]postopts[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]postopts[/td][td]External post connectors add their network name to this comma-separated string to identify that they should be delivered to these networks during delivery[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]route[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]route[/td][td]comma separated xchan list of xchans where this message was routed on its way to this destination, used for route loop discovery and rejection of comments which arrived by alternate routes and may have different permissions[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]llink[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]llink[/td][td]URL of a displayable copy of this post/conversation on this site[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]plink[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]plink[/td][td]permalink or URL toa displayable copy of the message at its source[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]resource_id[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]resource_id[/td][td]Used to link other tables to items, it identifies the linked resource and if set must also set resource_type[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]resource_type[/td][td][/td][td]char(16)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]resource_type[/td][td]default none, if a linked resource this should be the name of the resource type such as "photo" or "event"[/td][td]char(16)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]attach[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]attach[/td][td]JSON structure representing attachments to this item[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]sig[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]sig[/td][td]RSA signature of the item body by the original author if the private key is available[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]diaspora_meta[/td][td][/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]diaspora_meta[/td][td]Used to store Diaspora comment signatures with their weird requirements[/td][td]mediumtext[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]location[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]location[/td][td]text location where this item originated[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]coord[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]coord[/td][td] longitude/latitude pair representing location where this item originated[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]public_policy[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]public_policy[/td][td]If the author has specified restrictions (this network, this site) etc. for distribution, the corresponding policy text is present here and item_private = 1[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]comment_policy[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]comment_policy[/td][td]If the author has specified comment restrictions (thei network, this site, etc.) the corresponding policy text is present here[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]allow_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]allow_cid[/td][td]Access Control - list of allowed xchans '<xchan1><xchan2>...'[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]allow_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]allow_gid[/td]Access Control - list of allowed group hashes, see allow_cid[td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]deny_cid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]deny_cid[/td][td]Access Control - list of denied xchans[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]deny_gid[/td][td][/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]deny_gid[/td][td]Access Control - list of denied groups[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]item_restrict[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]item_restrict[/td]no longer used[td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_flags[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]item_flags[/td][td]no longer used[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_private[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]item_private[/td][td]distribution is restricted[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_origin[/td][td]item originated at this site[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_unseen[/td][td]item has not been seen[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_starred[/td][td]item has been favourited[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_uplink[/td][td]This item is part of a multiple delivery chain and must be uplinked to the original sender (source_xchan)[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_consensus[/td][td]This item allows voting tools[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_wall[/td][td]This item was posted to the wall of uid[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_thread_top[/td][td]parent = id, this is the top post in a conversation [/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_notshown[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_nsfw[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_relay[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_mentionsme[/td][td]The owner of this item was mentioned in it[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_nocomment[/td][td]if 1, no comments are allowed[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_obscured[/td][td]no longer used[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_verified[/td][td]the signature has been verified on this site[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_retained[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_rss[/td][td]item originated in a feed[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_deleted[/td][td]item has been deleted[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_type[/td][td]used to identify webpage and design element types, 0 is a normal conversation item[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_hidden[/td][td]0 or 1 if item is not to be displayed[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_unpublished[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_delayed[/td][td]item is posted in the future[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_pending_remove[/td][td]item is in the process of being removed[/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]item_blocked[/td][td][/td][td]tinyint(4)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[/table]
Return to [zrl=[baseurl]/help/database]database documentation[/zrl]

View File

@@ -1,15 +1,15 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]iid[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]iid[/td][td]item.id of the referenced item[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]uid[/td][td]channel.channel_id of the owner of this data[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]sid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]sid[/td][td]an additional identifier to attach or link to the referenced item (often used to store a message_id from another system in order to suppress duplicates)[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]service[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]service[/td][td]the name or description of the service which generated this identifier[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,12 +0,0 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(11)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[/table]
Return to [zrl=[baseurl]/help/database]database documentation[/zrl]

View File

@@ -1,27 +1,27 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]tid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]tid[/td][td]sequential index[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]aid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]aid[/td][td]channel_account_id of the controlling channel[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]uid[/td][td]channel_id of the controlling channel[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]oid[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]oid[/td][td]DB index of linked thing[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]otype[/td][td][/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]otype[/td][td]type of linked thing[/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]type[/td][td][/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]type[/td][td]taxonomy type (See Tag/term types in boot.php)[/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]term[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]term[/td][td]the actual taxonomy term[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]url[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]url[/td]relevant link (for tags and mentions, a link to the associated resource)[td][/td][td]char(255)[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]imgurl[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[tr][td]imgurl[/td][td]rarely used - an image associated with this taxonomy term[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]term_hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]term_hash[/td][td]unique hash for this entry[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]parent_hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]parent_hash[/td][td]for hierarchical taxonomies, the hash of the relevant parent[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[/table]

View File

@@ -1,44 +1,59 @@
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]xchan_hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]
[tr][td]xchan_hash[/td][td]calculated hash of this extended channel[/td][td]char(255)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xchan_guid[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_guid[/td][td]channel_guid of this extended channel[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_guid_sig[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]xchan_guid_sig[/td][td]base64url encoded signature of the guid[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xchan_pubkey[/td][td][/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[tr][td]xchan_pubkey[/td][td]public key for verifying signed data and assertions[/td][td]text[/td][td]NO[/td][td][/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xchan_photo_mimetype[/td][td][/td][td]char(32)[/td][td]NO[/td][td][/td][td]image/jpeg[/td][td]
[tr][td]xchan_photo_mimetype[/td][td]mimetype of the profile photo[/td][td]char(32)[/td][td]NO[/td][td][/td][td]image/jpeg[/td][td]
[/td][/tr]
[tr][td]xchan_photo_l[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]xchan_photo_l[/td][td]photo url 300px[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_photo_m[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]xchan_photo_m[/td][td]photo url 80 px[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_photo_s[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]xchan_photo_s[/td][td]photo url 48 px[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_addr[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_addr[/td][td]user@host[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_url[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_url[/td][td]url of channel page on primary hub location[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_connurl[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_connurl[/td]poco url[td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_follow[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_follow[/td]url template for following %s[td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_connpage[/td][td][/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[tr][td]xchan_connpage[/td][td]for premium channels url of channel to display when connecting[/td][td]char(255)[/td][td]NO[/td][td][/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_name[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_name[/td][td]human readabl name of channel[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_network[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_network[/td][td]network of channel for instance 'zot', 'diaspora', 'unknown'[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_instance_url[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan_instance_url[/td][td]no longer used[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xchan_flags[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]xchan_flags[/td][td]no longer used[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_photo_date[/td][td][/td][td]datetime[/td][td]NO[/td][td][/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]xchan_photo_date[/td][td]timestamp of last photo change in GMT[/td][td]datetime[/td][td]NO[/td][td][/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]xchan_name_date[/td][td][/td][td]datetime[/td][td]NO[/td][td][/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]xchan_name_date[/td][td]timestamp of last name change in GMT[/td][td]datetime[/td][td]NO[/td][td][/td][td]0000-00-00 00:00:00[/td][td]
[/td][/tr]
[tr][td]xchan_hidden[/td][td]flag - channel is hidden[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_orphan[/td][td]flag - channel has no known hubloc locations[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_censored[/td][td]flag - channel has been censored[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_selfcensored[/td][td]flag - channel is self censored (adult or nsfw)[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_system[/td][td]flag - this represents a system channel[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_pubforum[/td][td]flag - channel is a public forum[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan_deleted[/td][td]flag - channel was deleted[/td][td]int(10) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[/table]
Return to [zrl=[baseurl]/help/database]database documentation[/zrl]

View File

@@ -1,11 +1,12 @@
xign - holds xchan information for channels that have been ignored in 'friend suggestions'
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]uid[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]uid[/td][td]local channel.channel_id[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xchan[/td][td]xchan.xchan_hash of ignored channel[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[/table]

View File

@@ -1,15 +1,21 @@
xlink - used to store social graph and channel ratings
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]xlink_id[/td][td][/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[tr][td]xlink_id[/td][td]sequential ID[/td][td]int(10) unsigned[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]auto_increment
[/td][/tr]
[tr][td]xlink_xchan[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xlink_xchan[/td][td]xchan.xchan_hash of controlling channel[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xlink_link[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[tr][td]xlink_link[/td][td]xchan.xchan_hash of link target (connection or rating)[/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]
[tr][td]xlink_rating[/td][td][/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]xlink_rating[/td][td]int rating[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xlink_updated[/td][td][/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]xlink_rating_txt[/td][td]rating text[/td][td]mediumtext[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xlink_updated[/td][td]timestamp of update in GMT[/td][td]datetime[/td][td]NO[/td][td]MUL[/td][td]0000-00-00 00:00:00[/td][td]
[tr][td]xlink_static[/td][td]0 for social graph, 1 for ratings[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xlink_sig[/td][td]base64url encoded signature of rating information[/td][td]int(11)[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[/table]

View File

@@ -1,9 +1,10 @@
xprof - stores searchable public profile information on directory servers
[table]
[tr][th]Field[/th][th]Description[/th][th]Type[/th][th]Null[/th][th]Key[/th][th]Default[/th][th]Extra
[/th][/tr]
[tr][td]xprof_hash[/td][td][/td][td]char(255)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]
[tr][td]xprof_hash[/td][td]xchan.xchan_hash of this channel[/td][td]char(255)[/td][td]NO[/td][td]PRI[/td][td]NULL[/td][td]
[/td][/tr]
[tr][td]xprof_age[/td][td][/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[tr][td]xprof_age[/td][td]current age (updated monthly)[/td][td]tinyint(3) unsigned[/td][td]NO[/td][td]MUL[/td][td]0[/td][td]
[/td][/tr]
[tr][td]xprof_desc[/td][td][/td][td]char(255)[/td][td]NO[/td][td]MUL[/td][td][/td][td]
[/td][/tr]

View File

@@ -1,8 +1,8 @@
[b]Using The Cloud - Dolphin[/b]
Visit webdavs://example.com/cloud where &quot;example.com&quot; is the URL of your hub.
Visit webdavs://example.com/dav where &quot;example.com&quot; is the URL of your hub.
When prompted for a username and password, enter your username (the first part of your webbie - no @ or domain name) and password for your normal account.
When prompted for a username and password, enter your channel name (the first part of your webbie - no @ or domain name) and password for your normal account.
Note, if you are already logged in to the web interface via Konqueror, you will not be prompted for further authentication.

View File

@@ -25,14 +25,14 @@ Edit /etc/fstab
to include your cloud directory by adding
[code]
[baseurl]/cloud/ /mount/point davfs user,noauto,uid=&lt;DesktopUser&gt;,file_mode=600,dir_mode=700 0 1
[baseurl]/dav/ /mount/point davfs user,noauto,uid=&lt;DesktopUser&gt;,file_mode=600,dir_mode=700 0 1
[/code]
Where [baseurl] is the URL of your hub, /mount/point is the location you want to mount the cloud, and &lt;DesktopUser&gt; is the user you log in to one your computer. Note that if you are mounting as a normal user (not root) the mount point must be in your home directory.
For example, if I wanted to mount my cloud to a directory called 'cloud' in my home directory, and my username was bob, my fstab would be
[code][baseurl]/cloud/ /home/bob/cloud davfs user,noauto,uid=bob,file_mode=600,dir_mode=700 0 1[/code]
[code][baseurl]/dav/ /home/bob/cloud davfs user,noauto,uid=bob,file_mode=600,dir_mode=700 0 1[/code]
Now, create the mount point.
@@ -49,7 +49,7 @@ Create a file called 'secrets'
and add your cloud login credentials
[code]
[baseurl]/cloud &lt;username&gt; &lt;password&gt;
[baseurl]/dav &lt;username&gt; &lt;password&gt;
[/code]
Where &lt;username&gt; and &lt;password&gt; are the username and password [i]for your hub[/i].
@@ -60,7 +60,7 @@ Don't let this file be writeable by anyone who doesn't need it with
Finally, mount the drive.
[code]mount [baseurl]/cloud[/code]
[code]mount [baseurl]/dav[/code]
You can now find your cloud at /home/bob/cloud and use it as though it were part of your local filesystem - even if the applications you are using have no dav support themselves.

View File

@@ -2,8 +2,8 @@
1. Open a File browsing window (that's Nautilus)
2. Select File &gt; Connect to server from the menu
3. Type davs://&lt;domain_name&gt;/cloud/&lt;your_username&gt; and click Connect
4. You will be prompted for your username (same as above) and password
3. Type davs://&lt;domain_name&gt;/dav/&lt;your_channelname&gt; and click Connect
4. You will be prompted for your channel name (same as above) and password
5. Your personal DAV directory will be shown in the window
#include doc/macros/cloud_footer.bb;

Some files were not shown because too many files have changed in this diff Show More