User:Maosef: Difference between revisions

From DRMF
Jump to navigation Jump to search
imported>Maosef
No edit summary
imported>Maosef
No edit summary
 
Line 1: Line 1:
<div id="mw-mywiki-example"></div>
<div id="https://drmf-beta.wmflabs.org/wiki/User:Maosef"></div>


{{Advertisement}}




$(function () {
#Retrieve Andre's program
 
$contents = wfShellExec( $cmd, $retval ); # Math mediawiki extension
LoggerFactory::getInstance( 'Math' )->debug( "TeX output:\n $contents\n---" );


  var myElement = document.getElementById('mw-mywiki-example');
  myElement.innerHTML = 'any HTML';


}());
$Result = preg_replace ("#</semantics>#", "<annotation encoding=\"OpenMath\" >" . $renderer->getUserInputTex() . "</annotation>\n</semantics>", $Result ); # puppet operations


java -jar latex-to-cas-translator.jar -c -CAS=Maple -Expression="\cos@{\alpha}"


=== Bold text ===


$contents = wfShellExec( $cmd, $retval );




# == Class: role::drmf ==
class role::drmf {
  include role::mathoid
  include role::mathsearch
  include role::parserfunctions
  include drmf::mathosphere
  include drmf::latexml


public function execute($par) {
  mediawiki::settings { 'drmf math':
        $this->setHeaders();
    priority => 30,
    values  => ['
      $wgMathDisableTexFilter = \'always\';
      $wgLaTeXMLServer        = \'http://localhost:9999/\';
      $wgMathDefaultLaTeXMLSetting = array( \'format\' => \'xhtml\', \'whatsin\' => \'math\', \'whatsout\' => \'math\', \'pmml\',  \'cmml\',  \'mathtex\',  \'nodefaultresources\',  \'preload\' => array( \'LaTeX.pool\', \'article.cls\', \'amsmath.sty\', \'amsthm.sty\', \'amstext.sty\', \'amssymb.sty\', \'eucal.sty\', \'[dvipsnames]xcolor.sty\', \'url.sty\', \'hyperref.sty\', \'[ids]latexml.sty\', \'DLMFmath.sty\' ), \'linelength\' => 90 );
      $wgCapitalLinks = false;
      $wgHooks[\'MathFormulaPostRender\'] = array( \'wfOnMathFormulaRendered\');
      $wgMetaNamespace = \'Project\';
      $wgSitename = \'DRMF\';
      $wgDefaultUserOptions[\'math\'] = \'latexml\';'
    ],
  }


# A formDescriptor Array to tell HTMLForm what to build
  mediawiki::settings { 'drmf security':
        $formDescriptor = array(
    values => {
                        'simpletextfield' => array(
      'wgGroupPermissions[\'*\'][\'edit\']' => false,
                                'label' => 'Simple Text Field', # What's the label of the field
      'wgGroupPermissions[\'*\'][\'createaccount\']' => false,
                                'class' => 'HTMLTextField' # What's the input type
    },
                        )
  }
                );
        $htmlForm = new HTMLForm( $formDescriptor, $this->getContext(), 'myform' ); # We build the HTMLForm object, calling the form "myform"
        $htmlForm->setSubmitText( 'Allons-y gaiement' ); # What text does the submit button display


        /* We set a callback function */
  mediawiki::settings { 'wikibase settings':
        $htmlForm->setSubmitCallback( array( 'SpecialMyForm', 'processInput' ) ); 
    values => {
        # Call processInput() in SpecialMyForm on submit
#    TODO: Add import of the default Properties
      'wgWBRepoSettings[\'formatterUrlProperty\']' => 'P24'
    },
  }


         $htmlForm->show(); # Displaying the form
  mediawiki::settings { 'drmf Namespaces':
    values  => ['
        // See https://www.mediawiki.org/wiki/Extension_default_namespaces
         define("NS_SOURCE", 130);
        define("NS_SOURCE_TALK", 131);
        define("NS_FORMULA", 132);
        define("NS_FORMULA_TALK", 133);
        define("NS_CD", 134);
        define("NS_CD_TALK", 135);
        define("NS_DEFINITION", 136);
        define("NS_DEFINITION_TALK", 137);
        $wgExtraNamespaces =
            array(NS_SOURCE => "Source",
                  NS_SOURCE_TALK => "Source_talk",
                  NS_FORMULA => "Formula",
                  NS_FORMULA_TALK => "Formula_talk",
                  NS_CD => "CD",
                  NS_CD_TALK => "CD_talk",
                  NS_DEFINITION => "Definition",
                  NS_DEFINITION_TALK => "Definition_talk",
            );
/**
* Callback function that is called after a formula was rendered
* @param MathRenderer $Renderer
* @param string|null $Result reference to the rendering result
* @param int $pid
* @param int $eid
* @return bool
*/
function wfOnMathFormulaRendered( Parser $parser, MathRenderer $renderer, &$Result = null ) {
    $id = $renderer->getID();
    if ( $id ) {
        $url = Title::newFromText( \'Formula:\' . $id )->getLocalURL();
        $Result = preg_replace ("#</semantics>#", "<annotation encoding=\"OpenMath\" >" . $renderer->getUserInputTex() . "</annotation>\n</semantics>", $Result );
        $Result = \'<a href="\' . $url . \'" id="\' . $id . \'" style="color:inherit;">\' . $Result . \'</a>\';
    }
    return true;
}
}
        $smwgNamespacesWithSemanticLinks[NS_FORMULA] = true;
        $smwgNamespacesWithSemanticLinks[NS_CD] = true;'],
    priority => 5
  }
#  mediawiki::extension { 'Lockdown':
#    settings => {
#      'wgNamespacePermissionLockdown[NS_SOURCE][\'read\']'=> ['user'],
#      'wgNamespacePermissionLockdown[NS_CD][\'read\']'    => ['user'],
#    }
#  }
  mediawiki::extension { 'FlaggedRevs':
    settings => {
      wgFlaggedRevsStatsAge => false,
      'wgGroupPermissions[\'sysop\'][\'review\']' => true, #allow administrators to review revisions
    },
    wiki => 'devwiki',
  }
  file { '/vagrant/settings.d/DrmfUserWhitelist.txt':
    content => template( '/vagrant/puppet/modules/drmf/templates/DrmfUserWhitelist.txt.erb' ),
  }
  mediawiki::extension{ 'SemanticMediaWiki':
    composer    => true,
    needs_update => true,
    wiki => 'devwiki'
  }


/* We write a callback function */
  mediawiki::extension{ 'Nuke': }
# OnSubmit Callback, here we do all the logic we want to do...
static function processInput( $formData ) {
        if ( $formData['simpletextfield'] == 'next' ) {
                return true; #if returned true, the form won't display again.
        } elseif ($formData['simpletextfield'] == 'again' ) {
                return false; #if returned false, the form will be redisplayed.
        }
        return 'Try again'; #if returned a string, it will be displayed as an error message with the form
}


  mediawiki::extension{ 'BlockAndNuke':
    entrypoint => 'BlockandNuke.php',
    settings  => {
      wgWhitelist => '/vagrant/settings.d/DrmfUserWhitelist.txt'
    },
    require    =>  File[ '/vagrant/settings.d/DrmfUserWhitelist.txt' ],
  }
  mediawiki::extension{ 'DataTransfer':
      wiki => 'devwiki'
  }


#Retrieve Andre's program
  apt::ppa { 'radu-hambasan/math-web-search': }
  package { [
    'mws'
  ]:
  }
  file { ['/srv/mathsearch/','/srv/mathsearch/mws-dump']:
    ensure => directory }
 
  exec { 'index formulae':
    command => '/usr/bin/mws-config create -p 9090 -i /srv/mathsearch/mws-dump/ drmf -e xml && /usr/bin/mws-config enable drmf',
    require => [ Package['mws'], File['/srv/mathsearch/mws-dump'] ],
    creates => '/etc/init.d/mwsd_drmf'
  }


$contents = wfShellExec( $cmd, $retval ); # Math mediawiki extension
  mediawiki::import::text { 'DRMF':
LoggerFactory::getInstance( 'Math' )->debug( "TeX output:\n $contents\n---" );
    source => 'puppet:///modules/drmf/drmf.wiki',
  }


  mediawiki::import::text { 'MediaWiki:Mainpage':
    source => 'puppet:///modules/drmf/mainpage.wiki',
  }


$Result = preg_replace ("#</semantics>#", "<annotation encoding=\"OpenMath\" >" . $renderer->getUserInputTex() . "</annotation>\n</semantics>", $Result ); # puppet operations
  mediawiki::import::text { 'GitHub':
    source => 'puppet:///modules/drmf/github.wiki',
  }
 
  mediawiki::import::dump { 'import templates':
    xml_dump          => '/vagrant/puppet/modules/drmf/files/drmf-templates.xml',
    dump_sentinel_page => 'Template:headSection'
  }
 
  file { "${::mediawiki::apache::docroot}/drmf_mediawiki_logo.png":
    ensure => present,
    source => '/vagrant/puppet/modules/drmf/files/DRMF-LOGO.png'
  }


java -jar latex-to-cas-translator.jar -c -CAS=Maple -Expression="\cos@{\alpha}"
  mediawiki::settings { 'drmf-vagrant logo':
    values => {
      wgLogo          => '/drmf_mediawiki_logo.png',
    },
    priority => 60,
  }
#TODO: Write startup script for basex
#  exec { 'start basex formulae':
#  command => '/usr/bin/mvn package  exec:java -Dpath=/srv/mathsearch/mws-dump/',
#    cwd    => '/vagrant/mathosphere/restd',
#  require => [ Exec['build basex-backend'], Exec['index formulae'] ]
  #}
}

Latest revision as of 23:23, 23 May 2017


  1. Retrieve Andre's program

$contents = wfShellExec( $cmd, $retval ); # Math mediawiki extension LoggerFactory::getInstance( 'Math' )->debug( "TeX output:\n $contents\n---" );


$Result = preg_replace ("#</semantics>#", "<annotation encoding=\"OpenMath\" >" . $renderer->getUserInputTex() . "</annotation>\n</semantics>", $Result ); # puppet operations

java -jar latex-to-cas-translator.jar -c -CAS=Maple -Expression="\cos@{\alpha}"



  1. == Class: role::drmf ==

class role::drmf {

 include role::mathoid
 include role::mathsearch
 include role::parserfunctions
 include drmf::mathosphere
 include drmf::latexml
 mediawiki::settings { 'drmf math':
   priority => 30,
    values   => ['
     $wgMathDisableTexFilter = \'always\';
     $wgLaTeXMLServer        = \'http://localhost:9999/\';
     $wgMathDefaultLaTeXMLSetting = array( \'format\' => \'xhtml\', \'whatsin\' => \'math\', \'whatsout\' => \'math\', \'pmml\',  \'cmml\',  \'mathtex\',  \'nodefaultresources\',  \'preload\' => array( \'LaTeX.pool\', \'article.cls\', \'amsmath.sty\', \'amsthm.sty\', \'amstext.sty\', \'amssymb.sty\', \'eucal.sty\', \'[dvipsnames]xcolor.sty\', \'url.sty\', \'hyperref.sty\', \'[ids]latexml.sty\', \'DLMFmath.sty\' ), \'linelength\' => 90 );
     $wgCapitalLinks = false;
     $wgHooks[\'MathFormulaPostRender\'] = array( \'wfOnMathFormulaRendered\');
     $wgMetaNamespace = \'Project\';
     $wgSitename = \'DRMF\';
     $wgDefaultUserOptions[\'math\'] = \'latexml\';'
   ],
 }
 mediawiki::settings { 'drmf security':
   values => {
     'wgGroupPermissions[\'*\'][\'edit\']' => false,
     'wgGroupPermissions[\'*\'][\'createaccount\']' => false,
   },
 }
 mediawiki::settings { 'wikibase settings':
   values => {
  1. TODO: Add import of the default Properties
     'wgWBRepoSettings[\'formatterUrlProperty\']' => 'P24'
   },
 }
 mediawiki::settings { 'drmf Namespaces':
   values   => ['
       // See https://www.mediawiki.org/wiki/Extension_default_namespaces
       define("NS_SOURCE", 130);
       define("NS_SOURCE_TALK", 131);
       define("NS_FORMULA", 132);
       define("NS_FORMULA_TALK", 133);
       define("NS_CD", 134);
       define("NS_CD_TALK", 135);
       define("NS_DEFINITION", 136);
       define("NS_DEFINITION_TALK", 137);
       $wgExtraNamespaces =
           array(NS_SOURCE => "Source",
                 NS_SOURCE_TALK => "Source_talk",
                 NS_FORMULA => "Formula", 
                 NS_FORMULA_TALK => "Formula_talk",
                 NS_CD => "CD",
                 NS_CD_TALK => "CD_talk",
                 NS_DEFINITION => "Definition",
                 NS_DEFINITION_TALK => "Definition_talk",
           );

/**

* Callback function that is called after a formula was rendered
* @param MathRenderer $Renderer
* @param string|null $Result reference to the rendering result
* @param int $pid
* @param int $eid
* @return bool
*/

function wfOnMathFormulaRendered( Parser $parser, MathRenderer $renderer, &$Result = null ) {

   $id = $renderer->getID();
   if ( $id ) {
       $url = Title::newFromText( \'Formula:\' . $id )->getLocalURL();
       $Result = preg_replace ("#</semantics>#", "<annotation encoding=\"OpenMath\" >" . $renderer->getUserInputTex() . "</annotation>\n</semantics>", $Result );
       $Result = \'<a href="\' . $url . \'" id="\' . $id . \'" style="color:inherit;">\' . $Result . \'</a>\';
   }
   return true;

}

       $smwgNamespacesWithSemanticLinks[NS_FORMULA] = true;
       $smwgNamespacesWithSemanticLinks[NS_CD] = true;'],
   priority => 5
 }
  1. mediawiki::extension { 'Lockdown':
  2. settings => {
  3. 'wgNamespacePermissionLockdown[NS_SOURCE][\'read\']'=> ['user'],
  4. 'wgNamespacePermissionLockdown[NS_CD][\'read\']' => ['user'],
  5. }
  6. }
 mediawiki::extension { 'FlaggedRevs':
   settings => {
     wgFlaggedRevsStatsAge => false,
     'wgGroupPermissions[\'sysop\'][\'review\']' => true, #allow administrators to review revisions
   },
   wiki => 'devwiki',
 }
 file { '/vagrant/settings.d/DrmfUserWhitelist.txt':
   content => template( '/vagrant/puppet/modules/drmf/templates/DrmfUserWhitelist.txt.erb' ),
 }
 mediawiki::extension{ 'SemanticMediaWiki':
   composer     => true,
   needs_update => true,
   wiki => 'devwiki'
 }


 mediawiki::extension{ 'Nuke': }
 mediawiki::extension{ 'BlockAndNuke':
   entrypoint => 'BlockandNuke.php',
   settings   => {
     wgWhitelist => '/vagrant/settings.d/DrmfUserWhitelist.txt'
   },
   require    =>  File[ '/vagrant/settings.d/DrmfUserWhitelist.txt' ],
 }
 mediawiki::extension{ 'DataTransfer': 
     wiki => 'devwiki'
 }
 apt::ppa { 'radu-hambasan/math-web-search': }
 package { [
   'mws'
 ]:
 }
 file { ['/srv/mathsearch/','/srv/mathsearch/mws-dump']:
   ensure => directory }
 
 exec { 'index formulae':
   command => '/usr/bin/mws-config create -p 9090 -i /srv/mathsearch/mws-dump/ drmf -e xml && /usr/bin/mws-config enable drmf',
   require => [ Package['mws'], File['/srv/mathsearch/mws-dump'] ],
   creates => '/etc/init.d/mwsd_drmf'
 }
 mediawiki::import::text { 'DRMF':
   source => 'puppet:///modules/drmf/drmf.wiki',
 }
 mediawiki::import::text { 'MediaWiki:Mainpage':
   source => 'puppet:///modules/drmf/mainpage.wiki',
 }
 mediawiki::import::text { 'GitHub':
   source => 'puppet:///modules/drmf/github.wiki',
 }
 
 mediawiki::import::dump { 'import templates':
   xml_dump           => '/vagrant/puppet/modules/drmf/files/drmf-templates.xml',
   dump_sentinel_page => 'Template:headSection'
 }
 
 file { "${::mediawiki::apache::docroot}/drmf_mediawiki_logo.png":
   ensure => present,
   source => '/vagrant/puppet/modules/drmf/files/DRMF-LOGO.png'
 }
 mediawiki::settings { 'drmf-vagrant logo':
   values => {
     wgLogo          => '/drmf_mediawiki_logo.png',
   },
   priority => 60,
 }
  1. TODO: Write startup script for basex
  2. exec { 'start basex formulae':
#   command => '/usr/bin/mvn package  exec:java -Dpath=/srv/mathsearch/mws-dump/',
  1. cwd => '/vagrant/mathosphere/restd',
#   require => [ Exec['build basex-backend'], Exec['index formulae'] ]
 #}

}