1
0
Fork 0

Merge branch 'devel' of github.com:arangodb/arangodb into devel

This commit is contained in:
Michael Hackstein 2016-04-25 12:35:59 +02:00
commit 3065ceafad
34 changed files with 366 additions and 172 deletions

View File

@ -683,7 +683,8 @@ std::string Transaction::extractIdString(CollectionNameResolver const* resolver,
/// added to the builder in the argument as a single object.
//////////////////////////////////////////////////////////////////////////////
void Transaction::buildDocumentIdentity(VPackBuilder& builder,
void Transaction::buildDocumentIdentity(TRI_document_collection_t* document,
VPackBuilder& builder,
TRI_voc_cid_t cid,
std::string const& key,
VPackSlice const rid,
@ -691,7 +692,11 @@ void Transaction::buildDocumentIdentity(VPackBuilder& builder,
TRI_doc_mptr_t const* oldMptr,
TRI_doc_mptr_t const* newMptr) {
builder.openObject();
builder.add(IdString, VPackValue(resolver()->getCollectionName(cid) + "/" + key));
if (ServerState::isRunningInCluster(_serverRole)) {
builder.add(IdString, VPackValue(resolver()->getCollectionName(cid) + "/" + key));
} else {
builder.add(IdString, VPackValue(document->_info.name() + "/" + key));
}
builder.add(KeyString, VPackValue(key));
TRI_ASSERT(!rid.isNone());
builder.add(RevString, rid);
@ -1081,7 +1086,7 @@ OperationResult Transaction::documentLocal(std::string const& collectionName,
if (expectedRevision != foundRevision) {
if (!isMultiple) {
// still return
buildDocumentIdentity(resultBuilder, cid, key, foundRevision,
buildDocumentIdentity(document, resultBuilder, cid, key, foundRevision,
VPackSlice(), nullptr, nullptr);
}
return TRI_ERROR_ARANGO_CONFLICT;
@ -1219,8 +1224,10 @@ OperationResult Transaction::insertLocal(std::string const& collectionName,
return TRI_ERROR_ARANGO_DOCUMENT_TYPE_INVALID;
}
TRI_doc_mptr_t mptr;
TIMER_START(TRANSACTION_INSERT_DOCUMENT_INSERT);
int res = document->insert(this, value, &mptr, options,
!isLocked(document, TRI_TRANSACTION_WRITE));
TIMER_STOP(TRANSACTION_INSERT_DOCUMENT_INSERT);
if (res != TRI_ERROR_NO_ERROR) {
// Error reporting in the babies case is done outside of here,
@ -1240,7 +1247,7 @@ OperationResult Transaction::insertLocal(std::string const& collectionName,
TIMER_START(TRANSACTION_INSERT_BUILD_DOCUMENT_IDENTITY);
buildDocumentIdentity(resultBuilder, cid, keyString,
buildDocumentIdentity(document, resultBuilder, cid, keyString,
mptr.revisionIdAsSlice(), VPackSlice(),
nullptr, options.returnNew ? &mptr : nullptr);
@ -1569,7 +1576,7 @@ OperationResult Transaction::modifyLocal(
// still return
if ((!options.silent || doingSynchronousReplication) && !isBabies) {
std::string key = newVal.get(KeyString).copyString();
buildDocumentIdentity(resultBuilder, cid, key, actualRevision,
buildDocumentIdentity(document, resultBuilder, cid, key, actualRevision,
VPackSlice(),
options.returnOld ? &previous : nullptr, nullptr);
}
@ -1582,7 +1589,7 @@ OperationResult Transaction::modifyLocal(
if (!options.silent || doingSynchronousReplication) {
std::string key = newVal.get(KeyString).copyString();
buildDocumentIdentity(resultBuilder, cid, key,
buildDocumentIdentity(document, resultBuilder, cid, key,
mptr.revisionIdAsSlice(), actualRevision,
options.returnOld ? &previous : nullptr ,
options.returnNew ? &mptr : nullptr);
@ -1824,7 +1831,7 @@ OperationResult Transaction::removeLocal(std::string const& collectionName,
if (res == TRI_ERROR_ARANGO_CONFLICT &&
(!options.silent || doingSynchronousReplication) &&
!isBabies) {
buildDocumentIdentity(resultBuilder, cid, key,
buildDocumentIdentity(document, resultBuilder, cid, key,
actualRevision, VPackSlice(),
options.returnOld ? &previous : nullptr, nullptr);
}
@ -1832,7 +1839,7 @@ OperationResult Transaction::removeLocal(std::string const& collectionName,
}
if (!options.silent || doingSynchronousReplication) {
buildDocumentIdentity(resultBuilder, cid, key,
buildDocumentIdentity(document, resultBuilder, cid, key,
actualRevision, VPackSlice(),
options.returnOld ? &previous : nullptr, nullptr);
}

View File

@ -37,6 +37,8 @@
#define TRI_DEFAULT_BATCH_SIZE 1000
struct TRI_document_collection_t;
namespace arangodb {
namespace basics {
@ -523,7 +525,8 @@ class Transaction {
/// argument as a single object.
//////////////////////////////////////////////////////////////////////////////
void buildDocumentIdentity(VPackBuilder& builder,
void buildDocumentIdentity(TRI_document_collection_t* document,
VPackBuilder& builder,
TRI_voc_cid_t cid,
std::string const& key,
VPackSlice const rid,

View File

@ -28,6 +28,7 @@
#include "Basics/conversions.h"
#include "Basics/Exceptions.h"
#include "Basics/FileUtils.h"
#include "Basics/Timers.h"
#include "Basics/files.h"
#include "Logger/Logger.h"
#include "Basics/tri-strings.h"
@ -3305,7 +3306,9 @@ int TRI_document_collection_t::insert(Transaction* trx, VPackSlice const slice,
VPackSlice newSlice;
int res = TRI_ERROR_NO_ERROR;
if (options.recoveryMarker == nullptr) {
TIMER_START(TRANSACTION_NEW_OBJECT_FOR_INSERT);
res = newObjectForInsert(trx, slice, hash, *builder.get(), options.isRestore);
TIMER_STOP(TRANSACTION_NEW_OBJECT_FOR_INSERT);
if (res != TRI_ERROR_NO_ERROR) {
return res;
}
@ -3322,7 +3325,9 @@ int TRI_document_collection_t::insert(Transaction* trx, VPackSlice const slice,
std::unique_ptr<arangodb::wal::Marker> marker;
if (options.recoveryMarker == nullptr) {
TIMER_START(TRANSACTION_CREATE_VPACK_INSERT_MARKER);
marker.reset(createVPackInsertMarker(trx, newSlice));
TIMER_STOP(TRANSACTION_CREATE_VPACK_INSERT_MARKER);
}
TRI_voc_tick_t markerTick = 0;

View File

@ -24068,6 +24068,11 @@ window.ArangoUsers = Backbone.Collection.extend({
this.tableView.setRemoveClick(this.remove.bind(this));
},
resize: function() {
$('#documentsTableID_wrapper').height($('.centralRow').height() - 210);
$('#documentsTableID tbody').css('max-height', $('#documentsTableID_wrapper').height() - 47);
},
setCollectionId : function (colid, page) {
this.collection.setCollection(colid);
this.collection.setPage(page);
@ -24932,6 +24937,7 @@ window.ArangoUsers = Backbone.Collection.extend({
transparent: true,
showNum: false
});
this.resize();
},
checkCollectionState: function() {
@ -24995,11 +25001,13 @@ window.ArangoUsers = Backbone.Collection.extend({
this.renderPaginationElements();
this.selectActivePagesize();
this.markFilterToggle();
this.resize();
return this;
},
rerender: function () {
this.collection.getDocuments(this.getDocsCallback.bind(this));
this.resize();
},
selectActivePagesize: function() {
@ -27192,11 +27200,11 @@ window.ArangoUsers = Backbone.Collection.extend({
tabbarElements: {
id: "arangoLogTabbar",
titles: [
["Debug", "logdebug"],
["Warning", "logwarning"],
["Error", "logerror"],
["All", "logall"],
["Info", "loginfo"],
["All", "logall"]
["Error", "logerror"],
["Warning", "logwarning"],
["Debug", "logdebug"]
]
},
@ -27982,6 +27990,13 @@ window.ArangoUsers = Backbone.Collection.extend({
disabled: true
}
],
collections: [
{
name: '',
view: undefined,
active: false
}
],
service: [
{
name: 'Info',
@ -35343,6 +35358,9 @@ window.ArangoUsers = Backbone.Collection.extend({
if (this.queryView2) {
this.queryView2.resize();
}
if (this.documentsView) {
this.documentsView.resize();
}
},
userManagement: function (initialized) {

File diff suppressed because one or more lines are too long

View File

@ -208,38 +208,40 @@
<% var elid = content.titles[v][1]; %>
<button class="arangodb-tabbar" id="<%=elid%>"><%=name%></button>
<%});%>
</div></script><script id="arangoTable.ejs" type="text/template"><table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
</div></script><script id="arangoTable.ejs" type="text/template"><div class="tableWrapper">
<table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table></script><script id="clusterView.ejs" type="text/template"><div id="clusterContent" class="innerContent">
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table>
</div></script><script id="clusterView.ejs" type="text/template"><div id="clusterContent" class="innerContent">
<div class="pure-g cluster-values">
@ -828,7 +830,7 @@ if (list.length > 0) {
<button id="deleteDocumentButton" class="button-danger pull-right">Delete</button>
</div>
<div class="pull-left shortcuts showHotkeyHelp"></div>
</div></script><script id="documentsView.ejs" type="text/template"><div id="transparentHeader" class="headerBar">
</div></script><script id="documentsView.ejs" type="text/template"><div id="transparentHeader" class="headerBar marginTop5">
<div id="documentsToolbar" class="headerButtonBar">
@ -1223,7 +1225,7 @@ if (list.length > 0) {
<iframe src="https://docs.google.com/forms/d/1vsIwy0mJSeToEnfo_jnBaQebewbcURL730IkZIrkyEE/viewform?embedded=true" scrolling="no" width="100%" height="1300px" frameborder="0" marginheight="0" marginwidth="0">Loading...</iframe>
</div></script><script id="indicesView.ejs" type="text/template"><div class="contentIn" id="indexHeaderContent">
<div id="indexEditView">
<table id="collectionEditIndexTable" class="edit-index-table">
<table id="collectionEditIndexTable" class="edit-index-table arango-table">
<thead>
<tr class="figuresHeader">
<th class="collectionInfoTh">ID</th>
@ -1474,16 +1476,16 @@ if (list.length > 0) {
<div id="dashboardDetailedLineChart" class="dashboardDetailChart" style="position: absolute"></div>
</div></script><script id="loadingTableView.ejs" type="text/template"><thead>
<tr role="row">
<th class="sorting_disabled docsFirstCol" role="columnheader" rowspan="1" colspan="1">Content</th>
<th class="sorting_disabled docsSecCol" role="columnheader" rowspan="1" colspan="1">_key</th>
<th class="sorting_disabled docsThirdCol" role="columnheader" rowspan="1" colspan="1">
<th class="sorting_disabled docsFirstCol">Content</th>
<th class="sorting_disabled docsSecCol">_key</th>
<th class="sorting_disabled docsThirdCol">
<a id="addDocumentButton" class="pull-right addButton"><span class="arangoicon icon_arangodb_roundplus" title="Add a document"></span></a>
</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td valign="top" colspan="3" class="dataTables_empty">Loading...</td>
<td valign="top" class="dataTables_empty">Loading...</td>
</tr>
</tbody></script><script id="loginView.ejs" type="text/template"><div class="loginFixedWindow">
@ -1732,7 +1734,7 @@ if (list.length > 0) {
var revision = content.revision;
%>
<table id="collectionInfoTable">
<table id="collectionInfoTable" class="arango-table">
<tr id="collectionSizeBox">
<th class="collectionInfoTh2">Journal size:</th>
<th class="collectionInfoTh">
@ -1818,7 +1820,7 @@ if (list.length > 0) {
</div>
<table class="figures1">
<table class="figures1 arango-table">
<tr class="figuresHeader">
<th class="">Type</th>
<th>Count</th>
@ -1874,7 +1876,7 @@ if (list.length > 0) {
</tr>
</table>
<table class="figures2">
<table class="figures2 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>
@ -1898,7 +1900,7 @@ if (list.length > 0) {
</tr>
</table>
<table class="figures3">
<table class="figures3 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>
@ -2746,10 +2748,15 @@ if (list.length > 0) {
<li id="dbStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">Database: <%= currentDB.name %> </a>
</li>
<li id="userStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">User: <%= currentDB.name %> </a>
</li>
<!--
<li class="subMenuEntry pull-right" style="margin-right: 10px;">
<div class="usermenu" id="userBar"></div>
<div class="notificationmenu" id="notificationBar"></div>
</li>
-->
</ul>
<ul class="subMenuEntries bottom">
@ -2963,4 +2970,4 @@ var cutByResolution = function (str) {
</div>
<div id="workMonitorContent" class="innerContent">
</div></script></head><body><nav class="navbar"><div class="primary"><div class="navlogo"><a class="logo big" href="#"><img class="arangodbLogo" src="img/arangodb_logo_big.png"></a> <a class="logo small" href="#"><img class="arangodbLogo" src="img/arangodb_logo_small.png"></a></div><div class="statmenu" id="statisticBar"></div><div class="navmenu" id="navigationBar"></div></div></nav><div class="bodyWrapper"><div class="centralRow"><div id="navbar2" class="navbarWrapper secondary"><div class="subnavmenu" id="subNavigationBar"></div></div><div class="resizecontainer contentWrapper"><div id="content" class="centralContent"></div><footer class="footer"><div id="footerBar"></div></footer></div></div></div><div id="modalPlaceholder"></div><div id="progressPlaceholder" style="display:none"></div><div id="spotlightPlaceholder" style="display:none"></div><div class="arangoFrame" style=""><div class="outerDiv"><div class="innerDiv"></div></div></div><script src="libs.js?version=1461321201201"></script><script src="app.js?version=1461321201201"></script></body></html>
</div></script></head><body><nav class="navbar"><div class="primary"><div class="navlogo"><a class="logo big" href="#"><img class="arangodbLogo" src="img/arangodb_logo_big.png"></a> <a class="logo small" href="#"><img class="arangodbLogo" src="img/arangodb_logo_small.png"></a></div><div class="statmenu" id="statisticBar"></div><div class="navmenu" id="navigationBar"></div></div></nav><div class="bodyWrapper"><div class="centralRow"><div id="navbar2" class="navbarWrapper secondary"><div class="subnavmenu" id="subNavigationBar"></div></div><div class="resizecontainer contentWrapper"><div id="content" class="centralContent"></div><footer class="footer"><div id="footerBar"></div></footer></div></div></div><div id="modalPlaceholder"></div><div id="progressPlaceholder" style="display:none"></div><div id="spotlightPlaceholder" style="display:none"></div><div class="arangoFrame" style=""><div class="outerDiv"><div class="innerDiv"></div></div></div><script src="libs.js?version=1461565965008"></script><script src="app.js?version=1461565965008"></script></body></html>

View File

@ -239,38 +239,40 @@
</script>
<script id="arangoTable.ejs" type="text/template">
<table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
<div class="tableWrapper">
<table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table>
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table>
</div>
</script>
<script id="clusterView.ejs" type="text/template">
@ -897,7 +899,7 @@ if (list.length > 0) {
</script>
<script id="documentsView.ejs" type="text/template">
<div id="transparentHeader" class="headerBar">
<div id="transparentHeader" class="headerBar marginTop5">
<div id="documentsToolbar" class="headerButtonBar">
@ -1336,7 +1338,7 @@ if (list.length > 0) {
<script id="indicesView.ejs" type="text/template">
<div class="contentIn" id="indexHeaderContent">
<div id="indexEditView">
<table id="collectionEditIndexTable" class="edit-index-table">
<table id="collectionEditIndexTable" class="edit-index-table arango-table">
<thead>
<tr class="figuresHeader">
<th class="collectionInfoTh">ID</th>
@ -1594,16 +1596,16 @@ if (list.length > 0) {
<script id="loadingTableView.ejs" type="text/template">
<thead>
<tr role="row">
<th class="sorting_disabled docsFirstCol" role="columnheader" rowspan="1" colspan="1">Content</th>
<th class="sorting_disabled docsSecCol" role="columnheader" rowspan="1" colspan="1">_key</th>
<th class="sorting_disabled docsThirdCol" role="columnheader" rowspan="1" colspan="1">
<th class="sorting_disabled docsFirstCol">Content</th>
<th class="sorting_disabled docsSecCol">_key</th>
<th class="sorting_disabled docsThirdCol">
<a id="addDocumentButton" class="pull-right addButton"><span class="arangoicon icon_arangodb_roundplus" title="Add a document"></span></a>
</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td valign="top" colspan="3" class="dataTables_empty">Loading...</td>
<td valign="top" class="dataTables_empty">Loading...</td>
</tr>
</tbody>
</script>
@ -1873,7 +1875,7 @@ if (list.length > 0) {
var revision = content.revision;
%>
<table id="collectionInfoTable">
<table id="collectionInfoTable" class="arango-table">
<tr id="collectionSizeBox">
<th class="collectionInfoTh2">Journal size:</th>
<th class="collectionInfoTh">
@ -1959,7 +1961,7 @@ if (list.length > 0) {
</div>
<table class="figures1">
<table class="figures1 arango-table">
<tr class="figuresHeader">
<th class="">Type</th>
<th>Count</th>
@ -2015,7 +2017,7 @@ if (list.length > 0) {
</tr>
</table>
<table class="figures2">
<table class="figures2 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>
@ -2039,7 +2041,7 @@ if (list.length > 0) {
</tr>
</table>
<table class="figures3">
<table class="figures3 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>
@ -2987,10 +2989,15 @@ if (list.length > 0) {
<li id="dbStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">Database: <%= currentDB.name %> </a>
</li>
<li id="userStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">User: <%= currentDB.name %> </a>
</li>
<!--
<li class="subMenuEntry pull-right" style="margin-right: 10px;">
<div class="usermenu" id="userBar"></div>
<div class="notificationmenu" id="notificationBar"></div>
</li>
-->
</ul>
<ul class="subMenuEntries bottom">
@ -3288,8 +3295,8 @@ var cutByResolution = function (str) {
</div>
</div>
<script src="libs.js?version=1461321201201"></script>
<script src="app.js?version=1461321201201"></script>
<script src="libs.js?version=1461565965008"></script>
<script src="app.js?version=1461565965008"></script>
</body>
</html>

View File

@ -1,2 +1,2 @@
<script src="libs.js?version=1461321201201"></script>
<script src="app.js?version=1461321201201"></script>
<script src="libs.js?version=1461565965008"></script>
<script src="app.js?version=1461565965008"></script>

File diff suppressed because one or more lines are too long

View File

@ -2917,7 +2917,10 @@ a.button-gui {
padding: 10px; }
.tileList {
width: 100%; }
left: 10px;
padding-top: 5px;
position: absolute;
right: 10px; }
.tileList legend {
padding-left: 5px; }
.tileList .tile:first-child a {
@ -5519,6 +5522,8 @@ div.headerBar {
padding-left: 5px;
padding-right: 5px;
right: 0; }
div.headerBar.marginTop5 {
margin-top: -60px; }
div.headerBar select:focus {
outline: none; }
div.headerBar .infoField {
@ -7656,8 +7661,7 @@ textarea,
display: none; }
#arangoLogTable {
border-top: 0;
min-height: 444px; }
border-top: 0; }
#arangoLogTable tbody tr {
height: 40px; }
#arangoLogTable tbody td:nth-child(1) {
@ -7681,6 +7685,7 @@ textarea,
.log-content-id .tab-content {
margin-top: 1px !important; }
.log-content-id .arango-tabbar {
left: 0;
margin-top: -51px;
position: absolute; }
.log-content-id .arango-tabbar button {
@ -7689,15 +7694,19 @@ textarea,
color: #000;
float: left;
font-size: 10.5pt;
min-width: 60px;
opacity: .64;
outline: none;
padding-left: 0;
padding-right: 20px;
text-align: left;
padding-right: 0;
text-align: center;
width: auto; }
.log-content-id .arango-tabbar button.arango-active-tab {
height: 27px;
opacity: 1; }
border-bottom: 2px solid #77cb99;
font-weight: 400;
height: 35px;
opacity: 1;
padding-bottom: 9px; }
div.gv_zoom_widget {
height: 300px;
@ -7940,6 +7949,7 @@ input.gv-radio-button {
.snippet-no-num {
list-style-type: none;
margin-left: 0;
padding-left: 0; }
.snippet-no-num .prettify {
font-size: 1.2em; }
@ -8537,11 +8547,31 @@ main {
color: #666; }
.centralContent .createModalDialog {
background-color: #fff;
outline: none; }
.centralContent .contentIn {
background: #fff;
border: 1px solid rgba(64, 74, 83, 0.2);
border-radius: 2px;
padding: 20px; }
.centralContent .contentIn table {
border: 0; }
.centralContent .contentIn table select {
margin-top: -10px; }
.centralContent .contentIn table tr {
height: 40px; }
.centralContent .modal-body {
color: #000;
max-height: none; }
.centralContent .modal-body .arango-table tr {
height: 40px; }
.centralContent .modal-body .arango-table tr th {
padding-left: 10px; }
.centralContent .modal-body .figuresHeader {
background-color: #404a53;
color: #fff; }
.centralContent .modal-body .icon_arangodb_info {
margin-left: 10px;
right: inherit; }
@ -8550,6 +8580,11 @@ main {
.centralContent .modal-body .tab-pane {
padding-top: 0 !important; }
.centralContent .modal-footer {
background-color: transparent;
border-top: 0;
box-shadow: none; }
.centralContent .figures1,
.centralContent .figures2,
.centralContent .figures3 {
@ -8630,12 +8665,12 @@ main {
width: 30%; }
.arango-table {
border-top: 1px solid #c2c2c2;
width: 100%; }
.arango-table thead {
background-color: #fff; }
.arango-table thead th {
border-bottom: 1px solid #c2c2c2;
font-weight: 400;
height: 43px; }
.arango-table tbody tr:nth-child(even) {
background-color: #fff; }
@ -8689,7 +8724,9 @@ main {
margin-top: 5px;
padding: 0 12px; }
.subViewNavbar li.active {
cursor: default; }
border-bottom: 2px solid #77cb99;
cursor: default;
padding-bottom: 5px; }
.subViewNavbar li.active a {
color: #000; }
.subViewNavbar li.disabled {
@ -8734,7 +8771,9 @@ main {
margin-bottom: 5px;
margin-top: 5px; }
.subnavmenu ul li.active {
cursor: default; }
border-bottom: 2px solid #77cb99;
cursor: default;
padding-bottom: 5px; }
.subnavmenu ul li.active a {
color: #000; }
.subnavmenu ul li.disabled {
@ -8783,10 +8822,18 @@ main {
position: relative;
table-layout: fixed !important;
width: 100% !important; }
.arangoDataTable tbody {
display: block;
max-height: 200px;
overflow-y: auto;
position: absolute;
width: 100%; }
.arangoDataTable thead {
background-color: #fff !important;
display: block;
font-weight: 400 !important;
text-align: left; }
text-align: left;
width: 100%; }
.arangoDataTable thead th {
border-bottom: 0;
cursor: default !important;
@ -8831,7 +8878,6 @@ table.arangoDataTable tr.odd {
display: none; }
#documentsTableID_wrapper {
min-height: 467px !important;
padding-bottom: 0 !important; }
#documentsTableID_wrapper .fg-toolbar {
visibility: hidden; }

View File

@ -765,6 +765,9 @@
if (this.queryView2) {
this.queryView2.resize();
}
if (this.documentsView) {
this.documentsView.resize();
}
},
userManagement: function (initialized) {

View File

@ -1,34 +1,36 @@
<script id="arangoTable.ejs" type="text/template">
<table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
<div class="tableWrapper">
<table class="arango-table" id="<%=content.id%>">
<thead>
<tr>
<% var hcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<th class="arangob-table-th table-cell<%=hcounter%>"><%=y%></th>
<% hcounter++; });%>
</tr>
</thead>
<tbody>
<% _.each(content.rows, function(k) { var counter=0;%>
<tr>
<% _.each(k, function(x) { %>
<td class="arangob-table-td table-cell<%=counter%>"><%=(content.unescaped && content.unescaped[counter] ? x : _.escape(x))%></td>
<% counter++;});%>
</tr>
<%});%>
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table>
<% if (content.rows.length === 0) { %>
<tr>
<% var xcounter = 0; %>
<% _.each(content.titles, function(y) {%>
<% if (xcounter === 0) { %>
<td>No content.</td>
<% } else { %>
<td></td>
<% } %>
<% xcounter++; });%>
</tr>
<% }; %>
</tbody>
</table>
</div>
</script>

View File

@ -1,5 +1,5 @@
<script id="documentsView.ejs" type="text/template">
<div id="transparentHeader" class="headerBar">
<div id="transparentHeader" class="headerBar marginTop5">
<div id="documentsToolbar" class="headerButtonBar">

View File

@ -1,7 +1,7 @@
<script id="indicesView.ejs" type="text/template">
<div class="contentIn" id="indexHeaderContent">
<div id="indexEditView">
<table id="collectionEditIndexTable" class="edit-index-table">
<table id="collectionEditIndexTable" class="edit-index-table arango-table">
<thead>
<tr class="figuresHeader">
<th class="collectionInfoTh">ID</th>

View File

@ -1,16 +1,16 @@
<script id="loadingTableView.ejs" type="text/template">
<thead>
<tr role="row">
<th class="sorting_disabled docsFirstCol" role="columnheader" rowspan="1" colspan="1">Content</th>
<th class="sorting_disabled docsSecCol" role="columnheader" rowspan="1" colspan="1">_key</th>
<th class="sorting_disabled docsThirdCol" role="columnheader" rowspan="1" colspan="1">
<th class="sorting_disabled docsFirstCol">Content</th>
<th class="sorting_disabled docsSecCol">_key</th>
<th class="sorting_disabled docsThirdCol">
<a id="addDocumentButton" class="pull-right addButton"><span class="arangoicon icon_arangodb_roundplus" title="Add a document"></span></a>
</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td valign="top" colspan="3" class="dataTables_empty">Loading...</td>
<td valign="top" class="dataTables_empty">Loading...</td>
</tr>
</tbody>
</script>

View File

@ -4,7 +4,7 @@
var revision = content.revision;
%>
<table id="collectionInfoTable">
<table id="collectionInfoTable" class="arango-table">
<tr id="collectionSizeBox">
<th class="collectionInfoTh2">Journal size:</th>
<th class="collectionInfoTh">
@ -90,7 +90,7 @@
</div>
<table class="figures1">
<table class="figures1 arango-table">
<tr class="figuresHeader">
<th class="">Type</th>
<th>Count</th>
@ -146,7 +146,7 @@
</tr>
</table>
<table class="figures2">
<table class="figures2 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>
@ -170,7 +170,7 @@
</tr>
</table>
<table class="figures3">
<table class="figures3 arango-table">
<tr class="figuresHeader">
<th>Type</th>
<th>Count</th>

View File

@ -14,10 +14,15 @@
<li id="dbStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">Database: <%= currentDB.name %> </a>
</li>
<li id="userStatus" class="infoEntry subMenuEntry pull-right">
<a class="info">User: <%= currentDB.name %> </a>
</li>
<!--
<li class="subMenuEntry pull-right" style="margin-right: 10px;">
<div class="usermenu" id="userBar"></div>
<div class="notificationmenu" id="notificationBar"></div>
</li>
-->
</ul>
<ul class="subMenuEntries bottom">

View File

@ -43,6 +43,11 @@
this.tableView.setRemoveClick(this.remove.bind(this));
},
resize: function() {
$('#documentsTableID_wrapper').height($('.centralRow').height() - 210);
$('#documentsTableID tbody').css('max-height', $('#documentsTableID_wrapper').height() - 47);
},
setCollectionId : function (colid, page) {
this.collection.setCollection(colid);
this.collection.setPage(page);
@ -907,6 +912,7 @@
transparent: true,
showNum: false
});
this.resize();
},
checkCollectionState: function() {
@ -970,11 +976,13 @@
this.renderPaginationElements();
this.selectActivePagesize();
this.markFilterToggle();
this.resize();
return this;
},
rerender: function () {
this.collection.getDocuments(this.getDocsCallback.bind(this));
this.resize();
},
selectActivePagesize: function() {

View File

@ -33,11 +33,11 @@
tabbarElements: {
id: "arangoLogTabbar",
titles: [
["Debug", "logdebug"],
["Warning", "logwarning"],
["Error", "logerror"],
["All", "logall"],
["Info", "loginfo"],
["All", "logall"]
["Error", "logerror"],
["Warning", "logwarning"],
["Debug", "logdebug"]
]
},

View File

@ -182,6 +182,13 @@
disabled: true
}
],
collections: [
{
name: '',
view: undefined,
active: false
}
],
service: [
{
name: 'Info',

View File

@ -1,5 +1,4 @@
.arango-table {
border-top: 1px solid $c-c2grey;
width: 100%;
thead {
@ -7,6 +6,7 @@
th {
border-bottom: 1px solid $c-c2grey;
font-weight: 400;
height: 43px;
}
}

View File

@ -4,10 +4,20 @@
table-layout: fixed !important;
width: 100% !important;
tbody {
display: block;
max-height: 200px;
overflow-y: auto;
position: absolute;
width: 100%;
}
thead {
background-color: $c-white !important;
display: block;
font-weight: 400 !important;
text-align: left;
width: 100%;
th {
border-bottom: 0;
@ -84,7 +94,6 @@ table.arangoDataTable tr.odd {
}
#documentsTableID_wrapper {
min-height: 467px !important;
padding-bottom: 0 !important;
.fg-toolbar {

View File

@ -68,6 +68,10 @@ div.headerBar {
padding-right: 5px;
right: 0;
&.marginTop5 {
margin-top: -60px;
}
select {
&:focus {
outline: none;

View File

@ -63,7 +63,6 @@
//new log view - do not delete
#arangoLogTable {
border-top: 0;
min-height: 444px;
tbody {
@ -106,6 +105,7 @@
}
.arango-tabbar {
left: 0;
margin-top: -51px;
position: absolute;
@ -115,16 +115,20 @@
color: $c-black;
float: left;
font-size: 10.5pt;
min-width: 60px;
opacity: .64;
outline: none;
padding-left: 0;
padding-right: 20px;
text-align: left;
padding-right: 0;
text-align: center;
width: auto;
&.arango-active-tab {
height: 27px;
border-bottom: 2px solid $c-active-green;
font-weight: 400;
height: 35px;
opacity: 1;
padding-bottom: 9px;
}
}
}

View File

@ -6,6 +6,7 @@
.snippet-no-num {
list-style-type: none;
margin-left: 0;
padding-left: 0;
.prettify {

View File

@ -22,13 +22,16 @@
padding: 0 12px;
&.active {
border-bottom: 2px solid $c-active-green;
cursor: default;
padding-bottom: 5px;
a {
color: $c-black;
}
}
&.disabled {
cursor: not-allowed;
}
@ -100,7 +103,9 @@
margin-top: 5px;
&.active {
border-bottom: 2px solid $c-active-green;
cursor: default;
padding-bottom: 5px;
a {
color: $c-black;

View File

@ -1,13 +1,48 @@
.centralContent {
.createModalDialog {
background-color: $c-white;
outline: none;
}
.contentIn {
background: $c-white;
border: 1px solid $c-bluegrey-border;
border-radius: 2px;
padding: 20px;
table {
border: 0;
select {
margin-top: -10px;
}
tr {
height: 40px;
}
}
}
.modal-body {
color: $c-black;
max-height: none;
.arango-table {
tr {
height: 40px;
th {
padding-left: 10px;
}
}
}
.figuresHeader {
background-color: $c-bluegrey-dark;
color: $c-white;
}
.icon_arangodb_info {
margin-left: 10px;
right: inherit;
@ -22,6 +57,12 @@
}
}
.modal-footer {
background-color: rgba(0, 0, 0, 0);
border-top: 0;
box-shadow: none;
}
.figures1,
.figures2,
.figures3 {

View File

@ -2,7 +2,10 @@
@extend %clear-float;
//margin-left: -6px;
//margin-right: -6px;
width: 100%;
left: 10px;
padding-top: 5px;
position: absolute;
right: 10px;
legend {
padding-left: 5px;

View File

@ -60,10 +60,13 @@ class Timers {
JS_INSERT_V8_TO_VPACK2,
JS_INSERT_CREATE_TRX,
JS_INSERT_INSERT,
TRANSACTION_INSERT_DOCUMENT_INSERT,
TRANSACTION_INSERT_LOCAL,
TRANSACTION_INSERT_BUILD_DOCUMENT_IDENTITY,
TRANSACTION_INSERT_WORK_FOR_ONE,
TRANSACTION_NEW_OBJECT_FOR_INSERT,
TRANSACTION_CREATE_VPACK_INSERT_MARKER,
TIMER_MAX
};
@ -91,6 +94,12 @@ class Timers {
return "TRANSACTION_INSERT_BUILD_DOCUMENT_IDENTITY";
case TRANSACTION_INSERT_WORK_FOR_ONE:
return "TRANSACTION_INSERT_WORK_FOR_ONE";
case TRANSACTION_INSERT_DOCUMENT_INSERT:
return "TRANSACTION_INSERT_DOCUMENT_INSERT";
case TRANSACTION_NEW_OBJECT_FOR_INSERT:
return "TRANSACTION_NEW_OBJECT_FOR_INSERT";
case TRANSACTION_CREATE_VPACK_INSERT_MARKER:
return "TRANSACTION_CREATE_VPACK_INSERT_MARKER";
case TIMER_MIN:
case TIMER_MAX: {