Giter VIP home page Giter VIP logo

zotonic's Introduction

Test Dialyzer DocsGitHub release Crowdin Join the chat at https://gitter.im/zotonic/zotonic

Zotonic

Zotonic is the open source, high speed, real-time web framework and content management system, built with Erlang.

It is flexible, extensible and designed from the ground up to support dynamic, interactive websites and mobile solutions.

Zotonic is incredibly fast and wonderfully stable – suited for anything from basic websites to complex distributed applications. It offers an elegant backend for managing content with the flexibility that developers need to build truly amazing applications.

Installation

Documentation

You can find out more about Zotonic on http://zotonic.com, including:

Contributing

Zotonic is an open source project, made possible by the community. If you’d like to contribute, please read the Contributing chapter in the documentation.

If you encounter any issues, please report them in our issue tracker. If you discover any security-related issues, please contact us at [email protected].

License

Zotonic is released under the Apache 2.0 License. Please refer to the included LICENSE file for more information.

Thanks

Thanks to the following services for supporting Open Source:

zotonic's People

Contributors

alainodea avatar alvaropag avatar amiramix avatar arthurclemens avatar atillae avatar cdfa avatar cillianderoiste avatar crownedgrouse avatar cyberoni avatar ddeboer avatar dirklectisch avatar doriend avatar fcardinaux avatar hanikesn avatar imagency avatar jarimatti avatar joostf avatar kaos avatar karlsson avatar michielklonhammer avatar mmzeeman avatar mworrell avatar onnet avatar pguyot avatar ptrck0 avatar taavi013 avatar udanieli avatar vkatsuba avatar williamthome avatar witeman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zotonic's Issues

Resize of png uses unnecessary sharpen

From http://code.google.com/p/zotonic/issues/detail?id=43

When Zotonic resizes images it performs an additional 'sharpen' to compensate for soft images due
to making it smaller or the jpeg compression induced softness.

This sharpen is also done with png images that are (almost) not resize so are still sharp. Especially
when lossless is also specified.

We might want to disable the sharpen when the image is almost not resized or lossless is specified.

Images upload failed

From http://code.google.com/p/zotonic/issues/detail?id=48

New installation
After loading new media I get errors in log:

=INFO REPORT==== 29-Jan-2010::16:24:56 ===
identify of ""/tmp/zp-cfafou.zptmp[0]"" failed - "identify:
NoDecodeDelegateForThisImageFormat /tmp/zp-cfafou.zptmp' @ constitute.c/ReadImage/531." =ERROR REPORT==== 29-Jan-2010::16:24:56 === webmachine error: path="/image/lib/images/mimeicons/application-octet- stream.png%28187x200%29%28crop%29%2846E0BF9691BD339E2C8C6155B0ED8E34%29.jpg " {throw,"unknown result from 'identify': 'identify: NoDecodeDelegateForThisImageFormat /home/houdini/myErlang/zotonic_test_cms/modules/mod_base/lib/images/mimeic
ons/application-octet-stream.png' @ constitute.c/ReadImage/531.'",
[{resource_file_readonly,ensure_preview,3},
{webmachine_resource,resource_call,3},
{webmachine_resource,do,3},
{webmachine_decision_core,decision,3},
{webmachine_decision_core,handle_request,2},
{webmachine_mochiweb,loop,1},
{mochiweb_http,headers,4},
{proc_lib,init_p_do_apply,3}]}

I see no uploaded image. What is this path? /image/lib/images/mimeicons?

Crash on start, something with SASL

From http://code.google.com/p/zotonic/issues/detail?id=8

In both .zip 0.1.0 and current svn version.
Boxes are amd64 debian sid and i386 debian sid.

web:/home/www/zotonic/zotonic# ./start.sh
Erlang R13B02 (erts-5.7.3) [source] [smp:4:4] [rq:4] [async-threads:0]
[kernel-poll:true]

=PROGRESS REPORT==== 18-Nov-2009::12:37:39 ===
supervisor: {local,sasl_safe_sup}
started: [{pid,<0.35.0>},
{name,alarm_handler},
{mfa,{alarm_handler,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]

=PROGRESS REPORT==== 18-Nov-2009::12:37:39 ===
supervisor: {local,sasl_safe_sup}
started: [{pid,<0.36.0>},
{name,overload},
{mfa,{overload,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]

=PROGRESS REPORT==== 18-Nov-2009::12:37:39 ===
supervisor: {local,sasl_sup}
started: [{pid,<0.34.0>},
{name,sasl_safe_sup},
{mfa,
{supervisor,start_link,
[{local,sasl_safe_sup},sasl,safe]}},
{restart_type,permanent},
{shutdown,infinity},
{child_type,supervisor}]

=PROGRESS REPORT==== 18-Nov-2009::12:37:39 ===
supervisor: {local,sasl_sup}
started: [{pid,<0.37.0>},
{name,release_handler},
{mfa,{release_handler,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]

=PROGRESS REPORT==== 18-Nov-2009::12:37:39 ===
application: sasl
started_at: nonode@nohost
{"init terminating in
do_boot",{undef,[{zotonic,start,[]},{init,start_it,1},{init,start_em,1}]}}

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

OAuth Signature does not encode properly

oauth_plaintext.erl uses oauth_uri:calate() which does not return a correctly url encoded signature.

I tracked the issue down to here:

On line 87 of oauth_uri.erl:

Value = io_lib:format("%~2.1.0s", [erlang:integer_to_list(C, 16)]),

I changed to this:

Value = io_lib:format("%~s", [erlang:integer_to_list(C, 16)]),

Snazzy up the default website

From http://code.google.com/p/zotonic/issues/detail?id=33

I've seen a couple great and beautiful implementations of Zotonic. (you know who you are).
It would be awesome have a great looking, feature show casing default website. Still the blog
format, but more visual and feature rich, perhaps with the geo-stuff in there and as default /
theme: Amsterdam with our own footage.

Dragging & dropping in the category tortures the db

From http://code.google.com/p/zotonic/issues/detail?id=36

What steps will reproduce the problem?

  1. Open "categories"
  2. Drag-and-drop some categories around, changing categories' parents etc.
  3. Everything becomes slow, because in the background, a proces is
    recalculating all category numbers for all things in the database.

Solutions:

  • do not brute-force change all resources in the database, but only those
    resources which are affected by the operation
  • Create a "save" button which will do all drag-and-drop stages in one
    change. After clicking this button, a dialog pops up to give the user a
    clear warning that this slowness will happen.

{% lib %} tag doesn't generate correct links for files in subdirectories

From http://code.google.com/p/zotonic/issues/detail?id=16

What steps will reproduce the problem?

{% lib
    &quot;css/blueprint/screen.css&quot;
 %}

What is the expected output? What do you see instead?

Should probably generate something along the lines of
<link href="/lib/css/blueprint__screen~59958273600.css" type="text/css" media="screen"
rel="stylesheet" />

Right now generates
<link href="/lib/css/blueprint/screen~59958273600.css" type="text/css" media="screen"
rel="stylesheet" />

Such a file doesn't exist and causes an error in zotonic itself

What version of the product are you using? On what operating system?

r84d4e97594 on MacOS X 10.6.2

mod_search and same publication_start

From http://code.google.com/p/zotonic/issues/detail?id=24

What steps will reproduce the problem?

  1. Create a news item and save it
  2. Create a news item by duplicating the first one
  3. Repeat ad infinitum
  4. Modify a page template to include prev and next links

What is the expected output? What do you see instead?

The search should easily move between items, whereas it is usually stuck in
displaying just a couple of items

What version of the product are you using? On what operating system?

Zotonic 0.2.0

Please provide any additional information below.

The reason for this is that duplicating an item also duplicates its
publication date. Therefore the search used by next and previous queries
always returns the same set of items regardless of the current item.

Attached is a possible solution to that (it also takes into account the
modification date of an item)

Upgrade webmachine to 1.5

From http://code.google.com/p/zotonic/issues/detail?id=7

Webmachine 1.5 has been released.

It has support for hosts, though not the depth of the support we might need. The most limiting
factor is that wm only accepts a single hostname per dispatch rule.

There is also no implementation of the "redirect to primary host name" feature we have added.

We have to evaluate if and how we can use the 1.5 version.

Duplicated pages don't get a resource_uri

From http://code.google.com/p/zotonic/issues/detail?id=30

What steps will reproduce the problem?

  1. Create a page, save it
  2. Duplicate it

What is the expected output? What do you see instead?

The new page should get a resource_uri.

What version of the product are you using? On what operating system?

Version 0.2, r914f08e03f9383806675c55bda6650e88a598013

Please provide any additional information below.

Only found out that this is happening by examining my the atom feed is
invalid. It uses resource_id to generate ids for feed items, and quite a few
of those are empty

Make db connection pool size dynamic

From http://code.google.com/p/zotonic/issues/detail?id=4

At the moment we use a fixed db connection pool size of 10 connections.
Most web sites don't need that many connections, only on a surge so many connections are needed.

We should make the pool size dynamic. Growing from 2 to a maximum depending on the amount
of connections needed.

When connections are not used over time we should close them again.

Menu Editor does not show subitems

From http://code.google.com/p/zotonic/issues/detail?id=14

What steps will reproduce the problem?

  1. Choose a new item from the search box
  2. Drop it on an existing menu item to add it as a submenu

The second-level item does not show up in the menu editor, but it is
visible in the html source of the page.

Inspection with firebug tells that the second level tree is hidden by the
ul ul {display:none}
declaration in zp_admin.css on line 677

I was not digging deeper to see if maybe a 'show' event is missing, but at
least i can't see javascript errors either. Commenting out the
display:none fixes the problem, but possibly breaks something in the
unlinker section where it's declared...

What version of the product are you using? On what operating system?

  • latest hg update as of 21.11 (hg identify says 92911c945e88+ tip)
  • FF3.5 / Opera 10 / Ubuntu 9.04

Please provide any additional information below.

Meanwhile I'm continuing having fun with zotonic ...

/David

getting 500 while providing wrong credentials

From http://code.google.com/p/zotonic/issues/detail?id=45

Steps to reproduce:

  1. goto http://zotonic.com/admin/
  2. insert 'blabla' as login and 'barfoo' as password
  3. click 'logon' button

The output is:

500 error
Click for error information.

[{webmachine_resource,do,3},
{webmachine_decision_core,decision,3},
{webmachine_decision_core,handle_request,2},
{webmachine_mochiweb,loop,1},
{mochiweb_http,headers,4},
{proc_lib,init_p_do_apply,3}]

I use Zotonic both 0.3 and 0.4-dev versions. OS: Debian GNU/Linux 'Lenny' 5.x.

Crash when starting zotonic

From http://code.google.com/p/zotonic/issues/detail?id=2

When I run ./start.sh i get CRASH:

=CRASH REPORT==== 13-Nov-2009::13:46:54 ===
crasher:
initial call: default:init/1
pid: <0.109.0>
registered_name: []
exception exit: {bad_return_value,{error,eacces}}
in function gen_server:init_it/6
ancestors: ['z_module_sup$default',<0.75.0>,z_sites_sup,zotonic_sup,
<0.55.0>]
messages: []
links: [<0.108.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 1597
stack_size: 24
reductions: 1757
neighbours:

custom module not getting started?

From http://code.google.com/p/zotonic/issues/detail?id=39

Hi,

I'm trying to create a module in one of my sites but Zotonic doesn't seem to know to start it
when the server starts. It lives here:

zotonic/priv/sites/default/modules/mod_example.erl

After compiling and running start.sh, I run this in the interpreter:

1> gen_server:call({global, mod_example}, foo).
** exception exit: {noproc,{gen_server,call,[mod_example,foo]}}
in function gen_server:call/2

But if I start the gen_server myself, it works:

2> mod_example:start_link([{context, default}]).
{ok,<0.223.0>}
3> gen_server:call({global, mod_example}, foo).
bar

I've attached mod_example.erl. It's pretty much the bare minimum example described in the
documentation, except start_link is global.

Do I have to do something else to add mod_example to the supervisor tree somehow or is this a
bug?

(It exhibits the same behavior on both 0.2 and trunk (286:8a34b4d359c0))

pgsql problem while stress testing

From http://code.google.com/p/zotonic/issues/detail?id=17

While doing a load test we got the following error message. It happens only in max 3-4% of the
requests, and without load it doesn't seem to happen.

I've send a mail to Will Glozer if he can have a look at it as well.

=ERROR REPORT==== 8-Dec-2009::11:49:49 ===
webmachine error: path="/toekenning/50226/vprojazzlive-in-het-bimhuis"
[{erlang,iolist_to_binary,
[{exit,
{{undef,
[{pgsql_connection,querying,
[{parse,[],
"select r.id from rsc r where r.visible_for = 0 and r.is_published and
r.publication_start <= now() and r.publication_end >= now() and r.pivot_category_nr = 44 order
by r.id offset $1 limit $2",
[]},
{<0.21787.0>,#Ref<0.0.3.217355>},
{state,<0.25169.0>,#Port<0.81081>,
[{<<"client_encoding">>,<<"UTF8">>},
{<<"DateStyle">>,<<"ISO, MDY">>},
{<<"integer_datetimes">>,<<"on">>},
{<<"IntervalStyle">>,<<"postgres">>},
{<<"is_superuser">>,<<"on">>},
{<<"server_encoding">>,<<"UTF8">>},
{<<"server_version">>,<<"8.4.1">>},
{<<"session_authorization">>,<<"postgres">>},
{<<"standard_conforming_strings">>,<<"off">>},
{<<"TimeZone">>,<<"Europe/Amsterdam">>}],
true,"mediafonds",undefined,
{<0.21840.0>,#Ref<0.0.3.217310>},
{55342,950732435},
{statement,[],
[{column,<<"id">>,int4,4,-1,1}],
[int8,int8]},
73}]},
{gen_fsm,handle_msg,7},
{proc_lib,init_p_do_apply,3}]},
{gen_fsm,sync_send_event,
[<0.25167.0>,
{parse,[],
"select r.id from rsc r where r.visible_for = 0 and r.is_published and r.publication_start
<= now() and r.publication_end >= now() and r.pivot_category_nr = 44 order by r.id offset $1
limit $2",
[]}]}},
[{gen_fsm,sync_send_event,2},
{pgsql,equery,3},
{z_db,q,3},
{z_search,search_result,3},
{m_search,search,2},
{m_search,m_find_value,3},

{template_mediafonds__users_pmaas_dev_erlang_zotonic_priv_sites_mediafonds_templates_toeg
ekend_toekenning_tpl,
render2,2},

{template_mediafonds__users_pmaas_dev_erlang_zotonic_priv_sites_mediafonds_templates_toeg
ekend_toekenning_tpl,
render,2}]}]},
{webmachine_decision_core,encode_body,1},
{webmachine_decision_core,decision,1},
{webmachine_decision_core,handle_request,2},
{mochiweb_http,headers,4},
{proc_lib,init_p_do_apply,3}]

TODO: Blog / content Importer

From http://code.google.com/p/zotonic/issues/detail?id=32

There is a rudimentary content importer outside of the repository. It would be awesome to have an
import script for one dimensional content (one model, no relations, just text fields).

Ultimate goal would be perhaps connecting with (for example) to the API of Wordpress to import:

  • Articles (including relations to:)
  • Tags
  • Categories
  • Media
  • Comments
  • Pages

Add warning when 'host' setting is not a valid id

When the ''host' setting in the config contains dots or other "strange" characters then the template compiler will fail with quite non-understandable error messages.

We should add some pre-flight/sanity checks to the config parser and fail with clear messages.

Better reporting about the running system

From http://code.google.com/p/zotonic/issues/detail?id=42

It would be nice to have better reporting for the following aspects of a
zotonic system.

This dashboard functionality would encompass the following:

  • crashes: which gen_servers have crashed and when (also: live feedback
    when a gen_server crashes using a broadcast message!)
  • hits / page requests / stats (integration with google analytics)
  • current connections (users)
  • an error log per gen_server with crash reports

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.