tkriplean / slash-reflect-sandbox Goto Github PK
View Code? Open in Web Editor NEWdraft implementation of Reflect plugin for Slashcode
Home Page: http://www.cs.washington.edu/homes/travis/reflect/
draft implementation of Reflect plugin for Slashcode
Home Page: http://www.cs.washington.edu/homes/travis/reflect/
Reflect implements an interface change to the comments section that helps people listen, while at the same time producing useful summaries. Next to every comment, readers are prompted to succinctly restate/summarize a point they hear the commenter making. The summaries are displayed in a bulleted list. Commenters can engage with summarizers to make sure that the summarized points accurately portray the points they were trying to make. == Dependencies == 1. The Ajax Slash plugin. 2. jQuery 1.3+ == Installing Reflect into Slashcode == 1. Create a Reflect directory in your Slashcode plugin directory and clone this repo. git clone [email protected]:tkriplean/Slash-Reflect-sandbox.git /path/to/slashcode/plugins/Reflect 2. Run the slash installer or plugin installer. Make sure to select the Reflect and Ajax plugins. 3. Add the following to the appropriate place in your theme's templates (e.g. themes/templates/html-header): [% IF constants.plugin.Reflect && (user.currentPage == "article" || user.currentPage == "comments") && story_title -%] [% commentstatus = Slash.db.sqlSelect('commentstatus', 'discussions', "title='$story_title'"); -%] [% IF commentstatus=='reflect_enabled' -%] <script src="/js/reflect.third_party.min.js" type="text/javascript"></script> <script src="/js/reflect.js" type="text/javascript"></script> <script src="/js/reflect.slash.js" type="text/javascript"></script> [% END -%] [% END -%] 4. Depending on the theme you are using, you may have to modify some of the settings in /js/reflect.slash.jsraw. Currently it is ready for the current Slashdot theme and the slashcode theme. 5. Integrate plugin: /path/to/slashcode/bin/symlink-tool -U /path/to/slashcode/bin/template-tool -U 6. Win! == Uninstalling Reflect == SQL: DELETE FROM css WHERE file IN ('css/reflect.slash.css', 'css/reflect.css'); DELETE FROM message_codes WHERE type='Reflect summary'; UPDATE discussions set commentstatus='enabled' where commentstatus='reflect_enabled'; ALTER TABLE discussions MODIFY COLUMN commentstatus ENUM('disabled','enabled','friends_only','friends_fof_only','no_foe','no_foe_eof','logged_in'); DROP TABLE reflect_bullet; DROP TABLE reflect_bullet_revision; DROP TABLE reflect_bullet_rating; DROP TABLE reflect_response; DROP TABLE reflect_response_revision; DROP TABLE reflect_highlight;
For all posts to Reflect.pl, need to do a server-side check to see whether the logged in user has the necessary permissions to carry out the action
Right now, the client makes another request to the server to grab reflect_client_templates.html. Even though this is clearly cacheable, it is still overhead. Since it doesn't change, we should just include it as part of the original request.
A simple way to vote on reflect summaries, particularly important if issue #4 (paginate) is used. Bubble the good ones to the top.
Reflect should be deactivated by default, and there should be the ability to turn Reflect on for a given story. In the trial run, Reflect will likely only be activated in stories at off-hours.
faster load time...
It is possible that the vertical size of all summaries is actually greater than the original comment. Figure out a UI solution to displaying the summaries alongside the comment in a way that doesn't allow the summaries to be extraordinarily longer than the comment.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.