Giter VIP home page Giter VIP logo

moodle-plagiarism_moss's Introduction

THIS PLUGIN IS IN BETA VERSION AND NOT RECOMMANDED TO USE IN PRODUCTION SITES

Introduction

A plagiarism plugin for Moodle 2.x. The underlying anti-plagiarism engine is Moss. It can detect plagiarism in:

  • Source code of C, C++, Java, C#, Python, Visual Basic, Javascript, FORTRAN, ML, Haskell, Lisp, Scheme, Pascal, Modula2, Ada, Perl, TCL, Matlab, VHDL, Verilog, Spice, MIPS assembly, a8086 assembly, a8086 assembly, MIPS assembly and HCL2.
  • Plain text in pdf, doc, docx, odt and rtf files.

Prerequisite

  • Moodle 2.0 or above
  • antiword (optional)
  • perl (Linux) or Cygwin with perl (Windows)

Download

Download it from https://github.com/hit-moodle/moodle-plagiarism_moss/archives/master

or use git:

git clone git://github.com/hit-moodle/moodle-plagiarism_moss.git moss

Installation & Upgrading

MOODLE_PATH means the root path of your moodle installation.

On Linux

  1. If the directory MOODLE_PATH/plagiarism/moss/ exists, remove it.
  2. Make sure the directory name of this plugin is moss. If not, rename it.
  3. Put moss into MOODLE_PATH/plagiarism/.
  4. Login your site as admin and the plugin will be installed/upgraded.
  5. Access http://YOUR.MOODLE.DOMAIN/admin/settings.php?section=optionalsubsystems to enable plagiarism.
  6. Access http://YOUR.MOODLE.DOMAIN/plagiarism/moss/settings.php to enable & setup.

On Windows

  1. If the folder MOODLE_PATH\plagiarism\moss\ exists, remove it.
  2. Make sure the folder name of this plugin is moss. If not, rename it.
  3. Put moss into MOODLE_PATH\plagiarism\.
  4. Login your site as admin and the plugin will be installed/upgraded.
  5. Access http://YOUR.MOODLE.DOMAIN/admin/settings.php?section=optionalsubsystems to enable plagiarism.
  6. Access http://YOUR.MOODLE.DOMAIN/plagiarism/moss/settings.php to enable & setup.

Usage

First, make sure the cron job of your moodle works well. Check http://docs.moodle.org/20/en/Cron for details.

In the activity setting page of any moodle module which supports plagiarism API (now, assignment only), there should be settings for Moss Anti-Plagiarism. Follow the inline help and enjoy it.

Links

Home:

Bug reports, feature requests, help wanted and other issues:

moodle-plagiarism_moss's People

Contributors

bookmanhan avatar danmarsden avatar sunner avatar yechunchun 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

Watchers

 avatar  avatar  avatar  avatar  avatar

moodle-plagiarism_moss's Issues

Not finding any plagiarim

I find your code in github and i want to run it and use it inside our university, but all i got is "There are 0 users are confirmed as plagiarim."

I upload 2 exact same file and i got that, 10 different file and also get that, am i doing something wrong?

i run moodle in Mac OSX, use Moodle version 2.0 on mamp, installed your plugin, run cron.php, i see in log of cron that moss uploaded the files and waiting for response and nothing else printed then finish moss and something else printed.

反抄袭工作不了

cron 的执行结果,

---Moss begins---
Found 1 moss instances to measure
Measure 简单计算累加 (16) in C语言吕春利
"/var/www/moodle21/plagiarism/moss/moss" -d -u 868134010 -l c /var/moodle21data/temp/moss/4//
Processing http://moss.stanford.edu/results/944539780
++ cURL request for "http://moss.stanford.edu/results/944539780" failed, HTTP response code: HTTP/1.1 301 Moved Permanently
++

  • line 1127 of /lib/filelib.php: call to debugging()
  • line 235 of /plagiarism/moss/moss.php: call to download_file_content()
  • line 163 of /plagiarism/moss/moss.php: call to moss->save_results()
  • line 87 of /plagiarism/moss/moss.php: call to moss->call_moss()
  • line 331 of /plagiarism/moss/lib.php: call to moss->measure()
  • line 145 of /lib/plagiarismlib.php: call to plagiarism_plugin_moss->cron()
  • line 131 of /lib/cronlib.php: call to plagiarism_cron()
  • line 79 of /admin/cron.php: call to cron_run()
    can not read http://moss.stanford.edu/results/944539780
    ---Moss done---

另外在我的 /var/moodle21data/temp/moss/4/目录下的作业的个数也不对,全体提交作业有30几个,而这个目录下只有3个作业

不知什么原因,请指点:)

[TODO] Tags browser

In the settings page, add a link to tags browser beside the tag textbox. The browser:

  • List all existing tags with tag names, mod icon, activity name, course name and links if available
  • A select button/link to set the textbox with the tag
  • It should be a popup window. But if js is available, it should be a js windows

filter out binary files

MOSS support plain text files only. All rar, zip, doc, pptx and etc. should be filtered out

in the page " plagiarism/moss/settings.php " Enable moss cannot be enabled.

Moss Anti-Plagiarism Plugin is developped by Harbin Institute of Technology. The plagiarism engine is Moss.

Enable moss

Moss account

After enable the "Enable moss" and set the "Moss account" , I found that there still "userid=0" in the moss file.

Moreover, the owner of moss file has been www-data.

Warp long paragraph to lines with hard return

It seems like moss prefer text line by line. If a paragraph is huge, it should be seperated. For example,

Some would say that a repository is storage — a place where you store your code — somewhat like a box. At GitHub repositories are much more than that. A repository is the history of your project. All the tools that GitHub provides (commits, pull requests, issues, wiki) combine into a story: a story about how your project has changed over time. We feel the best way to represent this idea is with a journal.

should be:

Some would say that a repository is storage — a place where 
you store your code — somewhat like a box. At GitHub repositories 
are much more than that. A repository is the history of your project. 
All the tools that GitHub provides (commits, pull requests, issues, 
wiki) combine into a story: a story about how your project has changed 
over time. We feel the best way to represent this idea is with a journal.

[TODO] add default value to sensitivity

10 is moss's default value. I think it is too small. Maybe 50 is better

in file lib.php, function get_form_elements_module(), around the following code:

            if (!empty($moss->sensitivity)) {
                 $mform->setDefault('sensitivity', $moss->sensitivity);
             }

Add an else branch to setDefault

MOSS

Can I use Moss as plug-in installation so that through onlinejudge assignment i can run and judge student submitted java files through Moss..... Beacuse the sandbox supports only C/C++ programs judging....
Any help will be appreciated if you can please tell me how to judge java programs through sandbox as well!!!

Warp long paragraph to lines with hard return

It seems like moss prefer text line by line. If a paragraph is huge, it should be seperated. For example,

Some would say that a repository is storage — a place where you store your code — somewhat like a box. At GitHub repositories are much more than that. A repository is the history of your project. All the tools that GitHub provides (commits, pull requests, issues, wiki) combine into a story: a story about how your project has changed over time. We feel the best way to represent this idea is with a journal.

should be:

Some would say that a repository is storage — a place where 
you store your code — somewhat like a box. At GitHub repositories 
are much more than that. A repository is the history of your project. 
All the tools that GitHub provides (commits, pull requests, issues, 
wiki) combine into a story: a story about how your project has changed 
over time. We feel the best way to represent this idea is with a journal.

Could not download the moss plagiarism software

Hello, am a student of Middlesex university and I tried downloading the moss plagiarism software, I could not download it, instead there was text written on the page saying, there aren't any uploads for this repository, please what can I do to rectify that or where else can I download the moss plagiarism software. Thanks

[TODO] 缓存moss的两两比较页面

把到moss两两比较页面的链接改为指向diff.php,然后diff.php下载moss页面,替换必要的字符串后存入数据库,并显示。以后再访问该页面,直接显示数据库中的结果。

diff.php和view.php共享同一个renderer.php,以方便在diff.php中加上确认按钮等。改造renderer.php,抽出一个plagiarism_moss_base基类,做为view.php和diff.php各自renderer的基类

error while setting an assignment

Warning: require_once(C:\Moodle281\server\moodleC:\Moodle281\server\moodle/lib/pear): failed to open stream: Invalid argument in C:\Moodle281\server\moodle\plagiarism\moss\lib.php on line 37

Fatal error: require_once(): Failed opening required 'C:\Moodle281\server\moodleC:\Moodle281\server\moodle/lib/pear' (include_path='C:\Moodle281\server\moodle/lib/zend;C:\Moodle281\server\moodle/lib/pear;.;C:\Moodle281\server\php\PEAR') in C:\Moodle281\server\moodle\plagiarism\moss\lib.php on line 37

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.