function action_registeruser() { global $user, $db, $fs; if (!Post::val('user_pass')) { return array(ERROR_RECOVER, L('formnotcomplete')); } if (Post::val('user_pass') != Post::val('user_pass2')) { return array(ERROR_RECOVER, L('nomatchpass')); } if (strlen(Post::val('user_pass')) < MIN_PW_LENGTH) { return array(ERROR_RECOVER, L('passwordtoosmall')); } //die(Post::val('magic_url')); // Check that the user entered the right confirmation code $reg_details = $db->x->getRow('SELECT * FROM {registrations} WHERE magic_url = ?', null, array(Post::val('magic_url'))); if (!$reg_details) { return array(ERROR_RECOVER, L('confirmwrong')); } $uid = Backend::create_user($reg_details['user_name'], Post::val('user_pass'), $reg_details['real_name'], $reg_details['jabber_id'], $reg_details['email_address'], $reg_details['notify_type'], $reg_details['time_zone'], $fs->prefs['anon_group']); if (!$uid) { return array(ERROR_RECOVER, L('usernametaken')); } $db->x->execParam('DELETE FROM {registrations} WHERE magic_url = ?', array(Post::val('magic_url'))); return array(SUBMIT_OK, L('accountcreated'), CreateUrl('register', array('regdone' => 1))); }
/** * _onsubmit * * @access protected * @return array */ function _onsubmit() { global $conf; if (Flyspray::function_disabled('shell_exec') && !array_get($conf['general'], 'dot_public')) { return array(ERROR_INPUT, L('error24'), CreateUrl(array('details', 'task' . $this->task['task_id']))); } return array(NO_SUBMIT); }
function _onsubmit() { global $proj; // only meant for global fields... if (!count(Get::val('ids', array()))) { return array(ERROR_RECOVER, L('notasksselected'), CreateUrl('index')); } $proj = new Project(0); $return = $this->handle('action', Req::val('action')); $proj = new Project(0); return $return; }
function action_mass_edit() { Flyspray::Redirect(CreateUrl('edit', array('ids' => Req::val('ids')))); }
function InsertDlib2($content, $uri, $item, $ArtTitle) { //http://www.dlib.org/dlib/january14/01contents.html $Work = $item; $Exp = $Work . "_ver1"; $get = CreateResource($uri, $item, $Work, $Exp, $ArtTitle); if ($get != null) { return; } $content = mb_convert_encoding($content, 'HTML-ENTITIES', "UTF-8"); $doc = new DOMDocument(); $doc->loadHTML($content); $xpath = new DOMXPath($doc); //Titolo dell'articolo $title = $doc->getElementsByTagName('h3')->item(1); if ($title != NULL) { CreateTitle($Exp, $item, $title->nodeValue, 0, strlen($title->nodeValue), $title->getAttribute('id'), $uri); } //Autori dell'articolo $audID = 'form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p2'; $autArray = $xpath->query("//p[@id='{$audID}']/text()"); $autStart = 0; function Authors($autori, $del_Len, $autStartTmp, $Exp, $item, $autStart, $audID, $uri) { foreach ($autori as $node) { if (is_array($node) && count($node) > 1) { $autStartTmp = Authors($node, 1, $autStartTmp, $Exp, $item, $autStart, $audID, $uri) + 5; continue; } if (is_array($node)) { $autStartTmp = Authors($node, 5, $autStartTmp, $Exp, $item, $autStart, $audID, $uri) + 5; continue; } $end = 0; $autStartTmp = $autStartTmp + (strlen($node) - strlen(ltrim($node))); $end = strlen($node) - strlen(rtrim($node)); $node = trim($node); $node = Normalize($node); //print $node." ".$autStart.$autStartTmp."<br>"; CreateAuthors($Exp, $item, $node, $autStart + $autStartTmp, $autStart + $autStartTmp + strlen($node), $audID, $uri); $autStartTmp = $autStartTmp + strlen($node) + $end + $del_Len; } return $autStartTmp - $del_Len; } for ($i = 0; $i < $autArray->length; $i++) { $aut = $autArray->item($i); if ($i != 0 && strlen($aut->nodeValue) - strlen(ltrim($aut->nodeValue)) != 2) { $autStart = $autStart + strlen($aut->nodeValue); continue; } if ($Work == "01kabore") { $node = $aut->nodeValue; $node = Normalize($node); $pos1 = strpos($node, " "); $pos2 = strpos($node, " ", $pos1 + 1); if ($i != 0) { $node = substr($node, 0, $pos2); } else { $pos3 = strpos($node, " ", $pos2 + 1); $node = substr($node, 0, $pos3); } $node = substr($node, 0, strlen($node) - 1); CreateAuthors($Exp, $item, $node, $autStart, $autStart + strlen($node), $audID, $uri); } else { $aut = MultiDelimiter(array(" and ", ","), $aut->nodeValue); Authors($aut, 5, 0, $Exp, $item, $autStart, $audID, $uri); } $autStart = $autStart + strlen($autArray->item($i)->nodeValue); $i++; $autStart = $autStart + strlen($autArray->item($i)->nodeValue); } //Abstract $astratto = $xpath->query("//h3[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_h33']/following-sibling::p[1]")->item(0); if ($astratto != null) { CreateRethoric($Exp, $item, "sro:Abstract", "Questo è l' astratto dell'articolo.", 0, strlen($astratto->nodeValue), $astratto->getAttribute('id'), $uri); } /* //Introduction $intro=$xpath->query("//h3[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_h34']")->item(0); if(($intro->nodeValue.localeCompare("Introduction"))==0){ $introduzione=$xpath->query("//h3[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_h34']/following-sibling::p[1]")->item(0); if($introduzione!= null) CreateRethoric($Exp, $item, "deo:Introduction", "Questa è l' introduzione dell'articolo.", 0, strlen($introduzione->nodeValue), $introduzione->getAttribute('id'), $uri); } */ //URL $url = $xpath->query("//a[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p3_a1']")->item(0); if ($url != null) { CreateUrl($Exp, $item, Normalize($url->nodeValue), 0, strlen(Normalize($url->nodeValue)), $url->getAttribute('id'), $uri, "Questo testo rappresenta l' indirizzo:" . $url->getAttribute('href')); } $url = $xpath->query("//a[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p1_a1']")->item(0); if ($url != null) { CreateUrl($Exp, $item, Normalize($url->nodeValue), 0, strlen(Normalize($url->nodeValue)), $url->getAttribute('id'), $uri, "Questo testo rappresenta l' indirizzo:" . $url->getAttribute('href')); } //Anno di pubblicazione dell'articolo $target = $xpath->query("//p[1]")->item(0); $AllStr = $xpath->query("//p[1]//text()[(following::br)]")->item(0); $publicationYear = substr($AllStr->nodeValue, -4); CreatePublicationYear($Exp, $item, $publicationYear, strlen($AllStr->nodeValue) - 4, strlen($AllStr->nodeValue), $target->getAttribute('id'), $uri); //DOI dell'articolo $target = $xpath->query("//p[2]")->item(0); $target_text = Normalize($target->nodeValue); $aux = $xpath->query("//p[2]//text()[(preceding::br)]"); $doi = Normalize(substr($aux->item($aux->length - 1)->nodeValue, 4)); CreateDoi($Exp, $item, $doi, strpos($target_text, $doi), strpos($target_text, $doi) + strlen($doi), $target->getAttribute('id'), $uri); if ($Work == "01musgrave") { $cities1 = $xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p17']")->item(0); $i = 1; $citExp = $Exp . "_cited" . $i; $citazione = Normalize($cities1->nodeValue); //autori $pos_punto = strpos($citazione, '.'); $autori = substr($citazione, 0, $pos_punto); $arr_aut = explode('&', $autori); $start = 0; foreach ($arr_aut as $node) { if (strpos($node, ',')) { $var = str_replace(',', ' ', $node); $var = trim($var); } else { $var = trim($node); } CreateAuthors($citExp, $item, $var, $start, $start + strlen($var), $cite->getAttribute('id'), $uri); $start += strlen($var) + 2; } //anno $anno = substr($citazione, $pos_punto, 5); CreatePublicationYear($Exp, $item, $anno, $pos_punto + 1, $pos_punto + 5, $target->getAttribute('id'), $uri); } /*//Work = Nome Senza Estensione //Exp = Nome Con _ver1 $Work = $item; $Exp = $Work."_ver1"; $get = CreateResource($uri, $item, $Work, $Exp, $ArtTitle); if($get != null) return; $content = mb_convert_encoding($content, 'HTML-ENTITIES', "UTF-8"); $doc = new DOMDocument(); $doc->loadHTML($content); $xpath = new DOMXPath($doc); //Titolo dell'articolo $title = $doc->getElementsByTagName('h3')->item(0); if($title != NULL){ CreateTitle($Exp, $item, $title->nodeValue, 0, strlen($title->nodeValue), $title->getAttribute('id'), $uri); } //Autori articolo $aut= $xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p2']/text()[(following::br)]")->item(0); $str=str_replace(" and ", ",", $aut->nodeValue); $arr = explode(",", $str); $start=0; foreach($arr as $node){ $var = trim($node); $start=strpos($aut->nodeValue, $var); //posizione dell'autore in tutta la frase compreso "and" $end=$start+strlen($var); CreateAuthors($Exp, $item, $var, $start,($end-1), $autTarget, $uri); } //Anno di pubblicazione dell'articolo $target=$xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p1']")->item(0); $ab = $xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p1']/text()[(following::br)]")->item(0); $publicationYear = substr($ab->nodeValue, -4, 4); CreatePublicationYear($Exp, $item, $publicationYear, strlen($ab->nodeValue) - 4, strlen($ab->nodeValue)+1, $target->getAttribute('id'), $uri); //DOI dell'articolo $target=$xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p2']")->item(0); $ab = $xpath->query("//p[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p2']/text()[(preceding::br)]"); foreach($ab as $node){ //scorre all'ultimo br dato che il DOI è sempre dopo l'ultimo br $ab=$node; } $doi=$ab->nodeValue; $start=strpos($target->nodeValue,$doi); CreateDoi($Exp, $item, $doi, $start, strlen($doi), $target->getAttribute('id'), $uri); //Abstract $astratto = $xpath->query("//h3[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_h33']/following-sibling::p[1]")->item(0); CreateRethoric($Exp, $item, "sro:Abstract", "Questo è l' astratto dell'articolo.", 0, strlen($astratto->nodeValue), $astratto->getAttribute('id'), $uri); //URL $url = $xpath->query("//a[@id='form1_table3_tr1_td1_table5_tr1_td1_table1_tr1_td2_p3_a1']")->item(0); CreateUrl($Exp, $item, Normalize($url->nodeValue), 0, strlen(Normalize($url->nodeValue)), $url->getAttribute('id'), $uri, "Questo testo rappresenta l' indirizzo:".$url->getAttribute('href')); //Citazioni dell'articolo $target = $xpath->query("//*[(preceding::h3[text()=\"References\"||text()=\"Notes\"])]"); $i=0; foreach($target as $node){ $citExp=$Exp."_cited".$i; if($node->nodeName!='p') break; else{ $pos=strpos($node->nodeValue,'"'); $t=substr($node->nodeValue, $pos); $pos=strpos($t,'"'); //$title=substr($t, $pos); CreateCities($t, $citExp, $Exp, $item, $node->nodeValue, $node->getAttribute('id'), 0, strlen($cite->nodeValue), $uri); } } */ }
function area_user() { global $proj; FlysprayDo::error(array(ERROR_INPUT, L('error17'), CreateUrl(array('pm', 'proj' . $proj->id)))); }
/** * XXX: A mess,remove my in 1.0 */ function event_description($history) { $return = ''; global $fs, $baseurl, $details, $page; $translate = array('item_summary' => 'summary', 'project_id' => 'attachedtoproject', 'mark_private' => 'visibility'); // if soemthing gets double escaped, add it here. $noescape = array('new_value', 'old_value'); foreach ($history as $key => $value) { if (!in_array($key, $noescape)) { $history[$key] = Filters::noXSS($value); } } $new_value = $history['new_value']; $old_value = $history['old_value']; switch ($history['event_type']) { case '3': //Field changed if (!$new_value && !$old_value) { $return .= eL('taskedited'); break; } $field = $history['field_changed']; switch ($field) { case 'project_id': $old_value = $history[$field . '1']; $new_value = $history[$field . '2']; case 'item_summary': $field = eL($translate[$field]); $old_value = Filters::noXSS($old_value); $new_value = Filters::noXSS($new_value); break; case 'percent_complete': $field = eL('percentcomplete'); $old_value .= '%'; $new_value .= '%'; break; case 'mark_private': $field = eL($translate[$field]); $old_value = $old_value ? eL('private') : eL('public'); $new_value = $new_value ? eL('private') : eL('public'); break; case 'detailed_desc': $field = sprintf("<a href=\"javascript:getHistory('%d', '%s', 'history', '%d');\n showTabById('history', true);\">%s</a>", $history['task_id'], $baseurl, $history['history_id'], eL('details')); if (!empty($details)) { $details_previous = $page->text->render($old_value); $details_new = $page->text->render($new_value); } $old_value = ''; $new_value = ''; break; } if (is_numeric($field)) { $field = $history['field_name']; $f = new Field($history); if ($f->prefs['field_type'] == FIELD_LIST) { $t = $history['list_type'] == LIST_CATEGORY ? 'c' : 'l'; $new = array('field' . $f->id => $history['new_value_' . $t], 'field' . $f->id . '_name' => $history['new_value_' . $t]); $old = array('field' . $f->id => $history['old_value_' . $t], 'field' . $f->id . '_name' => $history['old_value_' . $t]); $new_value = $f->view($new); $old_value = $f->view($old); } else { if ($f->prefs['field_type'] == FIELD_USER) { $new_value = tpl_userlink($history['new_value']); $old_value = tpl_userlink($history['old_value']); } else { if ($f->prefs['field_type'] == FIELD_DATE) { $new_value = $f->view(array('field' . $f->id => $history['new_value'])); $old_value = $f->view(array('field' . $f->id => $history['old_value'])); } } } } $return .= eL('fieldchanged') . ": {$field}"; if ($old_value || $new_value) { $return .= " ({$old_value} → {$new_value})"; } break; case '1': //Task opened $return .= eL('taskopened'); break; case '2': //Task closed $return .= eL('taskclosed'); $return .= " ({$history['resolution_name']}"; if (!empty($old_value)) { $return .= ': ' . $page->text->render($old_value, true); } $return .= ')'; break; case '4': //Comment added $return .= sprintf('<a href="%s#comment%d">%s</a>', Filters::noXSS(CreateUrl(array('details', 'task' . $history['task_id']))), $history['new_value'], eL('commentadded')); break; case '5': //Comment edited $return .= sprintf("<a href=\"javascript:getHistory('%d', '%s', 'history', '%d');\">%s</a>", $history['task_id'], $baseurl, $history['history_id'], eL('commentedited')); if ($history['c_date_added']) { $return .= sprintf(' (%s %s - %s)', eL('commentby'), tpl_userlink($history['c_user_id']), formatDate($history['c_date_added'], true)); } if ($details) { $details_previous = $page->text->render($old_value); $details_new = $page->text->render($new_value); } break; case '6': //Comment deleted $return .= sprintf("<a href=\"javascript:getHistory('%d', '%s', 'history','%d');\">%s</a>", $history['task_id'], $baseurl, $history['history_id'], eL('commentdeleted')); if (!empty($new_value) && !empty($history['field_changed'])) { $return .= sprintf('(%s %s - %s)', eL('commentby'), tpl_userlink($new_value), formatDate($history['field_changed'], true)); } if (!empty($details)) { $details_previous = $page->text->render($old_value); $details_new = ''; } break; case '7': //Attachment added $return .= eL('attachmentadded'); if ($history['orig_name']) { $return .= sprintf(': <a href="%s?getfile=%d">%s</a>', $baseurl, $new_value, $history['orig_name']); } else { if ($history['old_value']) { $return .= ': ' . $history['old_value']; } } break; case '8': //Attachment deleted $return .= eL('attachmentdeleted') . ': ' . Filters::noXSS($new_value); break; case '9': //Notification added $return .= eL('notificationadded') . ': ' . tpl_userlink($new_value); break; case '10': //Notification deleted $return .= eL('notificationdeleted') . ': ' . tpl_userlink($new_value); break; case '11': //Related task added $return .= eL('relatedadded') . ': ' . tpl_tasklink($new_value); break; case '12': //Related task deleted $return .= eL('relateddeleted') . ': ' . tpl_tasklink($new_value); break; case '13': //Task reopened $return .= eL('taskreopened'); break; case '14': //Task assigned if (empty($old_value)) { $users = explode(' ', trim($new_value)); $users = array_map('tpl_userlink', $users); $return .= eL('taskassigned') . ' '; $return .= implode(', ', $users); } elseif (empty($new_value)) { $return .= eL('assignmentremoved'); } else { $users = explode(' ', trim($new_value)); $users = array_map('tpl_userlink', $users); $return .= eL('taskreassigned') . ' '; $return .= implode(', ', $users); } break; case '17': //Reminder added $return .= eL('reminderadded') . ': ' . tpl_userlink($new_value); break; case '18': //Reminder deleted $return .= eL('reminderdeleted') . ': ' . tpl_userlink($new_value); break; case '19': //User took ownership $return .= eL('ownershiptaken') . ': ' . tpl_userlink($new_value); break; case '20': //User requested task closure $return .= eL('closerequestmade') . ' - ' . $new_value; break; case '21': //User requested task $return .= eL('reopenrequestmade') . ' - ' . $new_value; break; case '22': // Dependency added $return .= eL('depadded') . ' ' . tpl_tasklink($new_value); break; case '23': // Dependency added to other task $return .= eL('depaddedother') . ' ' . tpl_tasklink($new_value); break; case '24': // Dependency removed $return .= eL('depremoved') . ' ' . tpl_tasklink($new_value); break; case '25': // Dependency removed from other task $return .= eL('depremovedother') . ' ' . tpl_tasklink($new_value); break; // 26 and 27 replaced by 0 (mark_private) // 26 and 27 replaced by 0 (mark_private) case '28': // PM request denied $return .= eL('pmreqdenied') . ' - ' . $new_value; break; case '29': // User added to assignees list $return .= eL('addedtoassignees'); break; case '30': // user created $return .= eL('usercreated'); break; case '31': // user deleted $return .= eL('userdeleted'); break; } if (isset($details_previous)) { $GLOBALS['details_previous'] = $details_previous; } if (isset($details_new)) { $GLOBALS['details_new'] = $details_new; } return $return; }
$string = array('md5' => $md5, 'query' => $query, 'translit' => $F->Convert($query)); $files[$md5[0]][$md5[1]][] = json_encode($string); if (isset($_GET['type'])) { switch ($_GET['type']) { case 'html': $urls[] = '<a href="' . CreateUrl($F, $query, $md5) . '">' . $query . '</a>'; break; case 'code': $urls[] = '[url=' . CreateUrl($F, $query, $md5) . ']' . $query . '[/url]'; break; case 'farm': $urls[] = CreateUrl($F, $query, $md5) . " {$query}"; break; } } else { $urls[] = CreateUrl($F, $query, $md5); } } unset($keywords); $count = 0; for ($i = 0; $i < count($keys); $i++) { for ($j = 0; $j < count($keys); $j++) { if (!empty($files[$keys[$i]][$keys[$j]])) { $file = "../content/base/{$keys[$i]}/{$keys[$j]}.txt"; $content = array_merge(file($file, FILE_IGNORE_NEW_LINES), $files[$keys[$i]][$keys[$j]]); $keywords = array_unique($content); if (!file_put_contents($file, implode("\r\n", $keywords) . "\r\n")) { $F->Error("Can't write in file {$file}."); } else { $count += count($content) - count($keywords); }
function action_updatenote() { global $db, $user; if (!Post::val('message_subject')) { return array(ERROR_RECOVER, L('enternotesubject')); } $num = $db->x->autoExecute('{notes}', array('message_subject' => Post::val('message_subject'), 'message_body' => Post::val('message_body'), 'last_updated' => time(), 'syntax_plugins' => implode(' ', (array) Post::val('message_body_syntax_plugins'))), MDB2_AUTOQUERY_UPDATE, sprintf('note_id = %d AND user_id = %d', Post::num('note_id'), $user->id)); if ($num) { return array(SUBMIT_OK, L('noteupdated'), CreateUrl(array('myprofile', 'notes'), array('note_id' => Post::val('note_id')))); } else { return array(ERROR_INPUT, L('notedoesnotexist')); } }
function CreateNewAnnotation($obj) { global $mainExp, $item, $mURL; $Exp = $mainExp; try { $mE = $obj->subject->value; if ($mE == "cited") { $Exp . "_cited" . GetCiteIndex($obj->subject->value); } else { if (strpos(substr($mE, -8), "cited") !== false) { $cit = substr($mE, strrpos($mE, "_")); $Exp .= "_" . $cit; } } } catch (Exception $ex) { } switch ($obj->predicate->value) { case "http://purl.org/dc/terms/title": CreateTitle($Exp, $item, Normalize(html_entity_decode($obj->object->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://purl.org/dc/terms/creator": print CreateAuthors($Exp, $item, Normalize(html_entity_decode($obj->key->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://prismstandard.org/namespaces/basic/2.0/doi": CreateDoi($Exp, $item, Normalize(html_entity_decode($obj->object->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://purl.org/spar/fabio/hasPublicationYear": CreatePublicationYear($Exp, $item, Normalize(html_entity_decode($obj->object->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://purl.org/spar/fabio/hasURL": CreateUrl($Exp, $item, Normalize(html_entity_decode($obj->object->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://purl.org/spar/cito/cites": $citExpression = $Exp . "_cited" . GetCiteIndex($obj->subject->value); CreateCities("", $citExpression, $Exp, $item, Normalize(html_entity_decode($obj->key->value)), $obj->id->value, $obj->start->value, $obj->end->value, $mURL, Normalize(html_entity_decode($obj->bLabel->value))); break; case "http://schema.org/comment": CreateComment($Exp, $item, Normalize(html_entity_decode($obj->object->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL); break; case "http://www.ontologydesignpatterns.org/cp/owl/semiotics.owl#denotes": CreateRethoric($Exp, $item, DecodeRethoric($obj->object->value), Normalize(html_entity_decode($obj->bLabel->value)), $obj->start->value, $obj->end->value, $obj->id->value, $mURL); break; } }